summaryrefslogtreecommitdiff
path: root/deps
diff options
context:
space:
mode:
authorShigeki Ohtsu <ohtsu@ohtsu.org>2018-03-07 21:18:52 +0900
committerShigeki Ohtsu <ohtsu@ohtsu.org>2018-04-10 06:45:43 +0900
commit6bab3c23b135f1fc534177a172ba87fea5b1f856 (patch)
treefcedc637bf793870ea6f24d8ab6330f4aa7cba85 /deps
parent66cb29e64621fdd1aa5e377a395ff107d21a613b (diff)
downloadandroid-node-v8-6bab3c23b135f1fc534177a172ba87fea5b1f856.tar.gz
android-node-v8-6bab3c23b135f1fc534177a172ba87fea5b1f856.tar.bz2
android-node-v8-6bab3c23b135f1fc534177a172ba87fea5b1f856.zip
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 <jasnell@gmail.com> Reviewed-By: Rod Vagg <rod@vagg.org> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Diffstat (limited to 'deps')
-rw-r--r--deps/openssl/asm/Makefile386
-rw-r--r--deps/openssl/asm/arm-void-gas/aes/aes-armv4.S1177
-rw-r--r--deps/openssl/asm/arm-void-gas/aes/aesv8-armx.S754
-rw-r--r--deps/openssl/asm/arm-void-gas/aes/bsaes-armv7.S2528
-rw-r--r--deps/openssl/asm/arm-void-gas/bn/armv4-gf2m.S203
-rw-r--r--deps/openssl/asm/arm-void-gas/bn/armv4-mont.S580
-rw-r--r--deps/openssl/asm/arm-void-gas/modes/ghash-armv4.S528
-rw-r--r--deps/openssl/asm/arm-void-gas/modes/ghashv8-armx.S230
-rw-r--r--deps/openssl/asm/arm-void-gas/sha/sha1-armv4-large.S1455
-rw-r--r--deps/openssl/asm/arm-void-gas/sha/sha256-armv4.S2775
-rw-r--r--deps/openssl/asm/arm-void-gas/sha/sha512-armv4.S1775
-rw-r--r--deps/openssl/asm/arm64-linux64-gas/aes/aesv8-armx.S747
-rw-r--r--deps/openssl/asm/arm64-linux64-gas/modes/ghashv8-armx.S227
-rw-r--r--deps/openssl/asm/arm64-linux64-gas/sha/sha1-armv8.S1211
-rw-r--r--deps/openssl/asm/arm64-linux64-gas/sha/sha256-armv8.S1141
-rw-r--r--deps/openssl/asm/arm64-linux64-gas/sha/sha512-armv8.S1021
-rw-r--r--deps/openssl/asm/x64-elf-gas/aes/aes-x86_64.s2534
-rw-r--r--deps/openssl/asm/x64-elf-gas/aes/aesni-mb-x86_64.s1435
-rw-r--r--deps/openssl/asm/x64-elf-gas/aes/aesni-sha1-x86_64.s2985
-rw-r--r--deps/openssl/asm/x64-elf-gas/aes/aesni-sha256-x86_64.s4355
-rw-r--r--deps/openssl/asm/x64-elf-gas/aes/aesni-x86_64.s3551
-rw-r--r--deps/openssl/asm/x64-elf-gas/aes/bsaes-x86_64.s2498
-rw-r--r--deps/openssl/asm/x64-elf-gas/aes/vpaes-x86_64.s827
-rw-r--r--deps/openssl/asm/x64-elf-gas/bn/rsaz-avx2.s1697
-rw-r--r--deps/openssl/asm/x64-elf-gas/bn/rsaz-x86_64.s1873
-rw-r--r--deps/openssl/asm/x64-elf-gas/bn/x86_64-gf2m.s291
-rw-r--r--deps/openssl/asm/x64-elf-gas/bn/x86_64-mont.s1166
-rw-r--r--deps/openssl/asm/x64-elf-gas/bn/x86_64-mont5.s3652
-rw-r--r--deps/openssl/asm/x64-elf-gas/camellia/cmll-x86_64.s1838
-rw-r--r--deps/openssl/asm/x64-elf-gas/ec/ecp_nistz256-x86_64.s3517
-rw-r--r--deps/openssl/asm/x64-elf-gas/md5/md5-x86_64.s668
-rw-r--r--deps/openssl/asm/x64-elf-gas/modes/aesni-gcm-x86_64.s753
-rw-r--r--deps/openssl/asm/x64-elf-gas/modes/ghash-x86_64.s1789
-rw-r--r--deps/openssl/asm/x64-elf-gas/rc4/rc4-md5-x86_64.s1259
-rw-r--r--deps/openssl/asm/x64-elf-gas/rc4/rc4-x86_64.s615
-rw-r--r--deps/openssl/asm/x64-elf-gas/sha/sha1-mb-x86_64.s7221
-rw-r--r--deps/openssl/asm/x64-elf-gas/sha/sha1-x86_64.s5396
-rw-r--r--deps/openssl/asm/x64-elf-gas/sha/sha256-mb-x86_64.s7902
-rw-r--r--deps/openssl/asm/x64-elf-gas/sha/sha256-x86_64.s5358
-rw-r--r--deps/openssl/asm/x64-elf-gas/sha/sha512-x86_64.s5365
-rw-r--r--deps/openssl/asm/x64-elf-gas/whrlpool/wp-x86_64.s861
-rw-r--r--deps/openssl/asm/x64-elf-gas/x86_64cpuid.s275
-rw-r--r--deps/openssl/asm/x64-macosx-gas/aes/aes-x86_64.s2534
-rw-r--r--deps/openssl/asm/x64-macosx-gas/aes/aesni-mb-x86_64.s1434
-rw-r--r--deps/openssl/asm/x64-macosx-gas/aes/aesni-sha1-x86_64.s2984
-rw-r--r--deps/openssl/asm/x64-macosx-gas/aes/aesni-sha256-x86_64.s4354
-rw-r--r--deps/openssl/asm/x64-macosx-gas/aes/aesni-x86_64.s3551
-rw-r--r--deps/openssl/asm/x64-macosx-gas/aes/bsaes-x86_64.s2497
-rw-r--r--deps/openssl/asm/x64-macosx-gas/aes/vpaes-x86_64.s826
-rw-r--r--deps/openssl/asm/x64-macosx-gas/bn/rsaz-avx2.s1697
-rw-r--r--deps/openssl/asm/x64-macosx-gas/bn/rsaz-x86_64.s1873
-rw-r--r--deps/openssl/asm/x64-macosx-gas/bn/x86_64-gf2m.s291
-rw-r--r--deps/openssl/asm/x64-macosx-gas/bn/x86_64-mont.s1166
-rw-r--r--deps/openssl/asm/x64-macosx-gas/bn/x86_64-mont5.s3652
-rw-r--r--deps/openssl/asm/x64-macosx-gas/camellia/cmll-x86_64.s1838
-rw-r--r--deps/openssl/asm/x64-macosx-gas/ec/ecp_nistz256-x86_64.s3516
-rw-r--r--deps/openssl/asm/x64-macosx-gas/md5/md5-x86_64.s667
-rw-r--r--deps/openssl/asm/x64-macosx-gas/modes/aesni-gcm-x86_64.s753
-rw-r--r--deps/openssl/asm/x64-macosx-gas/modes/ghash-x86_64.s1789
-rw-r--r--deps/openssl/asm/x64-macosx-gas/sha/sha1-mb-x86_64.s7221
-rw-r--r--deps/openssl/asm/x64-macosx-gas/sha/sha1-x86_64.s5396
-rw-r--r--deps/openssl/asm/x64-macosx-gas/sha/sha256-mb-x86_64.s7902
-rw-r--r--deps/openssl/asm/x64-macosx-gas/sha/sha256-x86_64.s5357
-rw-r--r--deps/openssl/asm/x64-macosx-gas/sha/sha512-x86_64.s5364
-rw-r--r--deps/openssl/asm/x64-macosx-gas/whrlpool/wp-x86_64.s861
-rw-r--r--deps/openssl/asm/x64-macosx-gas/x86_64cpuid.s275
-rw-r--r--deps/openssl/asm/x64-win32-masm/aes/aes-x86_64.asm2870
-rw-r--r--deps/openssl/asm/x64-win32-masm/aes/aesni-mb-x86_64.asm1698
-rw-r--r--deps/openssl/asm/x64-win32-masm/aes/aesni-sha1-x86_64.asm3234
-rw-r--r--deps/openssl/asm/x64-win32-masm/aes/aesni-sha256-x86_64.asm4654
-rw-r--r--deps/openssl/asm/x64-win32-masm/aes/aesni-x86_64.asm4035
-rw-r--r--deps/openssl/asm/x64-win32-masm/aes/bsaes-x86_64.asm2734
-rw-r--r--deps/openssl/asm/x64-win32-masm/aes/vpaes-x86_64.asm1143
-rw-r--r--deps/openssl/asm/x64-win32-masm/bn/rsaz-avx2.asm1931
-rw-r--r--deps/openssl/asm/x64-win32-masm/bn/rsaz-x86_64.asm2155
-rw-r--r--deps/openssl/asm/x64-win32-masm/bn/x86_64-gf2m.asm399
-rw-r--r--deps/openssl/asm/x64-win32-masm/bn/x86_64-mont.asm1404
-rw-r--r--deps/openssl/asm/x64-win32-masm/bn/x86_64-mont5.asm3921
-rw-r--r--deps/openssl/asm/x64-win32-masm/camellia/cmll-x86_64.asm2099
-rw-r--r--deps/openssl/asm/x64-win32-masm/ec/ecp_nistz256-x86_64.asm3802
-rw-r--r--deps/openssl/asm/x64-win32-masm/md5/md5-x86_64.asm778
-rw-r--r--deps/openssl/asm/x64-win32-masm/modes/aesni-gcm-x86_64.asm948
-rw-r--r--deps/openssl/asm/x64-win32-masm/modes/ghash-x86_64.asm2021
-rw-r--r--deps/openssl/asm/x64-win32-masm/rc4/rc4-md5-x86_64.asm1374
-rw-r--r--deps/openssl/asm/x64-win32-masm/rc4/rc4-x86_64.asm771
-rw-r--r--deps/openssl/asm/x64-win32-masm/sha/sha1-mb-x86_64.asm7533
-rw-r--r--deps/openssl/asm/x64-win32-masm/sha/sha1-x86_64.asm5720
-rw-r--r--deps/openssl/asm/x64-win32-masm/sha/sha256-mb-x86_64.asm8214
-rw-r--r--deps/openssl/asm/x64-win32-masm/sha/sha256-x86_64.asm5640
-rw-r--r--deps/openssl/asm/x64-win32-masm/sha/sha512-x86_64.asm5595
-rw-r--r--deps/openssl/asm/x64-win32-masm/whrlpool/wp-x86_64.asm974
-rw-r--r--deps/openssl/asm/x64-win32-masm/x86_64cpuid.asm280
-rw-r--r--deps/openssl/asm/x86-elf-gas/aes/aes-586.s3244
-rw-r--r--deps/openssl/asm/x86-elf-gas/aes/aesni-x86.s2448
-rw-r--r--deps/openssl/asm/x86-elf-gas/aes/vpaes-x86.s661
-rw-r--r--deps/openssl/asm/x86-elf-gas/bf/bf-586.s896
-rw-r--r--deps/openssl/asm/x86-elf-gas/bn/bn-586.s1521
-rw-r--r--deps/openssl/asm/x86-elf-gas/bn/co-586.s1254
-rw-r--r--deps/openssl/asm/x86-elf-gas/bn/x86-gf2m.s343
-rw-r--r--deps/openssl/asm/x86-elf-gas/bn/x86-mont.s471
-rw-r--r--deps/openssl/asm/x86-elf-gas/camellia/cmll-x86.s2375
-rw-r--r--deps/openssl/asm/x86-elf-gas/cast/cast-586.s933
-rw-r--r--deps/openssl/asm/x86-elf-gas/des/crypt586.s875
-rw-r--r--deps/openssl/asm/x86-elf-gas/des/des-586.s1838
-rw-r--r--deps/openssl/asm/x86-elf-gas/md5/md5-586.s679
-rw-r--r--deps/openssl/asm/x86-elf-gas/modes/ghash-x86.s1265
-rw-r--r--deps/openssl/asm/x86-elf-gas/rc4/rc4-586.s372
-rw-r--r--deps/openssl/asm/x86-elf-gas/ripemd/rmd-586.s1965
-rw-r--r--deps/openssl/asm/x86-elf-gas/sha/sha1-586.s3970
-rw-r--r--deps/openssl/asm/x86-elf-gas/sha/sha256-586.s6783
-rw-r--r--deps/openssl/asm/x86-elf-gas/sha/sha512-586.s2829
-rw-r--r--deps/openssl/asm/x86-elf-gas/whrlpool/wp-mmx.s1107
-rw-r--r--deps/openssl/asm/x86-elf-gas/x86cpuid.s362
-rw-r--r--deps/openssl/asm/x86-macosx-gas/aes/aes-586.s3208
-rw-r--r--deps/openssl/asm/x86-macosx-gas/aes/aesni-x86.s2412
-rw-r--r--deps/openssl/asm/x86-macosx-gas/aes/vpaes-x86.s635
-rw-r--r--deps/openssl/asm/x86-macosx-gas/bf/bf-586.s858
-rw-r--r--deps/openssl/asm/x86-macosx-gas/bn/bn-586.s1520
-rw-r--r--deps/openssl/asm/x86-macosx-gas/bn/co-586.s1246
-rw-r--r--deps/openssl/asm/x86-macosx-gas/bn/x86-gf2m.s344
-rw-r--r--deps/openssl/asm/x86-macosx-gas/bn/x86-mont.s476
-rw-r--r--deps/openssl/asm/x86-macosx-gas/camellia/cmll-x86.s2353
-rw-r--r--deps/openssl/asm/x86-macosx-gas/cast/cast-586.s927
-rw-r--r--deps/openssl/asm/x86-macosx-gas/des/crypt586.s880
-rw-r--r--deps/openssl/asm/x86-macosx-gas/des/des-586.s1822
-rw-r--r--deps/openssl/asm/x86-macosx-gas/md5/md5-586.s677
-rw-r--r--deps/openssl/asm/x86-macosx-gas/modes/ghash-x86.s1251
-rw-r--r--deps/openssl/asm/x86-macosx-gas/rc4/rc4-586.s379
-rw-r--r--deps/openssl/asm/x86-macosx-gas/ripemd/rmd-586.s1963
-rw-r--r--deps/openssl/asm/x86-macosx-gas/sha/sha1-586.s3966
-rw-r--r--deps/openssl/asm/x86-macosx-gas/sha/sha256-586.s6785
-rw-r--r--deps/openssl/asm/x86-macosx-gas/sha/sha512-586.s2831
-rw-r--r--deps/openssl/asm/x86-macosx-gas/whrlpool/wp-mmx.s1105
-rw-r--r--deps/openssl/asm/x86-macosx-gas/x86cpuid.s354
-rw-r--r--deps/openssl/asm/x86-win32-masm/aes/aes-586.asm3232
-rw-r--r--deps/openssl/asm/x86-win32-masm/aes/aesni-x86.asm2439
-rw-r--r--deps/openssl/asm/x86-win32-masm/aes/vpaes-x86.asm662
-rw-r--r--deps/openssl/asm/x86-win32-masm/bf/bf-586.asm902
-rw-r--r--deps/openssl/asm/x86-win32-masm/bn/bn-586.asm1529
-rw-r--r--deps/openssl/asm/x86-win32-masm/bn/co-586.asm1258
-rw-r--r--deps/openssl/asm/x86-win32-masm/bn/x86-gf2m.asm361
-rw-r--r--deps/openssl/asm/x86-win32-masm/bn/x86-mont.asm491
-rw-r--r--deps/openssl/asm/x86-win32-masm/camellia/cmll-x86.asm2370
-rw-r--r--deps/openssl/asm/x86-win32-masm/cast/cast-586.asm947
-rw-r--r--deps/openssl/asm/x86-win32-masm/des/crypt586.asm886
-rw-r--r--deps/openssl/asm/x86-win32-masm/des/des-586.asm1836
-rw-r--r--deps/openssl/asm/x86-win32-masm/md5/md5-586.asm689
-rw-r--r--deps/openssl/asm/x86-win32-masm/modes/ghash-x86.asm1274
-rw-r--r--deps/openssl/asm/x86-win32-masm/rc4/rc4-586.asm388
-rw-r--r--deps/openssl/asm/x86-win32-masm/ripemd/rmd-586.asm1975
-rw-r--r--deps/openssl/asm/x86-win32-masm/sha/sha1-586.asm3987
-rw-r--r--deps/openssl/asm/x86-win32-masm/sha/sha256-586.asm6818
-rw-r--r--deps/openssl/asm/x86-win32-masm/sha/sha512-586.asm2849
-rw-r--r--deps/openssl/asm/x86-win32-masm/whrlpool/wp-mmx.asm1124
-rw-r--r--deps/openssl/asm/x86-win32-masm/x86cpuid.asm365
-rw-r--r--deps/openssl/asm_obsolete/Makefile376
-rw-r--r--deps/openssl/asm_obsolete/arm-void-gas/aes/aes-armv4.S1177
-rw-r--r--deps/openssl/asm_obsolete/arm-void-gas/aes/aesv8-armx.S754
-rw-r--r--deps/openssl/asm_obsolete/arm-void-gas/aes/bsaes-armv7.S2528
-rw-r--r--deps/openssl/asm_obsolete/arm-void-gas/bn/armv4-gf2m.S203
-rw-r--r--deps/openssl/asm_obsolete/arm-void-gas/bn/armv4-mont.S580
-rw-r--r--deps/openssl/asm_obsolete/arm-void-gas/modes/ghash-armv4.S528
-rw-r--r--deps/openssl/asm_obsolete/arm-void-gas/modes/ghashv8-armx.S230
-rw-r--r--deps/openssl/asm_obsolete/arm-void-gas/sha/sha1-armv4-large.S1455
-rw-r--r--deps/openssl/asm_obsolete/arm-void-gas/sha/sha256-armv4.S2775
-rw-r--r--deps/openssl/asm_obsolete/arm-void-gas/sha/sha512-armv4.S1775
-rw-r--r--deps/openssl/asm_obsolete/arm64-linux64-gas/aes/aesv8-armx.S747
-rw-r--r--deps/openssl/asm_obsolete/arm64-linux64-gas/modes/ghashv8-armx.S227
-rw-r--r--deps/openssl/asm_obsolete/arm64-linux64-gas/sha/sha1-armv8.S1211
-rw-r--r--deps/openssl/asm_obsolete/arm64-linux64-gas/sha/sha256-armv8.S1141
-rw-r--r--deps/openssl/asm_obsolete/arm64-linux64-gas/sha/sha512-armv8.S1021
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/aes/aes-x86_64.s2534
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-mb-x86_64.s506
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-sha1-x86_64.s1682
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-sha256-x86_64.s57
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/aes/aesni-x86_64.s3551
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/aes/bsaes-x86_64.s2498
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/aes/vpaes-x86_64.s827
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/bn/rsaz-avx2.s25
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/bn/rsaz-x86_64.s1219
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/bn/x86_64-gf2m.s291
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/bn/x86_64-mont.s804
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/bn/x86_64-mont5.s2328
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/camellia/cmll-x86_64.s1838
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/ec/ecp_nistz256-x86_64.s2014
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/md5/md5-x86_64.s668
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/modes/aesni-gcm-x86_64.s15
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/modes/ghash-x86_64.s1318
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/rc4/rc4-md5-x86_64.s1259
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/rc4/rc4-x86_64.s615
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/sha/sha1-mb-x86_64.s2934
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/sha/sha1-x86_64.s2591
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/sha/sha256-mb-x86_64.s3258
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/sha/sha256-x86_64.s3049
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/sha/sha512-x86_64.s1783
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/whrlpool/wp-x86_64.s861
-rw-r--r--deps/openssl/asm_obsolete/x64-elf-gas/x86_64cpuid.s275
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/aes/aes-x86_64.s2534
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-mb-x86_64.s505
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-sha1-x86_64.s1681
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-sha256-x86_64.s57
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/aes/aesni-x86_64.s3551
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/aes/bsaes-x86_64.s2497
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/aes/vpaes-x86_64.s826
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/bn/rsaz-avx2.s24
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/bn/rsaz-x86_64.s1219
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/bn/x86_64-gf2m.s291
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/bn/x86_64-mont.s804
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/bn/x86_64-mont5.s2328
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/camellia/cmll-x86_64.s1838
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/ec/ecp_nistz256-x86_64.s2013
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/md5/md5-x86_64.s667
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/modes/aesni-gcm-x86_64.s14
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/modes/ghash-x86_64.s1318
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha1-mb-x86_64.s2934
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha1-x86_64.s2591
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha256-mb-x86_64.s3258
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha256-x86_64.s3048
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/sha/sha512-x86_64.s1783
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/whrlpool/wp-x86_64.s861
-rw-r--r--deps/openssl/asm_obsolete/x64-macosx-gas/x86_64cpuid.s275
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/aes/aes-x86_64.asm2870
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-mb-x86_64.asm689
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-sha1-x86_64.asm1888
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-sha256-x86_64.asm65
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/aes/aesni-x86_64.asm4035
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/aes/bsaes-x86_64.asm2734
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/aes/vpaes-x86_64.asm1143
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/bn/rsaz-avx2.asm29
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/bn/rsaz-x86_64.asm1501
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/bn/x86_64-gf2m.asm399
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/bn/x86_64-mont.asm1019
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/bn/x86_64-mont5.asm2550
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/camellia/cmll-x86_64.asm2099
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/ec/ecp_nistz256-x86_64.asm2226
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/md5/md5-x86_64.asm778
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/modes/aesni-gcm-x86_64.asm19
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/modes/ghash-x86_64.asm1510
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/rc4/rc4-md5-x86_64.asm1374
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/rc4/rc4-x86_64.asm771
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/sha/sha1-mb-x86_64.asm3112
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/sha/sha1-x86_64.asm2850
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/sha/sha256-mb-x86_64.asm3436
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/sha/sha256-x86_64.asm3270
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/sha/sha512-x86_64.asm1913
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/whrlpool/wp-x86_64.asm974
-rw-r--r--deps/openssl/asm_obsolete/x64-win32-masm/x86_64cpuid.asm280
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/aes/aes-586.s3244
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/aes/aesni-x86.s2448
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/aes/vpaes-x86.s661
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/bf/bf-586.s896
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/bn/bn-586.s1521
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/bn/co-586.s1254
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/bn/x86-gf2m.s343
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/bn/x86-mont.s471
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/camellia/cmll-x86.s2375
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/cast/cast-586.s933
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/des/crypt586.s875
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/des/des-586.s1838
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/md5/md5-586.s679
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/modes/ghash-x86.s1265
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/rc4/rc4-586.s372
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/ripemd/rmd-586.s1965
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/sha/sha1-586.s2795
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/sha/sha256-586.s4577
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/sha/sha512-586.s2829
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/whrlpool/wp-mmx.s1107
-rw-r--r--deps/openssl/asm_obsolete/x86-elf-gas/x86cpuid.s362
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/aes/aes-586.s3208
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/aes/aesni-x86.s2412
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/aes/vpaes-x86.s635
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/bf/bf-586.s858
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/bn/bn-586.s1520
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/bn/co-586.s1246
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/bn/x86-gf2m.s344
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/bn/x86-mont.s476
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/camellia/cmll-x86.s2353
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/cast/cast-586.s927
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/des/crypt586.s880
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/des/des-586.s1822
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/md5/md5-586.s677
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/modes/ghash-x86.s1251
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/rc4/rc4-586.s379
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/ripemd/rmd-586.s1963
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/sha/sha1-586.s2793
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/sha/sha256-586.s4579
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/sha/sha512-586.s2831
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/whrlpool/wp-mmx.s1105
-rw-r--r--deps/openssl/asm_obsolete/x86-macosx-gas/x86cpuid.s354
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/aes/aes-586.asm3232
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/aes/aesni-x86.asm2439
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/aes/vpaes-x86.asm662
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/bf/bf-586.asm902
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/bn/bn-586.asm1529
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/bn/co-586.asm1258
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/bn/x86-gf2m.asm361
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/bn/x86-mont.asm491
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/camellia/cmll-x86.asm2370
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/cast/cast-586.asm947
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/des/crypt586.asm886
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/des/des-586.asm1836
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/md5/md5-586.asm689
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/modes/ghash-x86.asm1274
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/rc4/rc4-586.asm388
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/ripemd/rmd-586.asm1975
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/sha/sha1-586.asm2813
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/sha/sha256-586.asm4612
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/sha/sha512-586.asm2849
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/whrlpool/wp-mmx.asm1124
-rw-r--r--deps/openssl/asm_obsolete/x86-win32-masm/x86cpuid.asm365
-rw-r--r--deps/openssl/buildinf.h7
-rw-r--r--deps/openssl/config/Makefile61
-rw-r--r--deps/openssl/config/archs/BSD-x86/opensslconf.h270
-rw-r--r--deps/openssl/config/archs/BSD-x86_64/opensslconf.h270
-rw-r--r--deps/openssl/config/archs/VC-WIN32/opensslconf.h271
-rw-r--r--deps/openssl/config/archs/VC-WIN64A/opensslconf.h271
-rw-r--r--deps/openssl/config/archs/aix-gcc/opensslconf.h273
-rw-r--r--deps/openssl/config/archs/aix64-gcc/opensslconf.h273
-rw-r--r--deps/openssl/config/archs/darwin-i386-cc/opensslconf.h273
-rw-r--r--deps/openssl/config/archs/darwin64-x86_64-cc/opensslconf.h273
-rw-r--r--deps/openssl/config/archs/linux-aarch64/opensslconf.h270
-rw-r--r--deps/openssl/config/archs/linux-armv4/opensslconf.h270
-rw-r--r--deps/openssl/config/archs/linux-elf/opensslconf.h270
-rw-r--r--deps/openssl/config/archs/linux-ppc/opensslconf.h270
-rw-r--r--deps/openssl/config/archs/linux-ppc64/opensslconf.h270
-rw-r--r--deps/openssl/config/archs/linux-x32/opensslconf.h270
-rw-r--r--deps/openssl/config/archs/linux-x86_64/opensslconf.h270
-rw-r--r--deps/openssl/config/archs/linux32-s390x/opensslconf.h270
-rw-r--r--deps/openssl/config/archs/linux64-s390x/opensslconf.h270
-rw-r--r--deps/openssl/config/archs/solaris-x86-gcc/opensslconf.h270
-rw-r--r--deps/openssl/config/archs/solaris64-x86_64-gcc/opensslconf.h270
-rw-r--r--deps/openssl/config/opensslconf.h154
-rw-r--r--deps/openssl/doc/UPGRADING.md361
-rw-r--r--deps/openssl/doc/openssl_define_list.pdfbin85632 -> 0 bytes
-rwxr-xr-xdeps/openssl/fips/fipscc15
-rwxr-xr-xdeps/openssl/fips/fipsld8
336 files changed, 0 insertions, 578863 deletions
diff --git a/deps/openssl/asm/Makefile b/deps/openssl/asm/Makefile
deleted file mode 100644
index 5da1f3b99c..0000000000
--- 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 bd01abddce..0000000000
--- a/deps/openssl/asm/arm-void-gas/aes/aes-armv4.S
+++ /dev/null
@@ -1,1177 +0,0 @@
-
-@ ====================================================================
-@ Written by Andy Polyakov <appro@openssl.org> 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 <appro@openssl.org>"
-.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 fd979d078f..0000000000
--- 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 aa15709abb..0000000000
--- a/deps/openssl/asm/arm-void-gas/aes/bsaes-armv7.S
+++ /dev/null
@@ -1,2528 +0,0 @@
-
-@ ====================================================================
-@ Written by Andy Polyakov <appro@openssl.org> 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
-@ <ard.biesheuvel@linaro.org>. 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)...
-@
-@ <appro@openssl.org>
-
-@ April-August 2013
-@
-@ Add CBC, CTR and XTS subroutines, adapt for kernel use.
-@
-@ <ard.biesheuvel@linaro.org>
-
-#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 <appro@openssl.org>"
-.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 ad71aa0b66..0000000000
--- 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 <appro@openssl.org>"
-.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 71fc296fca..0000000000
--- 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 <appro@openssl.org>"
-.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 6f699dbd87..0000000000
--- 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 <appro@openssl.org>"
-.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 9aaea13f91..0000000000
--- 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 <appro@openssl.org>"
-.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 b0893359ca..0000000000
--- 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 <appro@openssl.org>"
-.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 4e1f0226e8..0000000000
--- a/deps/openssl/asm/arm-void-gas/sha/sha256-armv4.S
+++ /dev/null
@@ -1,2775 +0,0 @@
-
-@ ====================================================================
-@ Written by Andy Polyakov <appro@openssl.org> 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 <appro@openssl.org>"
-.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 1889fc701a..0000000000
--- 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 <appro@openssl.org>"
-.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 f5dd6cbb86..0000000000
--- 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 fc3dadd08a..0000000000
--- 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 <appro@openssl.org>"
-.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 f9d126252e..0000000000
--- 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 <appro@openssl.org>"
-.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 bd43b1fe76..0000000000
--- 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 <appro@openssl.org>"
-.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 6b0d1940c6..0000000000
--- 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 <appro@openssl.org>"
-.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 c21cce10f5..0000000000
--- 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 d493797832..0000000000
--- 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 c7c53e8771..0000000000
--- 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 70eed05b00..0000000000
--- 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 2317f0e55d..0000000000
--- 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 0fd201167f..0000000000
--- 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 bf7c2b0b6f..0000000000
--- 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 a2cccde636..0000000000
--- 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 b6797a6849..0000000000
--- 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 f4e5337565..0000000000
--- 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 0fd3703ade..0000000000
--- 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 963fa3efda..0000000000
--- 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 1117381f31..0000000000
--- 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 027be89d1e..0000000000
--- 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 fad85c498e..0000000000
--- 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 58bf244ed5..0000000000
--- 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 10f5987415..0000000000
--- 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 9c7110f4ef..0000000000
--- 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 d52224afcf..0000000000
--- 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 d2857f3288..0000000000
--- 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 195a148bb9..0000000000
--- 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 bd72a459ab..0000000000
--- 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 23b932e1de..0000000000
--- 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 a1021c17a9..0000000000
--- 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 f83130ea68..0000000000
--- 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 86c780b1c5..0000000000
--- 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 cb2db3584a..0000000000
--- 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 f127e013ea..0000000000
--- 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 cdce52cd0a..0000000000
--- 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 40e75bfedb..0000000000
--- 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 dde837980c..0000000000
--- 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 52ae782e9a..0000000000
--- 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 2ffd0bc100..0000000000
--- 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 f2bc63be34..0000000000
--- 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 8a6e44932d..0000000000
--- 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 c0f0b4bd68..0000000000
--- 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 9fcda4ba3b..0000000000
--- 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 0cdcd14f1a..0000000000
--- 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 8025d088fd..0000000000
--- 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 19df69f08a..0000000000
--- 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 5b1f44ea01..0000000000
--- 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 39b2fb84ef..0000000000
--- 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 76f3b7cdfd..0000000000
--- 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 ac6ad9bb8c..0000000000
--- 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 1c52e05e39..0000000000
--- 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 897dacd5b4..0000000000
--- 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 3cbe0a170c..0000000000
--- 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 91821da126..0000000000
--- 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 ad43b5a1b3..0000000000
--- 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 7075cf80d3..0000000000
--- 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 64f07ad589..0000000000
--- 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 f482b85663..0000000000
--- 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 5a2c8e0eb5..0000000000
--- 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 d697869bb2..0000000000
--- 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 5e848125d6..0000000000
--- 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 3346a7e25b..0000000000
--- 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 292f64d58d..0000000000
--- 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 40ce01fdc6..0000000000
--- 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 e431b62090..0000000000
--- 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 d2e9c6600b..0000000000
--- 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 a1efb2f698..0000000000
--- 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 fb9aaaeabe..0000000000
--- 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 5e6d451576..0000000000
--- 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 da36a1c048..0000000000
--- 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 d2faa88e8a..0000000000
--- 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 6552f7d017..0000000000
--- 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 fd6300dc98..0000000000
--- 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 9d823aed57..0000000000
--- 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 a0e5553247..0000000000
--- 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 fe49fbcadb..0000000000
--- 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 24df468123..0000000000
--- 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 057853d286..0000000000
--- 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 d0892736b7..0000000000
--- 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 a3d68c675a..0000000000
--- 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 fa5bfbc7b2..0000000000
--- 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 69532e09fb..0000000000
--- 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 2d7c1fd09d..0000000000
--- 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 3bbc4e47d6..0000000000
--- 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 5dc8d19633..0000000000
--- 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 aa718d40cd..0000000000
--- 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 3e20e9df09..0000000000
--- 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 1128e3e959..0000000000
--- 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 d8fff7c102..0000000000
--- 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 b683577231..0000000000
--- 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 5c87910e34..0000000000
--- 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 3ef7fe32b7..0000000000
--- 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 46c81c493d..0000000000
--- 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 054e2b0d59..0000000000
--- 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 e354c4ebcd..0000000000
--- 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 70e9493d1b..0000000000
--- 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 fcb4adc146..0000000000
--- 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 3c45fb91d0..0000000000
--- 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 8a9ef772b7..0000000000
--- 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 b434e42bab..0000000000
--- 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 83329f439e..0000000000
--- 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 37f50898ae..0000000000
--- 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 08369b4239..0000000000
--- 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 12e9100222..0000000000
--- 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 c1f5aec62c..0000000000
--- 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 81f7af8238..0000000000
--- 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 2b75536e78..0000000000
--- 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 777121eae8..0000000000
--- 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 6174dea38f..0000000000
--- 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 6aa546e338..0000000000
--- 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 7bc58d24e0..0000000000
--- 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 2367cee780..0000000000
--- 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 3e797b6145..0000000000
--- 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 1731c53faa..0000000000
--- 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 43354871fc..0000000000
--- 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 cd5dd459ca..0000000000
--- 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 c68edef5be..0000000000
--- 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 ac82e76498..0000000000
--- 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 7323b2de73..0000000000
--- 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 d75e61693d..0000000000
--- 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 d30c582726..0000000000
--- 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 d539b1d168..0000000000
--- 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 379e585263..0000000000
--- 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 c3e9fd6dba..0000000000
--- 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 ea853704c7..0000000000
--- 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 6511c21bcf..0000000000
--- 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 57afc202bb..0000000000
--- 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 218e8f5c7d..0000000000
--- 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 916ed88861..0000000000
--- 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 a44b2b1b95..0000000000
--- 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 57adf3ace4..0000000000
--- 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 f026dae738..0000000000
--- 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 6aac94e490..0000000000
--- 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 0801d204e2..0000000000
--- 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 6ca04c3afb..0000000000
--- 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 ecae90ec7c..0000000000
--- 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 ae47efcb7a..0000000000
--- 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 d18bb128c5..0000000000
--- 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 90ab38ab8a..0000000000
--- 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 9bcd60a0b9..0000000000
--- 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 4607eda762..0000000000
--- 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 d184877bb7..0000000000
--- 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 9a57e5af84..0000000000
--- 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 22a17d3510..0000000000
--- 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 d53b6a44d8..0000000000
--- 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 c3ccfa43ce..0000000000
--- 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 bd01abddce..0000000000
--- a/deps/openssl/asm_obsolete/arm-void-gas/aes/aes-armv4.S
+++ /dev/null
@@ -1,1177 +0,0 @@
-
-@ ====================================================================
-@ Written by Andy Polyakov <appro@openssl.org> 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 <appro@openssl.org>"
-.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 fd979d078f..0000000000
--- 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 aa15709abb..0000000000
--- a/deps/openssl/asm_obsolete/arm-void-gas/aes/bsaes-armv7.S
+++ /dev/null
@@ -1,2528 +0,0 @@
-
-@ ====================================================================
-@ Written by Andy Polyakov <appro@openssl.org> 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
-@ <ard.biesheuvel@linaro.org>. 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)...
-@
-@ <appro@openssl.org>
-
-@ April-August 2013
-@
-@ Add CBC, CTR and XTS subroutines, adapt for kernel use.
-@
-@ <ard.biesheuvel@linaro.org>
-
-#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 <appro@openssl.org>"
-.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 ad71aa0b66..0000000000
--- 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 <appro@openssl.org>"
-.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 71fc296fca..0000000000
--- 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 <appro@openssl.org>"
-.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 6f699dbd87..0000000000
--- 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 <appro@openssl.org>"
-.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 9aaea13f91..0000000000
--- 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 <appro@openssl.org>"
-.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 b0893359ca..0000000000
--- 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 <appro@openssl.org>"
-.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 4e1f0226e8..0000000000
--- a/deps/openssl/asm_obsolete/arm-void-gas/sha/sha256-armv4.S
+++ /dev/null
@@ -1,2775 +0,0 @@
-
-@ ====================================================================
-@ Written by Andy Polyakov <appro@openssl.org> 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 <appro@openssl.org>"
-.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 1889fc701a..0000000000
--- 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 <appro@openssl.org>"
-.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 f5dd6cbb86..0000000000
--- 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 fc3dadd08a..0000000000
--- 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 <appro@openssl.org>"
-.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 f9d126252e..0000000000
--- 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 <appro@openssl.org>"
-.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 bd43b1fe76..0000000000
--- 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 <appro@openssl.org>"
-.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 6b0d1940c6..0000000000
--- 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 <appro@openssl.org>"
-.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 c21cce10f5..0000000000
--- 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 b0467f2f9f..0000000000
--- 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 84c5dced02..0000000000
--- 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 2c85f62495..0000000000
--- 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 2317f0e55d..0000000000
--- 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 0fd201167f..0000000000
--- 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 bf7c2b0b6f..0000000000
--- 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 d8b8bd8de5..0000000000
--- 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 4a1211329c..0000000000
--- 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 f4e5337565..0000000000
--- 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 865c2ef5cb..0000000000
--- 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 175f552577..0000000000
--- 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 1117381f31..0000000000
--- 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 c7bc6f2636..0000000000
--- 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 fad85c498e..0000000000
--- 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 35ebd9b4e0..0000000000
--- 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 e3e9b813c8..0000000000
--- 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 9c7110f4ef..0000000000
--- 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 d52224afcf..0000000000
--- 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 dd4921b139..0000000000
--- 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 d2fbc15044..0000000000
--- 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 0f23c30436..0000000000
--- 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 ab16a7b618..0000000000
--- 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 f6638db30e..0000000000
--- 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 f83130ea68..0000000000
--- 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 86c780b1c5..0000000000
--- 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 cb2db3584a..0000000000
--- 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 e45c622a52..0000000000
--- 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 8cd95238b0..0000000000
--- 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 53307da358..0000000000
--- 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 dde837980c..0000000000
--- 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 52ae782e9a..0000000000
--- 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 2ffd0bc100..0000000000
--- 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 02f7f562ea..0000000000
--- 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 b92f098e73..0000000000
--- 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 c0f0b4bd68..0000000000
--- 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 7c59d9b730..0000000000
--- 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 17036a5abd..0000000000
--- 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 8025d088fd..0000000000
--- 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 62e8d00ccd..0000000000
--- 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 5b1f44ea01..0000000000
--- 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 e2bf1bb53a..0000000000
--- 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 ba706df1d1..0000000000
--- 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 4976be6d7b..0000000000
--- 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 47c5f633cd..0000000000
--- 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 796ce2c951..0000000000
--- 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 5566d58761..0000000000
--- 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 1cae4e11fb..0000000000
--- 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 ad43b5a1b3..0000000000
--- 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 7075cf80d3..0000000000
--- 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 64f07ad589..0000000000
--- 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 be408eec68..0000000000
--- 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 dbad8c5e23..0000000000
--- 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 34b554f9a9..0000000000
--- 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 5e848125d6..0000000000
--- 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 3346a7e25b..0000000000
--- 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 292f64d58d..0000000000
--- 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 f9188f510e..0000000000
--- 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 89114311a5..0000000000
--- 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 d2e9c6600b..0000000000
--- 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 2b46716247..0000000000
--- 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 a1cd3dd1b6..0000000000
--- 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 5e6d451576..0000000000
--- 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 4086b66e46..0000000000
--- 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 d2faa88e8a..0000000000
--- 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 828be8d124..0000000000
--- 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 9993d75939..0000000000
--- 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 9d823aed57..0000000000
--- 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 a0e5553247..0000000000
--- 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 32919ea737..0000000000
--- 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 7528c8a8a6..0000000000
--- 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 6e5f865bbe..0000000000
--- 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 69a382b892..0000000000
--- 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 e993c3c35f..0000000000
--- 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 fa5bfbc7b2..0000000000
--- 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 69532e09fb..0000000000
--- 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 2d7c1fd09d..0000000000
--- 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 3bbc4e47d6..0000000000
--- 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 5dc8d19633..0000000000
--- 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 aa718d40cd..0000000000
--- 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 3e20e9df09..0000000000
--- 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 1128e3e959..0000000000
--- 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 d8fff7c102..0000000000
--- 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 b683577231..0000000000
--- 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 5c87910e34..0000000000
--- 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 3ef7fe32b7..0000000000
--- 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 46c81c493d..0000000000
--- 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 054e2b0d59..0000000000
--- 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 e354c4ebcd..0000000000
--- 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 70e9493d1b..0000000000
--- 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 fcb4adc146..0000000000
--- 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 3c45fb91d0..0000000000
--- 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 816b1d55bb..0000000000
--- 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 836d91886b..0000000000
--- 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 83329f439e..0000000000
--- 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 37f50898ae..0000000000
--- 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 08369b4239..0000000000
--- 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 12e9100222..0000000000
--- 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 c1f5aec62c..0000000000
--- 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 81f7af8238..0000000000
--- 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 2b75536e78..0000000000
--- 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 777121eae8..0000000000
--- 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 6174dea38f..0000000000
--- 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 6aa546e338..0000000000
--- 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 7bc58d24e0..0000000000
--- 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 2367cee780..0000000000
--- 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 3e797b6145..0000000000
--- 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 1731c53faa..0000000000
--- 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 43354871fc..0000000000
--- 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 cd5dd459ca..0000000000
--- 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 c68edef5be..0000000000
--- 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 ac82e76498..0000000000
--- 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 7323b2de73..0000000000
--- 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 a0fe22eb2e..0000000000
--- 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 37f532aa5f..0000000000
--- 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 d539b1d168..0000000000
--- 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 379e585263..0000000000
--- 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 c3e9fd6dba..0000000000
--- 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 ea853704c7..0000000000
--- 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 6511c21bcf..0000000000
--- 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 57afc202bb..0000000000
--- 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 218e8f5c7d..0000000000
--- 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 916ed88861..0000000000
--- 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 a44b2b1b95..0000000000
--- 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 57adf3ace4..0000000000
--- 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 f026dae738..0000000000
--- 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 6aac94e490..0000000000
--- 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 0801d204e2..0000000000
--- 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 6ca04c3afb..0000000000
--- 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 ecae90ec7c..0000000000
--- 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 ae47efcb7a..0000000000
--- 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 d18bb128c5..0000000000
--- 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 90ab38ab8a..0000000000
--- 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 9bcd60a0b9..0000000000
--- 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 38aaf17445..0000000000
--- 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 b6af4ab064..0000000000
--- 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 9a57e5af84..0000000000
--- 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 22a17d3510..0000000000
--- 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 d53b6a44d8..0000000000
--- 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 1a8e483c1b..0000000000
--- 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 c8155b16d8..0000000000
--- 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 769c15e052..0000000000
--- 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 <unistd.h>
-
-#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 <pgut001@cs.auckland.ac.nz>
- * 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 231c8f3628..0000000000
--- 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 <unistd.h>
-
-#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 <pgut001@cs.auckland.ac.nz>
- * 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 963b384b22..0000000000
--- 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 <unistd.h>
-
-#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 <pgut001@cs.auckland.ac.nz>
- * 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 2993295bd4..0000000000
--- 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 <unistd.h>
-
-#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 <pgut001@cs.auckland.ac.nz>
- * 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 c647b9485a..0000000000
--- 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 <unistd.h>
-
-#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 <pgut001@cs.auckland.ac.nz>
- * 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 b7632639d7..0000000000
--- 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 <unistd.h>
-
-#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 <pgut001@cs.auckland.ac.nz>
- * 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 584537094d..0000000000
--- 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 <unistd.h>
-
-#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 <pgut001@cs.auckland.ac.nz>
- * 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 1d7932d04b..0000000000
--- 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 <unistd.h>
-
-#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 <pgut001@cs.auckland.ac.nz>
- * 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 bd4869d4c5..0000000000
--- 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 <unistd.h>
-
-#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 <pgut001@cs.auckland.ac.nz>
- * 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 4f6aa1c69b..0000000000
--- 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 <unistd.h>
-
-#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 <pgut001@cs.auckland.ac.nz>
- * 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 769c15e052..0000000000
--- 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 <unistd.h>
-
-#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 <pgut001@cs.auckland.ac.nz>
- * 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 8d7bda716a..0000000000
--- 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 <unistd.h>
-
-#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 <pgut001@cs.auckland.ac.nz>
- * 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 bec911036c..0000000000
--- 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 <unistd.h>
-
-#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 <pgut001@cs.auckland.ac.nz>
- * 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 8e184bc815..0000000000
--- 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 <unistd.h>
-
-#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 <pgut001@cs.auckland.ac.nz>
- * 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 231c8f3628..0000000000
--- 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 <unistd.h>
-
-#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 <pgut001@cs.auckland.ac.nz>
- * 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 32759db474..0000000000
--- 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 <unistd.h>
-
-#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 <pgut001@cs.auckland.ac.nz>
- * 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 c4865e0b62..0000000000
--- 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 <unistd.h>
-
-#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 <pgut001@cs.auckland.ac.nz>
- * 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 769c15e052..0000000000
--- 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 <unistd.h>
-
-#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 <pgut001@cs.auckland.ac.nz>
- * 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 231c8f3628..0000000000
--- 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 <unistd.h>
-
-#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 <pgut001@cs.auckland.ac.nz>
- * 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 1c89babcf6..0000000000
--- 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 8b25962a95..0000000000
--- 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 <paths>' or 'git rm <paths>'
-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 efbc85ff01..0000000000
--- a/deps/openssl/doc/openssl_define_list.pdf
+++ /dev/null
Binary files differ
diff --git a/deps/openssl/fips/fipscc b/deps/openssl/fips/fipscc
deleted file mode 100755
index af30629e33..0000000000
--- a/deps/openssl/fips/fipscc
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh
-ARGS=
-CXX=${CXX:-g++}
-
-while [ "x$1" != "x" ]; do
- ARG=$1
- shift
- case $ARG in
- *fips_premain.c) ARGS="$ARGS -x c $ARG -x none";;
- *) ARGS="$ARGS $ARG";;
- esac
-done
-
-echo $CXX $ARGS
-${CXX} $ARGS
diff --git a/deps/openssl/fips/fipsld b/deps/openssl/fips/fipsld
deleted file mode 100755
index b261376757..0000000000
--- a/deps/openssl/fips/fipsld
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-
-# NOTE: Just a wrapper around normal fipsld
-FIPSLD=$1
-shift
-
-DIR=`dirname $0`
-FIPSLD_CC=$DIR/fipscc $FIPSLD $@