File akira_3298d203c2acb68c474e5fdad8379181890b4403d6491c523c13730129be3f75.elf
Function:
Loading..
001225e6
001225e6_<rand_chacha::chacha::ChaCha12Core as rand_core::block::BlockRngCore>::generate:
001225e6push rbp
001225e7push r15
001225e9push r14
001225ebpush r13
001225edpush r12
001225efpush rbx
001225f0sub rsp, 472
001225f7mov r13, rsi
001225famov r14, rdi
001225fdpush 15
001225ffpop rdi
00122600call std_detect::detect::cache::test
00122605test al, al
00122607je 0x122625
00122609mov rdi, r14
0012260cmov rsi, r13
0012260fadd rsp, 472
00122616pop rbx
00122617pop r12
00122619pop r13
0012261bpop r14
0012261dpop r15
0012261fpop rbp
00122620jmp 0x123044
00122625
00122625loc_122625:
00122625call std_detect::detect::arch::x86::__is_feature_detected::avx
0012262atest al, al
0012262cje 0x12264a
0012262emov rdi, r14
00122631mov rsi, r13
00122634add rsp, 472
0012263bpop rbx
0012263cpop r12
0012263epop r13
00122640pop r14
00122642pop r15
00122644pop rbp
00122645jmp 0x123551
0012264a
0012264aloc_12264a:
0012264apush 10
0012264cpop rdi
0012264dcall std_detect::detect::cache::test
00122652test al, al
00122654je 0x122672
00122656mov rdi, r14
00122659mov rsi, r13
0012265cadd rsp, 472
00122663pop rbx
00122664pop r12
00122666pop r13
00122668pop r14
0012266apop r15
0012266cpop rbp
0012266djmp 0x123cc9
00122672
00122672loc_122672:
00122672push 9
00122674pop rdi
00122675call std_detect::detect::cache::test
0012267atest al, al
0012267cje 0x12269a
0012267emov rdi, r14
00122681mov rsi, r13
00122684add rsp, 472
0012268bpop rbx
0012268cpop r12
0012268epop r13
00122690pop r14
00122692pop r15
00122694pop rbp
00122695jmp 0x124530
0012269a
0012269aloc_12269a:
0012269amov rax, [r14+32]
0012269emovdqa x3, [r14]
001226a3movdqa x9, [r14+16]
001226a9movaps x12, [r14+32]
001226aelea rcx, [rax+1]
001226b2movd x13, ecx
001226b7shr rcx, 32
001226bbmovd x0, ecx
001226bfpslldq x0, 8
001226c4shufps x0, x12, -24
001226c9por x13, x0
001226celea rcx, [rax+2]
001226d2movd x14, ecx
001226d7shr rcx, 32
001226dbmovd x0, ecx
001226dfpslldq x0, 8
001226e4shufps x0, x12, -24
001226e9por x14, x0
001226eeadd rax, 3
001226f2movd x15, eax
001226f7shr rax, 32
001226fbmovd x0, eax
001226ffpslldq x0, 8
00122704shufps x0, x12, -24
00122709por x15, x0
0012270emovdqa x2, [rip-0xe9be6]
00122716push 6
00122718pop rax
00122719movdqa x1, x9
0012271emovdqa x5, x3
00122722movdqa x6, x3
00122726movdqa x10, x3
0012272bmovdqa [rsp+128], x3
00122734movdqa x0, x3
00122738movdqa x11, x9
0012273dmovdqa x8, x9
00122742movdqa [rsp+112], x9
00122749movdqa [rsp+48], x2
0012274fmovdqa [rsp+16], x2
00122755movdqa [rsp+64], x2
0012275bmovdqa [rsp], x2
00122760
00122760loc_122760:
00122760sub eax, 1
00122763jb 0x122c15
00122769movdqa x7, [rsp]
0012276epaddd x7, x0
00122772movdqa x4, [rsp+16]
00122778paddd x4, x10
0012277dmovdqa x3, [rsp+48]
00122783paddd x3, x6
00122787movdqa x2, [rsp+64]
0012278dpaddd x2, x5
00122791xorps x12, x7
00122795pxor x13, x4
0012279apxor x14, x3
0012279fpxor x15, x2
001227a4pshuflw x12, x12, -79
001227aapshufhw x12, x12, -79
001227b0pshuflw x13, x13, -79
001227b6pshufhw x13, x13, -79
001227bcpshuflw x14, x14, -79
001227c2pshufhw x14, x14, -79
001227c8pshuflw x15, x15, -79
001227cepshufhw x15, x15, -79
001227d4paddd x1, x12
001227d9paddd x11, x13
001227depaddd x8, x14
001227e3paddd x9, x15
001227e8movdqa [rsp], x9
001227eepxor x0, x1
001227f2pxor x10, x11
001227f7pxor x6, x8
001227fcpxor x5, x9
00122801movdqa x9, x8
00122806movdqa x8, x11
0012280bmovdqa x11, x0
00122810psrld x11, 20
00122816pslld x0, 12
0012281bpor x0, x11
00122820movdqa x11, x10
00122825psrld x11, 20
0012282bpslld x10, 12
00122831por x10, x11
00122836movdqa x11, x6
0012283bpsrld x11, 20
00122841pslld x6, 12
00122846por x6, x11
0012284bmovdqa x11, x5
00122850psrld x11, 20
00122856pslld x5, 12
0012285bpor x5, x11
00122860paddd x7, x0
00122864paddd x4, x10
00122869paddd x3, x6
0012286dpaddd x2, x5
00122871pxor x12, x7
00122876movdqa x11, x12
0012287bpsrld x11, 24
00122881pslld x12, 8
00122887por x12, x11
0012288cpxor x13, x4
00122891movdqa x11, x13
00122896psrld x11, 24
0012289cpslld x13, 8
001228a2por x13, x11
001228a7pxor x14, x3
001228acmovdqa x11, x14
001228b1psrld x11, 24
001228b7pslld x14, 8
001228bdpor x14, x11
001228c2pxor x15, x2
001228c7movdqa x11, x15
001228ccpsrld x11, 24
001228d2pslld x15, 8
001228d8por x15, x11
001228ddpaddd x1, x12
001228e2paddd x8, x13
001228e7paddd x9, x14
001228ecmovdqa x11, [rsp]
001228f2paddd x11, x15
001228f7movdqa [rsp], x11
001228fdpxor x0, x1
00122901pxor x10, x8
00122906pxor x6, x9
0012290bpxor x5, x11
00122910movdqa x11, x0
00122915psrld x11, 25
0012291bpslld x0, 7
00122920por x0, x11
00122925movdqa x11, x10
0012292apsrld x11, 25
00122930pslld x10, 7
00122936por x10, x11
0012293bmovdqa x11, x6
00122940psrld x11, 25
00122946pslld x6, 7
0012294bpor x6, x11
00122950movdqa x11, x5
00122955psrld x11, 25
0012295bpslld x5, 7
00122960por x5, x11
00122965pshufd x11, x0, 57
0012296bpshufd x10, x10, 57
00122971pshufd x6, x6, 57
00122976pshufd x5, x5, 57
0012297bpshufd x0, x1, 78
00122980movdqa [rsp+16], x0
00122986pshufd x0, x8, 78
0012298cmovdqa [rsp+32], x0
00122992pshufd x8, x9, 78
00122998pshufd x9, [rsp], 78
0012299fpshufd x0, x12, -109
001229a5pshufd x13, x13, -109
001229abpshufd x14, x14, -109
001229b1pshufd x15, x15, -109
001229b7paddd x7, x11
001229bcpaddd x4, x10
001229c1paddd x3, x6
001229c5paddd x2, x5
001229c9pshuflw x12, x7, -79
001229cfpshufhw x1, x12, -79
001229d5pshuflw x0, x0, -79
001229dapshufhw x12, x0, -79
001229e0pxor x12, x1
001229e5pshuflw x0, x4, -79
001229eapshufhw x0, x0, -79
001229efpshuflw x1, x13, -79
001229f5pshufhw x13, x1, -79
001229fbpxor x13, x0
00122a00pshuflw x0, x3, -79
00122a05pshufhw x0, x0, -79
00122a0apshuflw x1, x14, -79
00122a10pshufhw x14, x1, -79
00122a16pxor x14, x0
00122a1bpshuflw x0, x2, -79
00122a20pshufhw x0, x0, -79
00122a25pshuflw x1, x15, -79
00122a2bpshufhw x15, x1, -79
00122a31pxor x15, x0
00122a36movdqa x1, [rsp+16]
00122a3cpaddd x1, x12
00122a41movdqa x0, [rsp+32]
00122a47paddd x0, x13
00122a4cmovdqa [rsp+32], x0
00122a52paddd x8, x14
00122a57paddd x9, x15
00122a5cpxor x11, x1
00122a61pxor x10, x0
00122a66pxor x6, x8
00122a6bpxor x5, x9
00122a70movdqa x0, x11
00122a75psrld x0, 20
00122a7apslld x11, 12
00122a80por x11, x0
00122a85movdqa x0, x10
00122a8apsrld x0, 20
00122a8fpslld x10, 12
00122a95por x10, x0
00122a9amovdqa x0, x6
00122a9epsrld x0, 20
00122aa3pslld x6, 12
00122aa8por x6, x0
00122aacmovdqa x0, x5
00122ab0psrld x0, 20
00122ab5pslld x5, 12
00122abapor x5, x0
00122abepaddd x7, x11
00122ac3paddd x4, x10
00122ac8paddd x3, x6
00122accpaddd x2, x5
00122ad0movdqa [rsp], x7
00122ad5pxor x12, x7
00122adamovdqa x0, x12
00122adfpsrld x0, 24
00122ae4pslld x12, 8
00122aeapor x12, x0
00122aefmovdqa [rsp+16], x4
00122af5pxor x13, x4
00122afamovdqa x0, x13
00122affpsrld x0, 24
00122b04pslld x13, 8
00122b0apor x13, x0
00122b0fmovdqa [rsp+48], x3
00122b15pxor x14, x3
00122b1amovdqa x0, x14
00122b1fpsrld x0, 24
00122b24pslld x14, 8
00122b2apor x14, x0
00122b2fmovdqa [rsp+64], x2
00122b35pxor x15, x2
00122b3amovdqa x0, x15
00122b3fpsrld x0, 24
00122b44pslld x15, 8
00122b4apor x15, x0
00122b4fpaddd x1, x12
00122b54movdqa x2, [rsp+32]
00122b5apaddd x2, x13
00122b5fpaddd x8, x14
00122b64paddd x9, x15
00122b69pxor x11, x1
00122b6epxor x10, x2
00122b73pxor x6, x8
00122b78pxor x5, x9
00122b7dmovdqa x0, x11
00122b82psrld x0, 25
00122b87pslld x11, 7
00122b8dpor x11, x0
00122b92movdqa x0, x10
00122b97psrld x0, 25
00122b9cpslld x10, 7
00122ba2por x10, x0
00122ba7movdqa x0, x6
00122babpsrld x0, 25
00122bb0pslld x6, 7
00122bb5por x6, x0
00122bb9movdqa x0, x5
00122bbdpsrld x0, 25
00122bc2pslld x5, 7
00122bc7por x5, x0
00122bcbpshufd x0, x11, -109
00122bd1pshufd x10, x10, -109
00122bd7pshufd x6, x6, -109
00122bdcpshufd x5, x5, -109
00122be1pshufd x1, x1, 78
00122be6pshufd x11, x2, 78
00122becpshufd x8, x8, 78
00122bf2pshufd x9, x9, 78
00122bf8pshufd x12, x12, 57
00122bfepshufd x13, x13, 57
00122c04pshufd x14, x14, 57
00122c0apshufd x15, x15, 57
00122c10jmp 0x122760
00122c15
00122c15loc_122c15:
00122c15mov rax, [r14+32]
00122c19lea rcx, [rax+1]
00122c1dmov rdx, rcx
00122c20shr rdx, 32
00122c24movd x2, edx
00122c28pslldq x2, 8
00122c2dmovaps x3, [r14+32]
00122c32shufps x2, x3, -24
00122c36movd x4, ecx
00122c3apor x4, x2
00122c3elea rcx, [rax+2]
00122c42mov rdx, rcx
00122c45shr rdx, 32
00122c49movd x7, edx
00122c4dpslldq x7, 8
00122c52shufps x7, x3, -24
00122c56movd x2, ecx
00122c5apor x2, x7
00122c5emovdqa [rsp+32], x2
00122c64lea rcx, [rax+3]
00122c68mov rdx, rcx
00122c6bshr rdx, 32
00122c6fmovd x7, edx
00122c73pslldq x7, 8
00122c78shufps x7, x3, -24
00122c7cmovd x2, ecx
00122c80por x2, x7
00122c84movdqa [rsp+96], x2
00122c8aadd rax, 4
00122c8emov rcx, rax
00122c91shr rcx, 32
00122c95movd x7, ecx
00122c99pslldq x7, 8
00122c9eshufps x7, x3, -24
00122ca2movd x2, eax
00122ca6por x2, x7
00122caamovdqa [rsp+80], x2
00122cb0movaps x7, [rsp]
00122cb4movaps [rsp+144], x7
00122cbcmovaps x2, [rsp+16]
00122cc1movaps [rsp+160], x2
00122cc9movaps x2, [rsp+48]
00122ccemovaps [rsp+176], x2
00122cd6movaps x2, [rsp+64]
00122cdbmovaps [rsp+192], x2
00122ce3movdqa [rsp+208], x0
00122cecmovdqa [rsp+224], x10
00122cf6movdqa [rsp+240], x6
00122cffmovdqa [rsp+256], x5
00122d08movdqa [rsp+272], x1
00122d11movdqa [rsp+288], x11
00122d1bmovdqa [rsp+304], x8
00122d25movdqa [rsp+320], x9
00122d2fmovaps [rsp+336], x12
00122d38movdqa [rsp+352], x13
00122d42movdqa [rsp+368], x14
00122d4cmovdqa [rsp+384], x15
00122d56movaps [rsp+400], x3
00122d5emovdqa [rsp+416], x4
00122d67movaps x0, [rsp+32]
00122d6cmovaps [rsp+432], x0
00122d74movaps x0, [rsp+96]
00122d79movaps [rsp+448], x0
00122d81movaps x0, [rsp+80]
00122d86movaps [r14+32], x0
00122d8bmov r12l, 256
00122d91xor r15l, r15l
00122d94
00122d94loc_122d94:
00122d94cmp r15, 64
00122d98je 0x122ef5
00122d9emovdqa x0, [rsp+r15+144]
00122da8paddd x0, [rip-0xea280]
00122db0movdqa [rsp+48], x0
00122db6movdqa x0, [rsp+r15+400]
00122dc0movdqa x1, [rsp+r15+208]
00122dcapaddd x1, [rsp+128]
00122dd3movdqa [rsp+16], x1
00122dd9movdqa x1, [rsp+r15+272]
00122de3paddd x1, [rsp+112]
00122de9movdqa [rsp+32], x1
00122defpaddd x0, [rsp+r15+336]
00122df9movdqa [rsp], x0
00122dfexor ebx, ebx
00122e00mov r14, r12
00122e03sub r14, 16
00122e07mov rbp, r13
00122e0amov eax, 0
00122e0fcmovb rbp, rax
00122e13cmovb r14, r12
00122e17setae bl
00122e1amov rdi, rbp
00122e1dlea rsi, [rip+0xc9eec]
00122e24call core::option::Option<T>::unwrap
00122e29shl rbx, 4
00122e2dadd rbx, r13
00122e30movaps x0, [rsp+48]
00122e35movups [rbp], x0
00122e39xor r13l, r13l
00122e3cmov r12, r14
00122e3fsub r12, 16
00122e43mov rbp, rbx
00122e46mov eax, 0
00122e4bcmovb rbp, rax
00122e4fcmovb r12, r14
00122e53setae r13b
00122e57mov rdi, rbp
00122e5alea rsi, [rip+0xc9ec7]
00122e61call core::option::Option<T>::unwrap
00122e66shl r13, 4
00122e6aadd r13, rbx
00122e6dmovaps x0, [rsp+16]
00122e72movups [rbp], x0
00122e76xor ebp, ebp
00122e78mov r14, r12
00122e7bsub r14, 16
00122e7fmov rbx, r13
00122e82mov eax, 0
00122e87cmovb rbx, rax
00122e8bcmovb r14, r12
00122e8fsetae bpl
00122e93mov rdi, rbx
00122e96lea rsi, [rip+0xc9ea3]
00122e9dcall core::option::Option<T>::unwrap
00122ea2shl rbp, 4
00122ea6add rbp, r13
00122ea9movaps x0, [rsp+32]
00122eaemovups [rbx], x0
00122eb1xor r13l, r13l
00122eb4mov r12, r14
00122eb7sub r12, 16
00122ebbmov rbx, rbp
00122ebemov eax, 0
00122ec3cmovb rbx, rax
00122ec7cmovb r12, r14
00122ecbsetae r13b
00122ecfmov rdi, rbx
00122ed2lea rsi, [rip+0xc9e7f]
00122ed9call core::option::Option<T>::unwrap
00122edeshl r13, 4
00122ee2add r13, rbp
00122ee5movaps x0, [rsp]
00122ee9movups [rbx], x0
00122eecadd r15, 16
00122ef0jmp 0x122d94
00122ef5
00122ef5loc_122ef5:
00122ef5add rsp, 472
00122efcpop rbx
00122efdpop r12
00122effpop r13
00122f01pop r14
00122f03pop r15
00122f05pop rbp
00122f06ret
001225e6
001225e6_<rand_chacha::chacha::ChaCha12Core as rand_core::block::BlockRngCore>::generate:
001225e6push rbp
001225e7push r15
001225e9push r14
001225ebpush r13
001225edpush r12
001225efpush rbx
001225f0sub rsp, 472
001225f7mov r13, rsi
001225famov r14, rdi
001225fdpush 15
001225ffpop rdi
00122600call std_detect::detect::cache::test
00122605test al, al
00122607je 0x122625
00122609mov rdi, r14
0012260cmov rsi, r13
0012260fadd rsp, 472
00122616pop rbx
00122617pop r12
00122619pop r13
0012261bpop r14
0012261dpop r15
0012261fpop rbp
00122620jmp 0x123044
00122625
00122625loc_122625:
00122625call std_detect::detect::arch::x86::__is_feature_detected::avx
0012262atest al, al
0012262cje 0x12264a
0012262emov rdi, r14
00122631mov rsi, r13
00122634add rsp, 472
0012263bpop rbx
0012263cpop r12
0012263epop r13
00122640pop r14
00122642pop r15
00122644pop rbp
00122645jmp 0x123551
0012264a
0012264aloc_12264a:
0012264apush 10
0012264cpop rdi
0012264dcall std_detect::detect::cache::test
00122652test al, al
00122654je 0x122672
00122656mov rdi, r14
00122659mov rsi, r13
0012265cadd rsp, 472
00122663pop rbx
00122664pop r12
00122666pop r13
00122668pop r14
0012266apop r15
0012266cpop rbp
0012266djmp 0x123cc9
00122672
00122672loc_122672:
00122672push 9
00122674pop rdi
00122675call std_detect::detect::cache::test
0012267atest al, al
0012267cje 0x12269a
0012267emov rdi, r14
00122681mov rsi, r13
00122684add rsp, 472
0012268bpop rbx
0012268cpop r12
0012268epop r13
00122690pop r14
00122692pop r15
00122694pop rbp
00122695jmp 0x124530
0012269a
0012269aloc_12269a:
0012269amov rax, [r14+32]
0012269emovdqa x3, [r14]
001226a3movdqa x9, [r14+16]
001226a9movaps x12, [r14+32]
001226aelea rcx, [rax+1]
001226b2movd x13, ecx
001226b7shr rcx, 32
001226bbmovd x0, ecx
001226bfpslldq x0, 8
001226c4shufps x0, x12, -24
001226c9por x13, x0
001226celea rcx, [rax+2]
001226d2movd x14, ecx
001226d7shr rcx, 32
001226dbmovd x0, ecx
001226dfpslldq x0, 8
001226e4shufps x0, x12, -24
001226e9por x14, x0
001226eeadd rax, 3
001226f2movd x15, eax
001226f7shr rax, 32
001226fbmovd x0, eax
001226ffpslldq x0, 8
00122704shufps x0, x12, -24
00122709por x15, x0
0012270emovdqa x2, [rip-0xe9be6]
00122716push 6
00122718pop rax
00122719movdqa x1, x9
0012271emovdqa x5, x3
00122722movdqa x6, x3
00122726movdqa x10, x3
0012272bmovdqa [rsp+128], x3
00122734movdqa x0, x3
00122738movdqa x11, x9
0012273dmovdqa x8, x9
00122742movdqa [rsp+112], x9
00122749movdqa [rsp+48], x2
0012274fmovdqa [rsp+16], x2
00122755movdqa [rsp+64], x2
0012275bmovdqa [rsp], x2
00122760
00122760loc_122760:
00122760sub eax, 1
00122763jb 0x122c15
00122769movdqa x7, [rsp]
0012276epaddd x7, x0
00122772movdqa x4, [rsp+16]
00122778paddd x4, x10
0012277dmovdqa x3, [rsp+48]
00122783paddd x3, x6
00122787movdqa x2, [rsp+64]
0012278dpaddd x2, x5
00122791xorps x12, x7
00122795pxor x13, x4
0012279apxor x14, x3
0012279fpxor x15, x2
001227a4pshuflw x12, x12, -79
001227aapshufhw x12, x12, -79
001227b0pshuflw x13, x13, -79
001227b6pshufhw x13, x13, -79
001227bcpshuflw x14, x14, -79
001227c2pshufhw x14, x14, -79
001227c8pshuflw x15, x15, -79
001227cepshufhw x15, x15, -79
001227d4paddd x1, x12
001227d9paddd x11, x13
001227depaddd x8, x14
001227e3paddd x9, x15
001227e8movdqa [rsp], x9
001227eepxor x0, x1
001227f2pxor x10, x11
001227f7pxor x6, x8
001227fcpxor x5, x9
00122801movdqa x9, x8
00122806movdqa x8, x11
0012280bmovdqa x11, x0
00122810psrld x11, 20
00122816pslld x0, 12
0012281bpor x0, x11
00122820movdqa x11, x10
00122825psrld x11, 20
0012282bpslld x10, 12
00122831por x10, x11
00122836movdqa x11, x6
0012283bpsrld x11, 20
00122841pslld x6, 12
00122846por x6, x11
0012284bmovdqa x11, x5
00122850psrld x11, 20
00122856pslld x5, 12
0012285bpor x5, x11
00122860paddd x7, x0
00122864paddd x4, x10
00122869paddd x3, x6
0012286dpaddd x2, x5
00122871pxor x12, x7
00122876movdqa x11, x12
0012287bpsrld x11, 24
00122881pslld x12, 8
00122887por x12, x11
0012288cpxor x13, x4
00122891movdqa x11, x13
00122896psrld x11, 24
0012289cpslld x13, 8
001228a2por x13, x11
001228a7pxor x14, x3
001228acmovdqa x11, x14
001228b1psrld x11, 24
001228b7pslld x14, 8
001228bdpor x14, x11
001228c2pxor x15, x2
001228c7movdqa x11, x15
001228ccpsrld x11, 24
001228d2pslld x15, 8
001228d8por x15, x11
001228ddpaddd x1, x12
001228e2paddd x8, x13
001228e7paddd x9, x14
001228ecmovdqa x11, [rsp]
001228f2paddd x11, x15
001228f7movdqa [rsp], x11
001228fdpxor x0, x1
00122901pxor x10, x8
00122906pxor x6, x9
0012290bpxor x5, x11
00122910movdqa x11, x0
00122915psrld x11, 25
0012291bpslld x0, 7
00122920por x0, x11
00122925movdqa x11, x10
0012292apsrld x11, 25
00122930pslld x10, 7
00122936por x10, x11
0012293bmovdqa x11, x6
00122940psrld x11, 25
00122946pslld x6, 7
0012294bpor x6, x11
00122950movdqa x11, x5
00122955psrld x11, 25
0012295bpslld x5, 7
00122960por x5, x11
00122965pshufd x11, x0, 57
0012296bpshufd x10, x10, 57
00122971pshufd x6, x6, 57
00122976pshufd x5, x5, 57
0012297bpshufd x0, x1, 78
00122980movdqa [rsp+16], x0
00122986pshufd x0, x8, 78
0012298cmovdqa [rsp+32], x0
00122992pshufd x8, x9, 78
00122998pshufd x9, [rsp], 78
0012299fpshufd x0, x12, -109
001229a5pshufd x13, x13, -109
001229abpshufd x14, x14, -109
001229b1pshufd x15, x15, -109
001229b7paddd x7, x11
001229bcpaddd x4, x10
001229c1paddd x3, x6
001229c5paddd x2, x5
001229c9pshuflw x12, x7, -79
001229cfpshufhw x1, x12, -79
001229d5pshuflw x0, x0, -79
001229dapshufhw x12, x0, -79
001229e0pxor x12, x1
001229e5pshuflw x0, x4, -79
001229eapshufhw x0, x0, -79
001229efpshuflw x1, x13, -79
001229f5pshufhw x13, x1, -79
001229fbpxor x13, x0
00122a00pshuflw x0, x3, -79
00122a05pshufhw x0, x0, -79
00122a0apshuflw x1, x14, -79
00122a10pshufhw x14, x1, -79
00122a16pxor x14, x0
00122a1bpshuflw x0, x2, -79
00122a20pshufhw x0, x0, -79
00122a25pshuflw x1, x15, -79
00122a2bpshufhw x15, x1, -79
00122a31pxor x15, x0
00122a36movdqa x1, [rsp+16]
00122a3cpaddd x1, x12
00122a41movdqa x0, [rsp+32]
00122a47paddd x0, x13
00122a4cmovdqa [rsp+32], x0
00122a52paddd x8, x14
00122a57paddd x9, x15
00122a5cpxor x11, x1
00122a61pxor x10, x0
00122a66pxor x6, x8
00122a6bpxor x5, x9
00122a70movdqa x0, x11
00122a75psrld x0, 20
00122a7apslld x11, 12
00122a80por x11, x0
00122a85movdqa x0, x10
00122a8apsrld x0, 20
00122a8fpslld x10, 12
00122a95por x10, x0
00122a9amovdqa x0, x6
00122a9epsrld x0, 20
00122aa3pslld x6, 12
00122aa8por x6, x0
00122aacmovdqa x0, x5
00122ab0psrld x0, 20
00122ab5pslld x5, 12
00122abapor x5, x0
00122abepaddd x7, x11
00122ac3paddd x4, x10
00122ac8paddd x3, x6
00122accpaddd x2, x5
00122ad0movdqa [rsp], x7
00122ad5pxor x12, x7
00122adamovdqa x0, x12
00122adfpsrld x0, 24
00122ae4pslld x12, 8
00122aeapor x12, x0
00122aefmovdqa [rsp+16], x4
00122af5pxor x13, x4
00122afamovdqa x0, x13
00122affpsrld x0, 24
00122b04pslld x13, 8
00122b0apor x13, x0
00122b0fmovdqa [rsp+48], x3
00122b15pxor x14, x3
00122b1amovdqa x0, x14
00122b1fpsrld x0, 24
00122b24pslld x14, 8
00122b2apor x14, x0
00122b2fmovdqa [rsp+64], x2
00122b35pxor x15, x2
00122b3amovdqa x0, x15
00122b3fpsrld x0, 24
00122b44pslld x15, 8
00122b4apor x15, x0
00122b4fpaddd x1, x12
00122b54movdqa x2, [rsp+32]
00122b5apaddd x2, x13
00122b5fpaddd x8, x14
00122b64paddd x9, x15
00122b69pxor x11, x1
00122b6epxor x10, x2
00122b73pxor x6, x8
00122b78pxor x5, x9
00122b7dmovdqa x0, x11
00122b82psrld x0, 25
00122b87pslld x11, 7
00122b8dpor x11, x0
00122b92movdqa x0, x10
00122b97psrld x0, 25
00122b9cpslld x10, 7
00122ba2por x10, x0
00122ba7movdqa x0, x6
00122babpsrld x0, 25
00122bb0pslld x6, 7
00122bb5por x6, x0
00122bb9movdqa x0, x5
00122bbdpsrld x0, 25
00122bc2pslld x5, 7
00122bc7por x5, x0
00122bcbpshufd x0, x11, -109
00122bd1pshufd x10, x10, -109
00122bd7pshufd x6, x6, -109
00122bdcpshufd x5, x5, -109
00122be1pshufd x1, x1, 78
00122be6pshufd x11, x2, 78
00122becpshufd x8, x8, 78
00122bf2pshufd x9, x9, 78
00122bf8pshufd x12, x12, 57
00122bfepshufd x13, x13, 57
00122c04pshufd x14, x14, 57
00122c0apshufd x15, x15, 57
00122c10jmp 0x122760
00122c15
00122c15loc_122c15:
00122c15mov rax, [r14+32]
00122c19lea rcx, [rax+1]
00122c1dmov rdx, rcx
00122c20shr rdx, 32
00122c24movd x2, edx
00122c28pslldq x2, 8
00122c2dmovaps x3, [r14+32]
00122c32shufps x2, x3, -24
00122c36movd x4, ecx
00122c3apor x4, x2
00122c3elea rcx, [rax+2]
00122c42mov rdx, rcx
00122c45shr rdx, 32
00122c49movd x7, edx
00122c4dpslldq x7, 8
00122c52shufps x7, x3, -24
00122c56movd x2, ecx
00122c5apor x2, x7
00122c5emovdqa [rsp+32], x2
00122c64lea rcx, [rax+3]
00122c68mov rdx, rcx
00122c6bshr rdx, 32
00122c6fmovd x7, edx
00122c73pslldq x7, 8
00122c78shufps x7, x3, -24
00122c7cmovd x2, ecx
00122c80por x2, x7
00122c84movdqa [rsp+96], x2
00122c8aadd rax, 4
00122c8emov rcx, rax
00122c91shr rcx, 32
00122c95movd x7, ecx
00122c99pslldq x7, 8
00122c9eshufps x7, x3, -24
00122ca2movd x2, eax
00122ca6por x2, x7
00122caamovdqa [rsp+80], x2
00122cb0movaps x7, [rsp]
00122cb4movaps [rsp+144], x7
00122cbcmovaps x2, [rsp+16]
00122cc1movaps [rsp+160], x2
00122cc9movaps x2, [rsp+48]
00122ccemovaps [rsp+176], x2
00122cd6movaps x2, [rsp+64]
00122cdbmovaps [rsp+192], x2
00122ce3movdqa [rsp+208], x0
00122cecmovdqa [rsp+224], x10
00122cf6movdqa [rsp+240], x6
00122cffmovdqa [rsp+256], x5
00122d08movdqa [rsp+272], x1
00122d11movdqa [rsp+288], x11
00122d1bmovdqa [rsp+304], x8
00122d25movdqa [rsp+320], x9
00122d2fmovaps [rsp+336], x12
00122d38movdqa [rsp+352], x13
00122d42movdqa [rsp+368], x14
00122d4cmovdqa [rsp+384], x15
00122d56movaps [rsp+400], x3
00122d5emovdqa [rsp+416], x4
00122d67movaps x0, [rsp+32]
00122d6cmovaps [rsp+432], x0
00122d74movaps x0, [rsp+96]
00122d79movaps [rsp+448], x0
00122d81movaps x0, [rsp+80]
00122d86movaps [r14+32], x0
00122d8bmov r12l, 256
00122d91xor r15l, r15l
00122d94
00122d94loc_122d94:
00122d94cmp r15, 64
00122d98je 0x122ef5
00122d9emovdqa x0, [rsp+r15+144]
00122da8paddd x0, [rip-0xea280]
00122db0movdqa [rsp+48], x0
00122db6movdqa x0, [rsp+r15+400]
00122dc0movdqa x1, [rsp+r15+208]
00122dcapaddd x1, [rsp+128]
00122dd3movdqa [rsp+16], x1
00122dd9movdqa x1, [rsp+r15+272]
00122de3paddd x1, [rsp+112]
00122de9movdqa [rsp+32], x1
00122defpaddd x0, [rsp+r15+336]
00122df9movdqa [rsp], x0
00122dfexor ebx, ebx
00122e00mov r14, r12
00122e03sub r14, 16
00122e07mov rbp, r13
00122e0amov eax, 0
00122e0fcmovb rbp, rax
00122e13cmovb r14, r12
00122e17setae bl
00122e1amov rdi, rbp
00122e1dlea rsi, [rip+0xc9eec]
00122e24call core::option::Option<T>::unwrap
00122e29shl rbx, 4
00122e2dadd rbx, r13
00122e30movaps x0, [rsp+48]
00122e35movups [rbp], x0
00122e39xor r13l, r13l
00122e3cmov r12, r14
00122e3fsub r12, 16
00122e43mov rbp, rbx
00122e46mov eax, 0
00122e4bcmovb rbp, rax
00122e4fcmovb r12, r14
00122e53setae r13b
00122e57mov rdi, rbp
00122e5alea rsi, [rip+0xc9ec7]
00122e61call core::option::Option<T>::unwrap
00122e66shl r13, 4
00122e6aadd r13, rbx
00122e6dmovaps x0, [rsp+16]
00122e72movups [rbp], x0
00122e76xor ebp, ebp
00122e78mov r14, r12
00122e7bsub r14, 16
00122e7fmov rbx, r13
00122e82mov eax, 0
00122e87cmovb rbx, rax
00122e8bcmovb r14, r12
00122e8fsetae bpl
00122e93mov rdi, rbx
00122e96lea rsi, [rip+0xc9ea3]
00122e9dcall core::option::Option<T>::unwrap
00122ea2shl rbp, 4
00122ea6add rbp, r13
00122ea9movaps x0, [rsp+32]
00122eaemovups [rbx], x0
00122eb1xor r13l, r13l
00122eb4mov r12, r14
00122eb7sub r12, 16
00122ebbmov rbx, rbp
00122ebemov eax, 0
00122ec3cmovb rbx, rax
00122ec7cmovb r12, r14
00122ecbsetae r13b
00122ecfmov rdi, rbx
00122ed2lea rsi, [rip+0xc9e7f]
00122ed9call core::option::Option<T>::unwrap
00122edeshl r13, 4
00122ee2add r13, rbp
00122ee5movaps x0, [rsp]
00122ee9movups [rbx], x0
00122eecadd r15, 16
00122ef0jmp 0x122d94
00122ef5
00122ef5loc_122ef5:
00122ef5add rsp, 472
00122efcpop rbx
00122efdpop r12
00122effpop r13
00122f01pop r14
00122f03pop r15
00122f05pop rbp
00122f06ret
001225e6
00122f07
00122f07rand::rngs::adapter::reseeding::ReseedingCore<R,Rsdr>::reseed_and_generate:
00122f07push r15
00122f09push r14
00122f0bpush r12
00122f0dpush rbx
00122f0esub rsp, 136
00122f15mov r15, rdx
00122f18mov rbx, rsi
00122f1bmov r14, rdi
00122f1exorps x0, x0
00122f21mov rdi, rsp
00122f24movaps [rdi+16], x0
00122f28movaps [rdi], x0
00122f2bcall _<rand_core::os::OsRng as rand_core::RngCore>::try_fill_bytes
00122f30test rax, rax
00122f33je 0x122f40
00122f35mov rdi, rax
00122f38call [rip+0xeebba]
00122f3ejmp 0x122f81
00122f40
00122f40loc_122f40:
00122f40movaps x0, [rsp]
00122f44movaps x1, [rsp+16]
00122f49lea rsi, [rsp+32]
00122f4emovups [rsi+16], x1
00122f52movups [rsi], x0
00122f55lea r12, [rsp+80]
00122f5amov rdi, r12
00122f5dcall _<rand_chacha::chacha::ChaCha12Core as rand_core::SeedableRng>::from_seed
00122f62movaps x0, [r12]
00122f67movaps x1, [r12+16]
00122f6dmovaps x2, [r12+32]
00122f73movaps [r14+32], x2
00122f78movaps [r14+16], x1
00122f7dmovaps [r14], x0
00122f81
00122f81loc_122f81:
00122f81mov [r14+64], r15
00122f85mov rax, -256
00122f8cadd rax, [r14+48]
00122f90mov [r14+56], rax
00122f94mov rdi, r14
00122f97mov rsi, rbx
00122f9aadd rsp, 136
00122fa1pop rbx
00122fa2pop r12
00122fa4pop r14
00122fa6pop r15
00122fa8jmp 0x1225e6
00122f07
00122f07rand::rngs::adapter::reseeding::ReseedingCore<R,Rsdr>::reseed_and_generate:
00122f07push r15
00122f09push r14
00122f0bpush r12
00122f0dpush rbx
00122f0esub rsp, 136
00122f15mov r15, rdx
00122f18mov rbx, rsi
00122f1bmov r14, rdi
00122f1exorps x0, x0
00122f21mov rdi, rsp
00122f24movaps [rdi+16], x0
00122f28movaps [rdi], x0
00122f2bcall _<rand_core::os::OsRng as rand_core::RngCore>::try_fill_bytes
00122f30test rax, rax
00122f33je 0x122f40
00122f35mov rdi, rax
00122f38call [rip+0xeebba]
00122f3ejmp 0x122f81
00122f40
00122f40loc_122f40:
00122f40movaps x0, [rsp]
00122f44movaps x1, [rsp+16]
00122f49lea rsi, [rsp+32]
00122f4emovups [rsi+16], x1
00122f52movups [rsi], x0
00122f55lea r12, [rsp+80]
00122f5amov rdi, r12
00122f5dcall _<rand_chacha::chacha::ChaCha12Core as rand_core::SeedableRng>::from_seed
00122f62movaps x0, [r12]
00122f67movaps x1, [r12+16]
00122f6dmovaps x2, [r12+32]
00122f73movaps [r14+32], x2
00122f78movaps [r14+16], x1
00122f7dmovaps [r14], x0
00122f81
00122f81loc_122f81:
00122f81mov [r14+64], r15
00122f85mov rax, -256
00122f8cadd rax, [r14+48]
00122f90mov [r14+56], rax
00122f94mov rdi, r14
00122f97mov rsi, rbx
00122f9aadd rsp, 136
00122fa1pop rbx
00122fa2pop r12
00122fa4pop r14
00122fa6pop r15
00122fa8jmp 0x1225e6
00122f07
00122fad
00122fadrand::rngs::thread::thread_rng:
00122fadpush rax
00122faexor edi, edi
00122fb0call rand::rngs::thread::THREAD_RNG_KEY::__getit
00122fb5test rax, rax
00122fb8je 0x122fc4
00122fbamov rax, [rax]
00122fbdinc [rax]
00122fc0je 0x122fe8
00122fc2pop rcx
00122fc3ret
00122fc4
00122fc4loc_122fc4:
00122fc4lea rdi, [rip-0x92f7a]
00122fcblea rcx, [rip+0xc9c96]
00122fd2lea r8, [rip+0xca417]
00122fd9push 70
00122fdbpop rsi
00122fdclea rdx, [rsp+7]
00122fe1call core::result::unwrap_failed
00122fe6ud2
00122fe8
00122fe8loc_122fe8:
00122fe8ud2
00122fea
00122fea 0f 0b ..
00122fad
00122fadrand::rngs::thread::thread_rng:
00122fadpush rax
00122faexor edi, edi
00122fb0call rand::rngs::thread::THREAD_RNG_KEY::__getit
00122fb5test rax, rax
00122fb8je 0x122fc4
00122fbamov rax, [rax]
00122fbdinc [rax]
00122fc0je 0x122fe8
00122fc2pop rcx
00122fc3ret
00122fc4
00122fc4loc_122fc4:
00122fc4lea rdi, [rip-0x92f7a]
00122fcblea rcx, [rip+0xc9c96]
00122fd2lea r8, [rip+0xca417]
00122fd9push 70
00122fdbpop rsi
00122fdclea rdx, [rsp+7]
00122fe1call core::result::unwrap_failed
00122fe6ud2
00122fe8
00122fe8loc_122fe8:
00122fe8ud2
00122fea
00122fea 0f 0b ..
00122fad
00122fec
00122fecrand::rngs::thread::THREAD_RNG_KEY::__getit:
00122feccmp [0xffffffffffffff48], 0
00122ff6je 0x1221be
00122ffcmov rax, [0x0]
00123005lea rax, [rax-184]
0012300cret
00122fec
00122fecrand::rngs::thread::THREAD_RNG_KEY::__getit:
00122feccmp [0xffffffffffffff48], 0
00122ff6je 0x1221be
00122ffcmov rax, [0x0]
00123005lea rax, [rax-184]
0012300cret
00122fec
0012300d
0012300dcore::panicking::assert_failed:
0012300dsub rsp, 24
00123011mov r9, rcx
00123014lea rax, [rsp+8]
00123019mov [rax], rsi
0012301clea rcx, [rsp+16]
00123021mov [rcx], rdx
00123024mov [rsp], r8
00123028lea rdx, [rip+0xc9cc1]
0012302fmov rsi, rax
00123032mov r8, rdx
00123035call core::panicking::assert_failed_inner
0012303aud2
0012300d
0012300dcore::panicking::assert_failed:
0012300dsub rsp, 24
00123011mov r9, rcx
00123014lea rax, [rsp+8]
00123019mov [rax], rsi
0012301clea rcx, [rsp+16]
00123021mov [rcx], rdx
00123024mov [rsp], r8
00123028lea rdx, [rip+0xc9cc1]
0012302fmov rsi, rax
00123032mov r8, rdx
00123035call core::panicking::assert_failed_inner
0012303aud2
0012300d
0012303c
0012303cstd_detect::detect::arch::x86::__is_feature_detected::avx:
0012303cpush 14
0012303epop rdi
0012303fjmp 0xe5181
0012303c
0012303cstd_detect::detect::arch::x86::__is_feature_detected::avx:
0012303cpush 14
0012303epop rdi
0012303fjmp 0xe5181
0012303c
00123044
00123044rand_chacha::guts::refill_wide::impl_avx2:
00123044push rbp
00123045push r15
00123047push r14
00123049push r13
0012304bpush r12
0012304dpush rbx
0012304esub rsp, 680
00123055mov rax, [rdi+32]
00123059vmovdqa x0, [rdi+32]
0012305elea rcx, [rax+1]
00123062vpinsrd x1, x0, ecx, 0
00123068shr rcx, 32
0012306cvpinsrd x1, x1, ecx, 1
00123072lea rcx, [rax+2]
00123076vpinsrd x2, x0, ecx, 0
0012307cshr rcx, 32
00123080vpinsrd x2, x2, ecx, 1
00123086add rax, 3
0012308avpinsrd x3, x0, eax, 0
00123090shr rax, 32
00123094vpinsrd x4, x3, eax, 1
0012309avbroadcasti128 ymm10, [rdi+16]
001230a0vbroadcasti128 ymm6, [rdi]
001230a5mov r12, rsi
001230a8vinserti128 ymm3, ymm0, x1, 1
001230aevinserti128 ymm5, ymm2, x4, 1
001230b4vbroadcasti128 ymm4, [rip-0xea57d]
001230bdpush 6
001230bfpop rax
001230c0vbroadcasti128 ymm1, [rip-0xea579]
001230c9vmovdqa ymm2, [rip-0xe5571]
001230d1vmovdqa ymm7, ymm6
001230d5vmovdqu [rsp+112], ymm6
001230dbvmovdqa ymm9, ymm10
001230e0vmovdqu [rsp+144], ymm10
001230e9vmovdqa ymm8, ymm4
001230ed
001230edloc_1230ed:
001230edsub eax, 1
001230f0jb 0x123274
001230f6vpaddd ymm4, ymm4, ymm7
001230favpaddd ymm8, ymm8, ymm6
001230fevpxor ymm3, ymm3, ymm4
00123102vpxor ymm5, ymm8, ymm5
00123106vpshuflw ymm3, ymm3, 177
0012310bvpshufhw ymm3, ymm3, 177
00123110vpshuflw ymm5, ymm5, 177
00123115vpshufhw ymm5, ymm5, 177
0012311avpaddd ymm9, ymm9, ymm3
0012311evpaddd ymm10, ymm10, ymm5
00123122vpxor ymm7, ymm9, ymm7
00123126vpsrld ymm11, ymm7, 20
0012312bvpslld ymm7, ymm7, 12
00123130vpor ymm7, ymm11, ymm7
00123134vpxor ymm6, ymm10, ymm6
00123138vpsrld ymm11, ymm6, 20
0012313dvpslld ymm6, ymm6, 12
00123142vpor ymm6, ymm11, ymm6
00123146vpaddd ymm4, ymm7, ymm4
0012314avpaddd ymm8, ymm8, ymm6
0012314evpshufb ymm11, ymm4, ymm1
00123153vpshufb ymm3, ymm3, ymm1
00123158vpxor ymm3, ymm11, ymm3
0012315cvpshufb ymm11, ymm8, ymm1
00123161vpshufb ymm5, ymm5, ymm1
00123166vpxor ymm5, ymm11, ymm5
0012316avpaddd ymm9, ymm9, ymm3
0012316evpaddd ymm10, ymm10, ymm5
00123172vpxor ymm7, ymm9, ymm7
00123176vpxor ymm6, ymm10, ymm6
0012317avpsrld ymm11, ymm7, 25
0012317fvpslld ymm7, ymm7, 7
00123184vpor ymm7, ymm11, ymm7
00123188vpsrld ymm11, ymm6, 25
0012318dvpslld ymm6, ymm6, 7
00123192vpor ymm6, ymm11, ymm6
00123196vpshufd ymm7, ymm7, 57
0012319bvpshufd ymm6, ymm6, 57
001231a0vpshufd ymm9, ymm9, 78
001231a6vpshufd ymm10, ymm10, 78
001231acvpaddd ymm4, ymm7, ymm4
001231b0vpaddd ymm8, ymm8, ymm6
001231b4vpshuflw ymm11, ymm4, 177
001231b9vpshufhw ymm11, ymm11, 177
001231bfvpshufb ymm3, ymm3, ymm2
001231c4vpxor ymm3, ymm11, ymm3
001231c8vpshuflw ymm11, ymm8, 177
001231cevpshufhw ymm11, ymm11, 177
001231d4vpshufb ymm5, ymm5, ymm2
001231d9vpxor ymm5, ymm11, ymm5
001231ddvpaddd ymm9, ymm9, ymm3
001231e1vpaddd ymm10, ymm10, ymm5
001231e5vpxor ymm7, ymm9, ymm7
001231e9vpxor ymm6, ymm10, ymm6
001231edvpsrld ymm11, ymm7, 20
001231f2vpslld ymm7, ymm7, 12
001231f7vpor ymm7, ymm11, ymm7
001231fbvpsrld ymm11, ymm6, 20
00123200vpslld ymm6, ymm6, 12
00123205vpor ymm6, ymm11, ymm6
00123209vpaddd ymm4, ymm7, ymm4
0012320dvpaddd ymm8, ymm8, ymm6
00123211vpxor ymm3, ymm3, ymm4
00123215vpshufb ymm3, ymm3, ymm1
0012321avpxor ymm5, ymm8, ymm5
0012321evpshufb ymm5, ymm5, ymm1
00123223vpaddd ymm9, ymm9, ymm3
00123227vpaddd ymm10, ymm10, ymm5
0012322bvpxor ymm7, ymm9, ymm7
0012322fvpxor ymm6, ymm10, ymm6
00123233vpsrld ymm11, ymm7, 25
00123238vpslld ymm7, ymm7, 7
0012323dvpor ymm7, ymm11, ymm7
00123241vpsrld ymm11, ymm6, 25
00123246vpslld ymm6, ymm6, 7
0012324bvpor ymm6, ymm11, ymm6
0012324fvpshufd ymm7, ymm7, 147
00123254vpshufd ymm6, ymm6, 147
00123259vpshufd ymm9, ymm9, 78
0012325fvpshufd ymm10, ymm10, 78
00123265vpshufd ymm3, ymm3, 57
0012326avpshufd ymm5, ymm5, 57
0012326fjmp 0x1230ed
00123274
00123274loc_123274:
00123274vmovq rdx, x0
00123279lea rax, [rdx+1]
0012327dvpinsrd x1, x0, eax, 0
00123283shr rax, 32
00123287vpinsrd x1, x1, eax, 1
0012328dlea rax, [rsp+496]
00123295lea rcx, [rdx+2]
00123299vpinsrd x2, x0, ecx, 0
0012329fshr rcx, 32
001232a3vpinsrd x2, x2, ecx, 1
001232a9vmovdqa [rax-48], x1
001232aelea rcx, [rdx+3]
001232b2vpinsrd x1, x0, ecx, 0
001232b8shr rcx, 32
001232bcvpinsrd x1, x1, ecx, 1
001232c2vmovdqa [rax-32], x2
001232c7vmovdqa [rax-16], x1
001232ccpush 4
001232cepop rcx
001232cfadd rdx, rcx
001232d2vpinsrd x1, x0, edx, 0
001232d8shr rdx, 32
001232dcvpinsrd x1, x1, edx, 1
001232e2lea rdx, [rsp+240]
001232eavmovdqu [rdx-64], ymm4
001232efvmovdqu [rdx-32], ymm8
001232f4lea rsi, [rsp+304]
001232fcvmovdqu [rsi-64], ymm7
00123301vmovdqu [rsi-32], ymm6
00123306lea r8, [rsp+368]
0012330evmovdqu [r8-64], ymm9
00123314vmovdqu [r8-32], ymm10
0012331alea r9, [rsp+176]
00123322lea r10, [rsp+504]
0012332amov [r10], r9
0012332dlea r9, [rsp+432]
00123335vmovdqu [r9-64], ymm3
0012333bvmovdqu [r9-32], ymm5
00123341mov [r10+8], rdx
00123345mov [r10+16], rdx
00123349mov [r10+24], rsi
0012334dand [r10+32], 0
00123352mov [r10+40], rcx
00123356mov [r10+48], rcx
0012335alea rdx, [rsp+304]
00123362mov [r10+56], rdx
00123366mov [r10+64], r8
0012336aand [r10+72], 0
0012336fmov [r10+80], rcx
00123373mov [r10+88], rcx
00123377lea rdx, [rsp+368]
0012337fmov [r10+96], rdx
00123383mov [r10+104], r9
00123387and [r10+112], 0
0012338cmov [r10+120], rcx
00123390mov [r10+128], rcx
00123397lea rdx, [rsp+432]
0012339fmov [r10+136], rdx
001233a6mov [r10+144], rax
001233adand [r10+152], 0
001233b5vmovdqa [rax-64], x0
001233bavmovdqa [rdi+32], x1
001233bfmov [r10+160], rcx
001233c6mov [r10+168], rcx
001233cdmov r14l, 256
001233d3xor r13l, r13l
001233d6
001233d6loc_1233d6:
001233d6lea rdi, [rsp+8]
001233dblea rsi, [rsp+504]
001233e3vzeroupper
001233e6call _<core::iter::adapters::zip::Zip<A,B> as core::iter::traits::iterator::Iterator>::next
001233ebmov rax, [rsp+8]
001233f0test rax, rax
001233f3je 0x12353c
001233f9vmovdqa x0, [rax]
001233fdvpaddd x0, x0, [rip-0xea8c5]
00123405vmovdqa [rsp+48], x0
0012340bmov rax, [rsp+16]
00123410mov rcx, [rsp+24]
00123415mov rdx, [rsp+32]
0012341amov rsi, [rsp+40]
0012341fvmovdqa x0, [rsi]
00123423vmovdqu ymm1, [rsp+112]
00123429vpaddd x1, x1, [rax]
0012342dvmovdqa [rsp+64], x1
00123433vmovdqu ymm1, [rsp+144]
0012343cvpaddd x1, x1, [rcx]
00123440vmovdqa [rsp+80], x1
00123446vpaddd x0, x0, [rdx]
0012344avmovdqa [rsp+96], x0
00123450xor ebx, ebx
00123452mov rbp, r14
00123455sub rbp, 16
00123459mov r15, r12
0012345ccmovb r15, r13
00123460cmovb rbp, r14
00123464setae bl
00123467mov rdi, r15
0012346alea rsi, [rip+0xc989f]
00123471vzeroupper
00123474call core::option::Option<T>::unwrap
00123479shl rbx, 4
0012347dadd rbx, r12
00123480vmovaps x0, [rsp+48]
00123486vmovups [r15], x0
0012348bxor r12l, r12l
0012348emov r14, rbp
00123491sub r14, 16
00123495mov r15, rbx
00123498cmovb r15, r13
0012349ccmovb r14, rbp
001234a0setae r12b
001234a4mov rdi, r15
001234a7lea rsi, [rip+0xc987a]
001234aecall core::option::Option<T>::unwrap
001234b3shl r12, 4
001234b7add r12, rbx
001234bavmovaps x0, [rsp+64]
001234c0vmovups [r15], x0
001234c5xor r15l, r15l
001234c8mov rbp, r14
001234cbsub rbp, 16
001234cfmov rbx, r12
001234d2cmovb rbx, r13
001234d6cmovb rbp, r14
001234dasetae r15b
001234demov rdi, rbx
001234e1lea rsi, [rip+0xc9858]
001234e8call core::option::Option<T>::unwrap
001234edshl r15, 4
001234f1add r15, r12
001234f4vmovaps x0, [rsp+80]
001234favmovups [rbx], x0
001234fexor r12l, r12l
00123501mov r14, rbp
00123504sub r14, 16
00123508mov rbx, r15
0012350bcmovb rbx, r13
0012350fcmovb r14, rbp
00123513setae r12b
00123517mov rdi, rbx
0012351alea rsi, [rip+0xc9837]
00123521call core::option::Option<T>::unwrap
00123526shl r12, 4
0012352aadd r12, r15
0012352dvmovdqa x0, [rsp+96]
00123533vmovdqu [rbx], x0
00123537jmp 0x1233d6
0012353c
0012353cloc_12353c:
0012353cvzeroupper
0012353fadd rsp, 680
00123546pop rbx
00123547pop r12
00123549pop r13
0012354bpop r14
0012354dpop r15
0012354fpop rbp
00123550ret
00123044
00123044rand_chacha::guts::refill_wide::impl_avx2:
00123044push rbp
00123045push r15
00123047push r14
00123049push r13
0012304bpush r12
0012304dpush rbx
0012304esub rsp, 680
00123055mov rax, [rdi+32]
00123059vmovdqa x0, [rdi+32]
0012305elea rcx, [rax+1]
00123062vpinsrd x1, x0, ecx, 0
00123068shr rcx, 32
0012306cvpinsrd x1, x1, ecx, 1
00123072lea rcx, [rax+2]
00123076vpinsrd x2, x0, ecx, 0
0012307cshr rcx, 32
00123080vpinsrd x2, x2, ecx, 1
00123086add rax, 3
0012308avpinsrd x3, x0, eax, 0
00123090shr rax, 32
00123094vpinsrd x4, x3, eax, 1
0012309avbroadcasti128 ymm10, [rdi+16]
001230a0vbroadcasti128 ymm6, [rdi]
001230a5mov r12, rsi
001230a8vinserti128 ymm3, ymm0, x1, 1
001230aevinserti128 ymm5, ymm2, x4, 1
001230b4vbroadcasti128 ymm4, [rip-0xea57d]
001230bdpush 6
001230bfpop rax
001230c0vbroadcasti128 ymm1, [rip-0xea579]
001230c9vmovdqa ymm2, [rip-0xe5571]
001230d1vmovdqa ymm7, ymm6
001230d5vmovdqu [rsp+112], ymm6
001230dbvmovdqa ymm9, ymm10
001230e0vmovdqu [rsp+144], ymm10
001230e9vmovdqa ymm8, ymm4
001230ed
001230edloc_1230ed:
001230edsub eax, 1
001230f0jb 0x123274
001230f6vpaddd ymm4, ymm4, ymm7
001230favpaddd ymm8, ymm8, ymm6
001230fevpxor ymm3, ymm3, ymm4
00123102vpxor ymm5, ymm8, ymm5
00123106vpshuflw ymm3, ymm3, 177
0012310bvpshufhw ymm3, ymm3, 177
00123110vpshuflw ymm5, ymm5, 177
00123115vpshufhw ymm5, ymm5, 177
0012311avpaddd ymm9, ymm9, ymm3
0012311evpaddd ymm10, ymm10, ymm5
00123122vpxor ymm7, ymm9, ymm7
00123126vpsrld ymm11, ymm7, 20
0012312bvpslld ymm7, ymm7, 12
00123130vpor ymm7, ymm11, ymm7
00123134vpxor ymm6, ymm10, ymm6
00123138vpsrld ymm11, ymm6, 20
0012313dvpslld ymm6, ymm6, 12
00123142vpor ymm6, ymm11, ymm6
00123146vpaddd ymm4, ymm7, ymm4
0012314avpaddd ymm8, ymm8, ymm6
0012314evpshufb ymm11, ymm4, ymm1
00123153vpshufb ymm3, ymm3, ymm1
00123158vpxor ymm3, ymm11, ymm3
0012315cvpshufb ymm11, ymm8, ymm1
00123161vpshufb ymm5, ymm5, ymm1
00123166vpxor ymm5, ymm11, ymm5
0012316avpaddd ymm9, ymm9, ymm3
0012316evpaddd ymm10, ymm10, ymm5
00123172vpxor ymm7, ymm9, ymm7
00123176vpxor ymm6, ymm10, ymm6
0012317avpsrld ymm11, ymm7, 25
0012317fvpslld ymm7, ymm7, 7
00123184vpor ymm7, ymm11, ymm7
00123188vpsrld ymm11, ymm6, 25
0012318dvpslld ymm6, ymm6, 7
00123192vpor ymm6, ymm11, ymm6
00123196vpshufd ymm7, ymm7, 57
0012319bvpshufd ymm6, ymm6, 57
001231a0vpshufd ymm9, ymm9, 78
001231a6vpshufd ymm10, ymm10, 78
001231acvpaddd ymm4, ymm7, ymm4
001231b0vpaddd ymm8, ymm8, ymm6
001231b4vpshuflw ymm11, ymm4, 177
001231b9vpshufhw ymm11, ymm11, 177
001231bfvpshufb ymm3, ymm3, ymm2
001231c4vpxor ymm3, ymm11, ymm3
001231c8vpshuflw ymm11, ymm8, 177
001231cevpshufhw ymm11, ymm11, 177
001231d4vpshufb ymm5, ymm5, ymm2
001231d9vpxor ymm5, ymm11, ymm5
001231ddvpaddd ymm9, ymm9, ymm3
001231e1vpaddd ymm10, ymm10, ymm5
001231e5vpxor ymm7, ymm9, ymm7
001231e9vpxor ymm6, ymm10, ymm6
001231edvpsrld ymm11, ymm7, 20
001231f2vpslld ymm7, ymm7, 12
001231f7vpor ymm7, ymm11, ymm7
001231fbvpsrld ymm11, ymm6, 20
00123200vpslld ymm6, ymm6, 12
00123205vpor ymm6, ymm11, ymm6
00123209vpaddd ymm4, ymm7, ymm4
0012320dvpaddd ymm8, ymm8, ymm6
00123211vpxor ymm3, ymm3, ymm4
00123215vpshufb ymm3, ymm3, ymm1
0012321avpxor ymm5, ymm8, ymm5
0012321evpshufb ymm5, ymm5, ymm1
00123223vpaddd ymm9, ymm9, ymm3
00123227vpaddd ymm10, ymm10, ymm5
0012322bvpxor ymm7, ymm9, ymm7
0012322fvpxor ymm6, ymm10, ymm6
00123233vpsrld ymm11, ymm7, 25
00123238vpslld ymm7, ymm7, 7
0012323dvpor ymm7, ymm11, ymm7
00123241vpsrld ymm11, ymm6, 25
00123246vpslld ymm6, ymm6, 7
0012324bvpor ymm6, ymm11, ymm6
0012324fvpshufd ymm7, ymm7, 147
00123254vpshufd ymm6, ymm6, 147
00123259vpshufd ymm9, ymm9, 78
0012325fvpshufd ymm10, ymm10, 78
00123265vpshufd ymm3, ymm3, 57
0012326avpshufd ymm5, ymm5, 57
0012326fjmp 0x1230ed
00123274
00123274loc_123274:
00123274vmovq rdx, x0
00123279lea rax, [rdx+1]
0012327dvpinsrd x1, x0, eax, 0
00123283shr rax, 32
00123287vpinsrd x1, x1, eax, 1
0012328dlea rax, [rsp+496]
00123295lea rcx, [rdx+2]
00123299vpinsrd x2, x0, ecx, 0
0012329fshr rcx, 32
001232a3vpinsrd x2, x2, ecx, 1
001232a9vmovdqa [rax-48], x1
001232aelea rcx, [rdx+3]
001232b2vpinsrd x1, x0, ecx, 0
001232b8shr rcx, 32
001232bcvpinsrd x1, x1, ecx, 1
001232c2vmovdqa [rax-32], x2
001232c7vmovdqa [rax-16], x1
001232ccpush 4
001232cepop rcx
001232cfadd rdx, rcx
001232d2vpinsrd x1, x0, edx, 0
001232d8shr rdx, 32
001232dcvpinsrd x1, x1, edx, 1
001232e2lea rdx, [rsp+240]
001232eavmovdqu [rdx-64], ymm4
001232efvmovdqu [rdx-32], ymm8
001232f4lea rsi, [rsp+304]
001232fcvmovdqu [rsi-64], ymm7
00123301vmovdqu [rsi-32], ymm6
00123306lea r8, [rsp+368]
0012330evmovdqu [r8-64], ymm9
00123314vmovdqu [r8-32], ymm10
0012331alea r9, [rsp+176]
00123322lea r10, [rsp+504]
0012332amov [r10], r9
0012332dlea r9, [rsp+432]
00123335vmovdqu [r9-64], ymm3
0012333bvmovdqu [r9-32], ymm5
00123341mov [r10+8], rdx
00123345mov [r10+16], rdx
00123349mov [r10+24], rsi
0012334dand [r10+32], 0
00123352mov [r10+40], rcx
00123356mov [r10+48], rcx
0012335alea rdx, [rsp+304]
00123362mov [r10+56], rdx
00123366mov [r10+64], r8
0012336aand [r10+72], 0
0012336fmov [r10+80], rcx
00123373mov [r10+88], rcx
00123377lea rdx, [rsp+368]
0012337fmov [r10+96], rdx
00123383mov [r10+104], r9
00123387and [r10+112], 0
0012338cmov [r10+120], rcx
00123390mov [r10+128], rcx
00123397lea rdx, [rsp+432]
0012339fmov [r10+136], rdx
001233a6mov [r10+144], rax
001233adand [r10+152], 0
001233b5vmovdqa [rax-64], x0
001233bavmovdqa [rdi+32], x1
001233bfmov [r10+160], rcx
001233c6mov [r10+168], rcx
001233cdmov r14l, 256
001233d3xor r13l, r13l
001233d6
001233d6loc_1233d6:
001233d6lea rdi, [rsp+8]
001233dblea rsi, [rsp+504]
001233e3vzeroupper
001233e6call _<core::iter::adapters::zip::Zip<A,B> as core::iter::traits::iterator::Iterator>::next
001233ebmov rax, [rsp+8]
001233f0test rax, rax
001233f3je 0x12353c
001233f9vmovdqa x0, [rax]
001233fdvpaddd x0, x0, [rip-0xea8c5]
00123405vmovdqa [rsp+48], x0
0012340bmov rax, [rsp+16]
00123410mov rcx, [rsp+24]
00123415mov rdx, [rsp+32]
0012341amov rsi, [rsp+40]
0012341fvmovdqa x0, [rsi]
00123423vmovdqu ymm1, [rsp+112]
00123429vpaddd x1, x1, [rax]
0012342dvmovdqa [rsp+64], x1
00123433vmovdqu ymm1, [rsp+144]
0012343cvpaddd x1, x1, [rcx]
00123440vmovdqa [rsp+80], x1
00123446vpaddd x0, x0, [rdx]
0012344avmovdqa [rsp+96], x0
00123450xor ebx, ebx
00123452mov rbp, r14
00123455sub rbp, 16
00123459mov r15, r12
0012345ccmovb r15, r13
00123460cmovb rbp, r14
00123464setae bl
00123467mov rdi, r15
0012346alea rsi, [rip+0xc989f]
00123471vzeroupper
00123474call core::option::Option<T>::unwrap
00123479shl rbx, 4
0012347dadd rbx, r12
00123480vmovaps x0, [rsp+48]
00123486vmovups [r15], x0
0012348bxor r12l, r12l
0012348emov r14, rbp
00123491sub r14, 16
00123495mov r15, rbx
00123498cmovb r15, r13
0012349ccmovb r14, rbp
001234a0setae r12b
001234a4mov rdi, r15
001234a7lea rsi, [rip+0xc987a]
001234aecall core::option::Option<T>::unwrap
001234b3shl r12, 4
001234b7add r12, rbx
001234bavmovaps x0, [rsp+64]
001234c0vmovups [r15], x0
001234c5xor r15l, r15l
001234c8mov rbp, r14
001234cbsub rbp, 16
001234cfmov rbx, r12
001234d2cmovb rbx, r13
001234d6cmovb rbp, r14
001234dasetae r15b
001234demov rdi, rbx
001234e1lea rsi, [rip+0xc9858]
001234e8call core::option::Option<T>::unwrap
001234edshl r15, 4
001234f1add r15, r12
001234f4vmovaps x0, [rsp+80]
001234favmovups [rbx], x0
001234fexor r12l, r12l
00123501mov r14, rbp
00123504sub r14, 16
00123508mov rbx, r15
0012350bcmovb rbx, r13
0012350fcmovb r14, rbp
00123513setae r12b
00123517mov rdi, rbx
0012351alea rsi, [rip+0xc9837]
00123521call core::option::Option<T>::unwrap
00123526shl r12, 4
0012352aadd r12, r15
0012352dvmovdqa x0, [rsp+96]
00123533vmovdqu [rbx], x0
00123537jmp 0x1233d6
0012353c
0012353cloc_12353c:
0012353cvzeroupper
0012353fadd rsp, 680
00123546pop rbx
00123547pop r12
00123549pop r13
0012354bpop r14
0012354dpop r15
0012354fpop rbp
00123550ret
00123044
00123551
00123551rand_chacha::guts::refill_wide::impl_avx:
00123551push rbp
00123552push r15
00123554push r14
00123556push r13
00123558push r12
0012355apush rbx
0012355bsub rsp, 648
00123562mov r12, rsi
00123565mov rax, [rdi+32]
00123569vmovdqa x12, [rdi]
0012356dvmovdqa x6, [rdi+32]
00123572lea rcx, [rax+1]
00123576vpinsrd x0, x6, ecx, 0
0012357cshr rcx, 32
00123580vpinsrd x11, x0, ecx, 1
00123586vmovdqa x7, [rdi+16]
0012358blea rcx, [rax+2]
0012358fvpinsrd x0, x6, ecx, 0
00123595shr rcx, 32
00123599vpinsrd x9, x0, ecx, 1
0012359fadd rax, 3
001235a3vpinsrd x0, x6, eax, 0
001235a9shr rax, 32
001235advpinsrd x4, x0, eax, 1
001235b3vmovdqa x0, [rip-0xeaa5b]
001235bbpush 6
001235bdpop rax
001235bevmovdqa x13, x12
001235c3vmovdqa x1, x12
001235c7vmovdqa [rsp+32], x12
001235cdvmovdqa x15, x7
001235d1vmovdqa x2, x7
001235d5vmovdqa [rsp+48], x7
001235dbvmovdqa x3, x0
001235dfvmovdqa [rsp+16], x0
001235e5vmovdqa [rsp], x0
001235ea
001235ealoc_1235ea:
001235easub eax, 1
001235edjb 0x123989
001235f3vpaddd x5, x12, [rsp]
001235f8vmovdqa [rsp], x5
001235fdvpxor x8, x6, x5
00123601vpshuflw x8, x8, 177
00123607vpshufhw x8, x8, 177
0012360dvpaddd x5, x8, x7
00123611vmovdqa [rsp+64], x5
00123617vpxor x5, x12, x5
0012361bvpsrld x7, x5, 20
00123620vpslld x5, x5, 12
00123625vpor x14, x5, x7
00123629vpaddd x5, x13, [rsp+16]
0012362fvpxor x6, x11, x5
00123633vpshuflw x6, x6, 177
00123638vpshufhw x7, x6, 177
0012363dvpaddd x10, x15, x7
00123641vmovdqa [rsp+16], x10
00123647vmovdqa x6, x4
0012364bvpxor x4, x10, x13
00123650vpsrld x13, x4, 20
00123655vpslld x4, x4, 12
0012365avpor x13, x13, x4
0012365evpaddd x4, x3, x1
00123662vpxor x15, x9, x4
00123666vpshuflw x15, x15, 177
0012366cvpshufhw x15, x15, 177
00123672vpaddd x9, x15, x2
00123676vpxor x11, x9, x1
0012367avpsrld x12, x11, 20
00123680vpslld x11, x11, 12
00123686vpor x3, x11, x12
0012368bvmovdqa x2, [rsp+32]
00123691vpaddd x0, x0, x2
00123695vpxor x11, x6, x0
00123699vpshuflw x11, x11, 177
0012369fvpshufhw x1, x11, 177
001236a5vpaddd x10, x1, [rsp+48]
001236abvpxor x11, x10, x2
001236afvpsrld x12, x11, 20
001236b5vpslld x11, x11, 12
001236bbvpor x6, x11, x12
001236c0vpaddd x2, x14, [rsp]
001236c5vmovdqa [rsp+32], x2
001236cbvmovdqa x12, [rip-0xeab63]
001236d3vpshufb x8, x8, x12
001236d8vpshufb x11, x2, x12
001236ddvpxor x11, x11, x8
001236e2vpaddd x8, x13, x5
001236e6vpshufb x5, x7, x12
001236ebvpshufb x7, x8, x12
001236f0vpxor x5, x7, x5
001236f4vpaddd x4, x3, x4
001236f8vpshufb x7, x15, x12
001236fdvpshufb x15, x4, x12
00123702vpxor x7, x15, x7
00123706vpaddd x15, x6, x0
0012370avpshufb x0, x1, x12
0012370fvpshufb x1, x15, x12
00123714vpxor x2, x1, x0
00123718vpaddd x0, x11, [rsp+64]
0012371evmovdqa [rsp+64], x0
00123724vpxor x14, x14, x0
00123728vpsrld x0, x14, 25
0012372evpslld x14, x14, 7
00123734vpor x0, x14, x0
00123738vpaddd x1, x5, [rsp+16]
0012373evmovdqa [rsp], x1
00123743vpxor x13, x13, x1
00123747vpsrld x14, x13, 25
0012374dvpslld x13, x13, 7
00123753vpor x14, x13, x14
00123758vpaddd x13, x9, x7
0012375cvpxor x3, x13, x3
00123760vpsrld x9, x3, 25
00123765vpslld x3, x3, 7
0012376avpor x9, x9, x3
0012376evpaddd x1, x10, x2
00123772vmovdqa x10, x2
00123776vmovdqa [rsp+16], x1
0012377cvpxor x2, x1, x6
00123780vpsrld x6, x2, 25
00123785vpslld x2, x2, 7
0012378avpor x6, x2, x6
0012378evpshufd x1, x0, 57
00123793vpaddd x3, x1, [rsp+32]
00123799vpshuflw x2, x3, 177
0012379evpshufhw x2, x2, 177
001237a3vmovdqa x0, [rip-0xeac2b]
001237abvpshufb x11, x11, x0
001237b0vpxor x11, x11, x2
001237b4vpshufd x14, x14, 57
001237bavpaddd x2, x14, x8
001237bfvmovdqa [rsp+32], x2
001237c5vpshuflw x8, x2, 177
001237cavpshufhw x8, x8, 177
001237d0vpshufb x5, x5, x0
001237d5vpxor x5, x8, x5
001237d9vpshufd x9, x9, 57
001237dfvpaddd x2, x9, x4
001237e3vmovdqa [rsp+48], x2
001237e9vpshuflw x4, x2, 177
001237eevpshufhw x4, x4, 177
001237f3vpshufb x7, x7, x0
001237f8vpxor x7, x7, x4
001237fcvpshufd x6, x6, 57
00123801vpaddd x4, x15, x6
00123805vpshuflw x8, x4, 177
0012380avpshufhw x8, x8, 177
00123810vpshufb x15, x10, x0
00123815vpxor x8, x15, x8
0012381avpshufd x15, [rsp+64], 78
00123821vpaddd x2, x15, x11
00123826vpxor x1, x2, x1
0012382avpsrld x15, x1, 20
0012382fvpslld x1, x1, 12
00123834vpor x1, x15, x1
00123838vpshufd x10, [rsp], 78
0012383evpaddd x15, x10, x5
00123842vpxor x10, x15, x14
00123847vpsrld x14, x10, 20
0012384dvpslld x10, x10, 12
00123853vpor x14, x10, x14
00123858vpshufd x10, x13, 78
0012385evpaddd x10, x10, x7
00123862vpxor x0, x10, x9
00123867vpsrld x13, x0, 20
0012386cvpslld x0, x0, 12
00123871vpor x0, x13, x0
00123875vpshufd x9, [rsp+16], 78
0012387cvpaddd x9, x9, x8
00123881vpxor x6, x9, x6
00123885vpsrld x13, x6, 20
0012388avpslld x6, x6, 12
0012388fvpor x13, x13, x6
00123893vpaddd x3, x1, x3
00123897vmovdqa [rsp], x3
0012389cvpxor x6, x11, x3
001238a0vpshufb x11, x6, x12
001238a5vpaddd x2, x11, x2
001238a9vpxor x1, x2, x1
001238advpsrld x6, x1, 25
001238b2vpslld x1, x1, 7
001238b7vpor x1, x1, x6
001238bbvpaddd x3, x14, [rsp+32]
001238c1vmovdqa [rsp+16], x3
001238c7vpxor x5, x3, x5
001238cbvpshufb x5, x5, x12
001238d0vpaddd x15, x15, x5
001238d4vpxor x14, x15, x14
001238d9vpsrld x6, x14, 25
001238dfvpslld x14, x14, 7
001238e5vpor x6, x14, x6
001238e9vpaddd x3, x0, [rsp+48]
001238efvpxor x7, x3, x7
001238f3vpshufb x14, x7, x12
001238f8vpaddd x10, x10, x14
001238fdvpxor x0, x10, x0
00123901vpsrld x7, x0, 25
00123906vpslld x0, x0, 7
0012390bvpor x7, x0, x7
0012390fvpaddd x0, x13, x4
00123913vpxor x4, x8, x0
00123917vpshufb x8, x4, x12
0012391cvpaddd x4, x9, x8
00123921vpxor x9, x13, x4
00123925vpsrld x13, x9, 25
0012392bvpslld x9, x9, 7
00123931vpor x9, x9, x13
00123936vpshufd x12, x1, 147
0012393bvpshufd x13, x6, 147
00123940vpshufd x1, x7, 147
00123945vpshufd x6, x9, 147
0012394bvmovdqa [rsp+32], x6
00123951vpshufd x7, x2, 78
00123956vpshufd x15, x15, 78
0012395cvpshufd x2, x10, 78
00123962vpshufd x4, x4, 78
00123967vmovdqa [rsp+48], x4
0012396dvpshufd x6, x11, 57
00123973vpshufd x11, x5, 57
00123978vpshufd x9, x14, 57
0012397evpshufd x4, x8, 57
00123984jmp 0x1235ea
00123989
00123989loc_123989:
00123989mov rdx, [rdi+32]
0012398dlea rax, [rdx+1]
00123991mov rcx, rax
00123994shr rcx, 32
00123998vmovdqa x5, [rdi+32]
0012399dvpinsrd x10, x5, eax, 0
001239a3vpinsrd x10, x10, ecx, 1
001239a9lea rax, [rsp+464]
001239b1vmovdqa [rax-48], x10
001239b6lea rcx, [rdx+2]
001239bamov rsi, rcx
001239bdvpinsrd x10, x5, ecx, 0
001239c3shr rsi, 32
001239c7vpinsrd x10, x10, esi, 1
001239cdvmovdqa [rax-32], x10
001239d2lea rcx, [rdx+3]
001239d6mov rsi, rcx
001239d9vpinsrd x10, x5, ecx, 0
001239dfshr rsi, 32
001239e3vpinsrd x10, x10, esi, 1
001239e9vmovdqa [rax-16], x10
001239eepush 4
001239f0pop rcx
001239f1add rdx, rcx
001239f4mov rsi, rdx
001239f7shr rsi, 32
001239fbvpinsrd x10, x5, edx, 0
00123a01vpinsrd x10, x10, esi, 1
00123a07vmovdqa [rdi+32], x10
00123a0clea rdx, [rsp+208]
00123a14vmovaps x8, [rsp]
00123a19vmovaps [rdx-64], x8
00123a1evmovaps x8, [rsp+16]
00123a24vmovaps [rdx-48], x8
00123a29vmovdqa [rdx-32], x3
00123a2evmovdqa [rdx-16], x0
00123a33lea rsi, [rsp+272]
00123a3bvmovdqa [rsi-64], x12
00123a40vmovdqa [rsi-48], x13
00123a45vmovdqa [rsi-32], x1
00123a4avmovaps x0, [rsp+32]
00123a50vmovaps [rsi-16], x0
00123a55lea r8, [rsp+336]
00123a5dvmovdqa [r8-64], x7
00123a63vmovdqa [r8-48], x15
00123a69vmovdqa [r8-32], x2
00123a6fvmovaps x0, [rsp+48]
00123a75vmovaps [r8-16], x0
00123a7blea r9, [rsp+400]
00123a83vmovdqa [r9-64], x6
00123a89vmovdqa [r9-48], x11
00123a8flea r10, [rsp+144]
00123a97lea r11, [rsp+472]
00123a9fmov [r11], r10
00123aa2vmovdqa [r9-32], x9
00123aa8vmovdqa [r9-16], x4
00123aaevmovaps x0, [rdi]
00123ab2vmovaps [rsp+64], x0
00123ab8mov [r11+8], rdx
00123abcmov [r11+16], rdx
00123ac0mov [r11+24], rsi
00123ac4and [r11+32], 0
00123ac9mov [r11+40], rcx
00123acdmov [r11+48], rcx
00123ad1lea rdx, [rsp+272]
00123ad9mov [r11+56], rdx
00123addmov [r11+64], r8
00123ae1and [r11+72], 0
00123ae6mov [r11+80], rcx
00123aeamov [r11+88], rcx
00123aeelea rdx, [rsp+336]
00123af6mov [r11+96], rdx
00123afamov [r11+104], r9
00123afeand [r11+112], 0
00123b03mov [r11+120], rcx
00123b07mov [r11+128], rcx
00123b0elea rdx, [rsp+400]
00123b16mov [r11+136], rdx
00123b1dmov [r11+144], rax
00123b24and [r11+152], 0
00123b2cvmovaps x0, [rdi+16]
00123b31vmovaps [rsp+128], x0
00123b3avmovdqa [rax-64], x5
00123b3fmov [r11+160], rcx
00123b46mov [r11+168], rcx
00123b4dmov r14l, 256
00123b53xor r13l, r13l
00123b56
00123b56loc_123b56:
00123b56lea rdi, [rsp+88]
00123b5blea rsi, [rsp+472]
00123b63call _<core::iter::adapters::zip::Zip<A,B> as core::iter::traits::iterator::Iterator>::next
00123b68mov rax, [rsp+88]
00123b6dtest rax, rax
00123b70je 0x123cb4
00123b76vmovdqa x0, [rax]
00123b7avpaddd x0, x0, [rip-0xeb022]
00123b82vmovdqa [rsp], x0
00123b87mov rax, [rsp+96]
00123b8cmov rcx, [rsp+104]
00123b91mov rdx, [rsp+112]
00123b96mov rsi, [rsp+120]
00123b9bvmovdqa x0, [rsi]
00123b9fvmovdqa x1, [rsp+64]
00123ba5vpaddd x1, x1, [rax]
00123ba9vmovdqa [rsp+16], x1
00123bafvmovdqa x1, [rsp+128]
00123bb8vpaddd x1, x1, [rcx]
00123bbcvmovdqa [rsp+48], x1
00123bc2vpaddd x0, x0, [rdx]
00123bc6vmovdqa [rsp+32], x0
00123bccxor ebx, ebx
00123bcemov rbp, r14
00123bd1sub rbp, 16
00123bd5mov r15, r12
00123bd8cmovb r15, r13
00123bdccmovb rbp, r14
00123be0setae bl
00123be3mov rdi, r15
00123be6lea rsi, [rip+0xc9123]
00123bedcall core::option::Option<T>::unwrap
00123bf2shl rbx, 4
00123bf6add rbx, r12
00123bf9vmovaps x0, [rsp]
00123bfevmovups [r15], x0
00123c03xor r12l, r12l
00123c06mov r14, rbp
00123c09sub r14, 16
00123c0dmov r15, rbx
00123c10cmovb r15, r13
00123c14cmovb r14, rbp
00123c18setae r12b
00123c1cmov rdi, r15
00123c1flea rsi, [rip+0xc9102]
00123c26call core::option::Option<T>::unwrap
00123c2bshl r12, 4
00123c2fadd r12, rbx
00123c32vmovaps x0, [rsp+16]
00123c38vmovups [r15], x0
00123c3dxor r15l, r15l
00123c40mov rbp, r14
00123c43sub rbp, 16
00123c47mov rbx, r12
00123c4acmovb rbx, r13
00123c4ecmovb rbp, r14
00123c52setae r15b
00123c56mov rdi, rbx
00123c59lea rsi, [rip+0xc90e0]
00123c60call core::option::Option<T>::unwrap
00123c65shl r15, 4
00123c69add r15, r12
00123c6cvmovaps x0, [rsp+48]
00123c72vmovups [rbx], x0
00123c76xor r12l, r12l
00123c79mov r14, rbp
00123c7csub r14, 16
00123c80mov rbx, r15
00123c83cmovb rbx, r13
00123c87cmovb r14, rbp
00123c8bsetae r12b
00123c8fmov rdi, rbx
00123c92lea rsi, [rip+0xc90bf]
00123c99call core::option::Option<T>::unwrap
00123c9eshl r12, 4
00123ca2add r12, r15
00123ca5vmovaps x0, [rsp+32]
00123cabvmovups [rbx], x0
00123cafjmp 0x123b56
00123cb4
00123cb4loc_123cb4:
00123cb4vzeroupper
00123cb7add rsp, 648
00123cbepop rbx
00123cbfpop r12
00123cc1pop r13
00123cc3pop r14
00123cc5pop r15
00123cc7pop rbp
00123cc8ret
00123551
00123551rand_chacha::guts::refill_wide::impl_avx:
00123551push rbp
00123552push r15
00123554push r14
00123556push r13
00123558push r12
0012355apush rbx
0012355bsub rsp, 648
00123562mov r12, rsi
00123565mov rax, [rdi+32]
00123569vmovdqa x12, [rdi]
0012356dvmovdqa x6, [rdi+32]
00123572lea rcx, [rax+1]
00123576vpinsrd x0, x6, ecx, 0
0012357cshr rcx, 32
00123580vpinsrd x11, x0, ecx, 1
00123586vmovdqa x7, [rdi+16]
0012358blea rcx, [rax+2]
0012358fvpinsrd x0, x6, ecx, 0
00123595shr rcx, 32
00123599vpinsrd x9, x0, ecx, 1
0012359fadd rax, 3
001235a3vpinsrd x0, x6, eax, 0
001235a9shr rax, 32
001235advpinsrd x4, x0, eax, 1
001235b3vmovdqa x0, [rip-0xeaa5b]
001235bbpush 6
001235bdpop rax
001235bevmovdqa x13, x12
001235c3vmovdqa x1, x12
001235c7vmovdqa [rsp+32], x12
001235cdvmovdqa x15, x7
001235d1vmovdqa x2, x7
001235d5vmovdqa [rsp+48], x7
001235dbvmovdqa x3, x0
001235dfvmovdqa [rsp+16], x0
001235e5vmovdqa [rsp], x0
001235ea
001235ealoc_1235ea:
001235easub eax, 1
001235edjb 0x123989
001235f3vpaddd x5, x12, [rsp]
001235f8vmovdqa [rsp], x5
001235fdvpxor x8, x6, x5
00123601vpshuflw x8, x8, 177
00123607vpshufhw x8, x8, 177
0012360dvpaddd x5, x8, x7
00123611vmovdqa [rsp+64], x5
00123617vpxor x5, x12, x5
0012361bvpsrld x7, x5, 20
00123620vpslld x5, x5, 12
00123625vpor x14, x5, x7
00123629vpaddd x5, x13, [rsp+16]
0012362fvpxor x6, x11, x5
00123633vpshuflw x6, x6, 177
00123638vpshufhw x7, x6, 177
0012363dvpaddd x10, x15, x7
00123641vmovdqa [rsp+16], x10
00123647vmovdqa x6, x4
0012364bvpxor x4, x10, x13
00123650vpsrld x13, x4, 20
00123655vpslld x4, x4, 12
0012365avpor x13, x13, x4
0012365evpaddd x4, x3, x1
00123662vpxor x15, x9, x4
00123666vpshuflw x15, x15, 177
0012366cvpshufhw x15, x15, 177
00123672vpaddd x9, x15, x2
00123676vpxor x11, x9, x1
0012367avpsrld x12, x11, 20
00123680vpslld x11, x11, 12
00123686vpor x3, x11, x12
0012368bvmovdqa x2, [rsp+32]
00123691vpaddd x0, x0, x2
00123695vpxor x11, x6, x0
00123699vpshuflw x11, x11, 177
0012369fvpshufhw x1, x11, 177
001236a5vpaddd x10, x1, [rsp+48]
001236abvpxor x11, x10, x2
001236afvpsrld x12, x11, 20
001236b5vpslld x11, x11, 12
001236bbvpor x6, x11, x12
001236c0vpaddd x2, x14, [rsp]
001236c5vmovdqa [rsp+32], x2
001236cbvmovdqa x12, [rip-0xeab63]
001236d3vpshufb x8, x8, x12
001236d8vpshufb x11, x2, x12
001236ddvpxor x11, x11, x8
001236e2vpaddd x8, x13, x5
001236e6vpshufb x5, x7, x12
001236ebvpshufb x7, x8, x12
001236f0vpxor x5, x7, x5
001236f4vpaddd x4, x3, x4
001236f8vpshufb x7, x15, x12
001236fdvpshufb x15, x4, x12
00123702vpxor x7, x15, x7
00123706vpaddd x15, x6, x0
0012370avpshufb x0, x1, x12
0012370fvpshufb x1, x15, x12
00123714vpxor x2, x1, x0
00123718vpaddd x0, x11, [rsp+64]
0012371evmovdqa [rsp+64], x0
00123724vpxor x14, x14, x0
00123728vpsrld x0, x14, 25
0012372evpslld x14, x14, 7
00123734vpor x0, x14, x0
00123738vpaddd x1, x5, [rsp+16]
0012373evmovdqa [rsp], x1
00123743vpxor x13, x13, x1
00123747vpsrld x14, x13, 25
0012374dvpslld x13, x13, 7
00123753vpor x14, x13, x14
00123758vpaddd x13, x9, x7
0012375cvpxor x3, x13, x3
00123760vpsrld x9, x3, 25
00123765vpslld x3, x3, 7
0012376avpor x9, x9, x3
0012376evpaddd x1, x10, x2
00123772vmovdqa x10, x2
00123776vmovdqa [rsp+16], x1
0012377cvpxor x2, x1, x6
00123780vpsrld x6, x2, 25
00123785vpslld x2, x2, 7
0012378avpor x6, x2, x6
0012378evpshufd x1, x0, 57
00123793vpaddd x3, x1, [rsp+32]
00123799vpshuflw x2, x3, 177
0012379evpshufhw x2, x2, 177
001237a3vmovdqa x0, [rip-0xeac2b]
001237abvpshufb x11, x11, x0
001237b0vpxor x11, x11, x2
001237b4vpshufd x14, x14, 57
001237bavpaddd x2, x14, x8
001237bfvmovdqa [rsp+32], x2
001237c5vpshuflw x8, x2, 177
001237cavpshufhw x8, x8, 177
001237d0vpshufb x5, x5, x0
001237d5vpxor x5, x8, x5
001237d9vpshufd x9, x9, 57
001237dfvpaddd x2, x9, x4
001237e3vmovdqa [rsp+48], x2
001237e9vpshuflw x4, x2, 177
001237eevpshufhw x4, x4, 177
001237f3vpshufb x7, x7, x0
001237f8vpxor x7, x7, x4
001237fcvpshufd x6, x6, 57
00123801vpaddd x4, x15, x6
00123805vpshuflw x8, x4, 177
0012380avpshufhw x8, x8, 177
00123810vpshufb x15, x10, x0
00123815vpxor x8, x15, x8
0012381avpshufd x15, [rsp+64], 78
00123821vpaddd x2, x15, x11
00123826vpxor x1, x2, x1
0012382avpsrld x15, x1, 20
0012382fvpslld x1, x1, 12
00123834vpor x1, x15, x1
00123838vpshufd x10, [rsp], 78
0012383evpaddd x15, x10, x5
00123842vpxor x10, x15, x14
00123847vpsrld x14, x10, 20
0012384dvpslld x10, x10, 12
00123853vpor x14, x10, x14
00123858vpshufd x10, x13, 78
0012385evpaddd x10, x10, x7
00123862vpxor x0, x10, x9
00123867vpsrld x13, x0, 20
0012386cvpslld x0, x0, 12
00123871vpor x0, x13, x0
00123875vpshufd x9, [rsp+16], 78
0012387cvpaddd x9, x9, x8
00123881vpxor x6, x9, x6
00123885vpsrld x13, x6, 20
0012388avpslld x6, x6, 12
0012388fvpor x13, x13, x6
00123893vpaddd x3, x1, x3
00123897vmovdqa [rsp], x3
0012389cvpxor x6, x11, x3
001238a0vpshufb x11, x6, x12
001238a5vpaddd x2, x11, x2
001238a9vpxor x1, x2, x1
001238advpsrld x6, x1, 25
001238b2vpslld x1, x1, 7
001238b7vpor x1, x1, x6
001238bbvpaddd x3, x14, [rsp+32]
001238c1vmovdqa [rsp+16], x3
001238c7vpxor x5, x3, x5
001238cbvpshufb x5, x5, x12
001238d0vpaddd x15, x15, x5
001238d4vpxor x14, x15, x14
001238d9vpsrld x6, x14, 25
001238dfvpslld x14, x14, 7
001238e5vpor x6, x14, x6
001238e9vpaddd x3, x0, [rsp+48]
001238efvpxor x7, x3, x7
001238f3vpshufb x14, x7, x12
001238f8vpaddd x10, x10, x14
001238fdvpxor x0, x10, x0
00123901vpsrld x7, x0, 25
00123906vpslld x0, x0, 7
0012390bvpor x7, x0, x7
0012390fvpaddd x0, x13, x4
00123913vpxor x4, x8, x0
00123917vpshufb x8, x4, x12
0012391cvpaddd x4, x9, x8
00123921vpxor x9, x13, x4
00123925vpsrld x13, x9, 25
0012392bvpslld x9, x9, 7
00123931vpor x9, x9, x13
00123936vpshufd x12, x1, 147
0012393bvpshufd x13, x6, 147
00123940vpshufd x1, x7, 147
00123945vpshufd x6, x9, 147
0012394bvmovdqa [rsp+32], x6
00123951vpshufd x7, x2, 78
00123956vpshufd x15, x15, 78
0012395cvpshufd x2, x10, 78
00123962vpshufd x4, x4, 78
00123967vmovdqa [rsp+48], x4
0012396dvpshufd x6, x11, 57
00123973vpshufd x11, x5, 57
00123978vpshufd x9, x14, 57
0012397evpshufd x4, x8, 57
00123984jmp 0x1235ea
00123989
00123989loc_123989:
00123989mov rdx, [rdi+32]
0012398dlea rax, [rdx+1]
00123991mov rcx, rax
00123994shr rcx, 32
00123998vmovdqa x5, [rdi+32]
0012399dvpinsrd x10, x5, eax, 0
001239a3vpinsrd x10, x10, ecx, 1
001239a9lea rax, [rsp+464]
001239b1vmovdqa [rax-48], x10
001239b6lea rcx, [rdx+2]
001239bamov rsi, rcx
001239bdvpinsrd x10, x5, ecx, 0
001239c3shr rsi, 32
001239c7vpinsrd x10, x10, esi, 1
001239cdvmovdqa [rax-32], x10
001239d2lea rcx, [rdx+3]
001239d6mov rsi, rcx
001239d9vpinsrd x10, x5, ecx, 0
001239dfshr rsi, 32
001239e3vpinsrd x10, x10, esi, 1
001239e9vmovdqa [rax-16], x10
001239eepush 4
001239f0pop rcx
001239f1add rdx, rcx
001239f4mov rsi, rdx
001239f7shr rsi, 32
001239fbvpinsrd x10, x5, edx, 0
00123a01vpinsrd x10, x10, esi, 1
00123a07vmovdqa [rdi+32], x10
00123a0clea rdx, [rsp+208]
00123a14vmovaps x8, [rsp]
00123a19vmovaps [rdx-64], x8
00123a1evmovaps x8, [rsp+16]
00123a24vmovaps [rdx-48], x8
00123a29vmovdqa [rdx-32], x3
00123a2evmovdqa [rdx-16], x0
00123a33lea rsi, [rsp+272]
00123a3bvmovdqa [rsi-64], x12
00123a40vmovdqa [rsi-48], x13
00123a45vmovdqa [rsi-32], x1
00123a4avmovaps x0, [rsp+32]
00123a50vmovaps [rsi-16], x0
00123a55lea r8, [rsp+336]
00123a5dvmovdqa [r8-64], x7
00123a63vmovdqa [r8-48], x15
00123a69vmovdqa [r8-32], x2
00123a6fvmovaps x0, [rsp+48]
00123a75vmovaps [r8-16], x0
00123a7blea r9, [rsp+400]
00123a83vmovdqa [r9-64], x6
00123a89vmovdqa [r9-48], x11
00123a8flea r10, [rsp+144]
00123a97lea r11, [rsp+472]
00123a9fmov [r11], r10
00123aa2vmovdqa [r9-32], x9
00123aa8vmovdqa [r9-16], x4
00123aaevmovaps x0, [rdi]
00123ab2vmovaps [rsp+64], x0
00123ab8mov [r11+8], rdx
00123abcmov [r11+16], rdx
00123ac0mov [r11+24], rsi
00123ac4and [r11+32], 0
00123ac9mov [r11+40], rcx
00123acdmov [r11+48], rcx
00123ad1lea rdx, [rsp+272]
00123ad9mov [r11+56], rdx
00123addmov [r11+64], r8
00123ae1and [r11+72], 0
00123ae6mov [r11+80], rcx
00123aeamov [r11+88], rcx
00123aeelea rdx, [rsp+336]
00123af6mov [r11+96], rdx
00123afamov [r11+104], r9
00123afeand [r11+112], 0
00123b03mov [r11+120], rcx
00123b07mov [r11+128], rcx
00123b0elea rdx, [rsp+400]
00123b16mov [r11+136], rdx
00123b1dmov [r11+144], rax
00123b24and [r11+152], 0
00123b2cvmovaps x0, [rdi+16]
00123b31vmovaps [rsp+128], x0
00123b3avmovdqa [rax-64], x5
00123b3fmov [r11+160], rcx
00123b46mov [r11+168], rcx
00123b4dmov r14l, 256
00123b53xor r13l, r13l
00123b56
00123b56loc_123b56:
00123b56lea rdi, [rsp+88]
00123b5blea rsi, [rsp+472]
00123b63call _<core::iter::adapters::zip::Zip<A,B> as core::iter::traits::iterator::Iterator>::next
00123b68mov rax, [rsp+88]
00123b6dtest rax, rax
00123b70je 0x123cb4
00123b76vmovdqa x0, [rax]
00123b7avpaddd x0, x0, [rip-0xeb022]
00123b82vmovdqa [rsp], x0
00123b87mov rax, [rsp+96]
00123b8cmov rcx, [rsp+104]
00123b91mov rdx, [rsp+112]
00123b96mov rsi, [rsp+120]
00123b9bvmovdqa x0, [rsi]
00123b9fvmovdqa x1, [rsp+64]
00123ba5vpaddd x1, x1, [rax]
00123ba9vmovdqa [rsp+16], x1
00123bafvmovdqa x1, [rsp+128]
00123bb8vpaddd x1, x1, [rcx]
00123bbcvmovdqa [rsp+48], x1
00123bc2vpaddd x0, x0, [rdx]
00123bc6vmovdqa [rsp+32], x0
00123bccxor ebx, ebx
00123bcemov rbp, r14
00123bd1sub rbp, 16
00123bd5mov r15, r12
00123bd8cmovb r15, r13
00123bdccmovb rbp, r14
00123be0setae bl
00123be3mov rdi, r15
00123be6lea rsi, [rip+0xc9123]
00123bedcall core::option::Option<T>::unwrap
00123bf2shl rbx, 4
00123bf6add rbx, r12
00123bf9vmovaps x0, [rsp]
00123bfevmovups [r15], x0
00123c03xor r12l, r12l
00123c06mov r14, rbp
00123c09sub r14, 16
00123c0dmov r15, rbx
00123c10cmovb r15, r13
00123c14cmovb r14, rbp
00123c18setae r12b
00123c1cmov rdi, r15
00123c1flea rsi, [rip+0xc9102]
00123c26call core::option::Option<T>::unwrap
00123c2bshl r12, 4
00123c2fadd r12, rbx
00123c32vmovaps x0, [rsp+16]
00123c38vmovups [r15], x0
00123c3dxor r15l, r15l
00123c40mov rbp, r14
00123c43sub rbp, 16
00123c47mov rbx, r12
00123c4acmovb rbx, r13
00123c4ecmovb rbp, r14
00123c52setae r15b
00123c56mov rdi, rbx
00123c59lea rsi, [rip+0xc90e0]
00123c60call core::option::Option<T>::unwrap
00123c65shl r15, 4
00123c69add r15, r12
00123c6cvmovaps x0, [rsp+48]
00123c72vmovups [rbx], x0
00123c76xor r12l, r12l
00123c79mov r14, rbp
00123c7csub r14, 16
00123c80mov rbx, r15
00123c83cmovb rbx, r13
00123c87cmovb r14, rbp
00123c8bsetae r12b
00123c8fmov rdi, rbx
00123c92lea rsi, [rip+0xc90bf]
00123c99call core::option::Option<T>::unwrap
00123c9eshl r12, 4
00123ca2add r12, r15
00123ca5vmovaps x0, [rsp+32]
00123cabvmovups [rbx], x0
00123cafjmp 0x123b56
00123cb4
00123cb4loc_123cb4:
00123cb4vzeroupper
00123cb7add rsp, 648
00123cbepop rbx
00123cbfpop r12
00123cc1pop r13
00123cc3pop r14
00123cc5pop r15
00123cc7pop rbp
00123cc8ret
00123551
00123cc9
00123cc9rand_chacha::guts::refill_wide::impl_sse41:
00123cc9push rbp
00123ccapush r15
00123cccpush r14
00123ccepush r13
00123cd0push r12
00123cd2push rbx
00123cd3sub rsp, 648
00123cdamov r12, rsi
00123cddmov rax, [rdi+32]
00123ce1movdqa x0, [rdi]
00123ce5movdqa x7, [rdi+16]
00123ceamovdqa x14, [rdi+32]
00123cf0lea rcx, [rax+1]
00123cf4movdqa x15, x14
00123cf9pinsrd x15, ecx, 0
00123d00shr rcx, 32
00123d04pinsrd x15, ecx, 1
00123d0blea rcx, [rax+2]
00123d0fmovdqa x5, x14
00123d14pinsrd x5, ecx, 0
00123d1ashr rcx, 32
00123d1epinsrd x5, ecx, 1
00123d24add rax, 3
00123d28movdqa x4, x14
00123d2dpinsrd x4, eax, 0
00123d33shr rax, 32
00123d37pinsrd x4, eax, 1
00123d3dmovdqa x3, [rip-0xeb1b5]
00123d45push 6
00123d47pop rax
00123d48movdqa x8, x0
00123d4dmovdqa x9, x0
00123d52movdqa x10, x0
00123d57movdqa x11, x7
00123d5cmovdqa x12, x7
00123d61movdqa x13, x7
00123d66movdqa [rsp+32], x3
00123d6cmovdqa [rsp+64], x3
00123d72movdqa [rsp], x3
00123d77movdqa [rsp+48], x3
00123d7d
00123d7dloc_123d7d:
00123d7dsub eax, 1
00123d80jb 0x1241e0
00123d86movdqa x6, [rsp+48]
00123d8cpaddd x6, x0
00123d90movdqa x3, [rsp+64]
00123d96paddd x3, x8
00123d9bmovdqa x2, [rsp+32]
00123da1paddd x2, x9
00123da6movdqa x1, [rsp]
00123dabpaddd x1, x10
00123db0pxor x14, x6
00123db5pxor x15, x3
00123dbapxor x5, x2
00123dbepxor x4, x1
00123dc2pshuflw x14, x14, -79
00123dc8pshufhw x14, x14, -79
00123dcepshuflw x15, x15, -79
00123dd4pshufhw x15, x15, -79
00123ddapshuflw x5, x5, -79
00123ddfpshufhw x5, x5, -79
00123de4pshuflw x4, x4, -79
00123de9pshufhw x4, x4, -79
00123deepaddd x7, x14
00123df3movdqa [rsp+16], x7
00123df9paddd x11, x15
00123dfepaddd x12, x5
00123e03movdqa [rsp], x12
00123e09paddd x13, x4
00123e0epxor x0, x7
00123e12pxor x8, x11
00123e17pxor x9, x12
00123e1cpxor x10, x13
00123e21movdqa x7, x0
00123e25psrld x7, 20
00123e2apslld x0, 12
00123e2fpor x0, x7
00123e33movdqa x7, x8
00123e38psrld x7, 20
00123e3dpslld x8, 12
00123e43por x8, x7
00123e48movdqa x7, x9
00123e4dpsrld x7, 20
00123e52pslld x9, 12
00123e58por x9, x7
00123e5dmovdqa x7, x10
00123e62psrld x7, 20
00123e67pslld x10, 12
00123e6dpor x10, x7
00123e72paddd x6, x0
00123e76paddd x3, x8
00123e7bpaddd x2, x9
00123e80paddd x1, x10
00123e85movdqa x7, x6
00123e89movdqa x12, x13
00123e8emovdqa x13, x11
00123e93movdqa x11, [rip-0xeb2fc]
00123e9cpshufb x7, x11
00123ea2pshufb x14, x11
00123ea8pxor x14, x7
00123eadmovdqa x7, x3
00123eb1pshufb x7, x11
00123eb7pshufb x15, x11
00123ebdpxor x15, x7
00123ec2movdqa x7, x2
00123ec6pshufb x7, x11
00123eccpshufb x5, x11
00123ed2pxor x5, x7
00123ed6movdqa x7, x1
00123edapshufb x7, x11
00123ee0pshufb x4, x11
00123ee6pxor x4, x7
00123eeamovdqa x11, [rsp+16]
00123ef1paddd x11, x14
00123ef6movdqa [rsp+16], x11
00123efdpaddd x13, x15
00123f02movdqa x7, [rsp]
00123f07paddd x7, x5
00123f0bpaddd x12, x4
00123f10pxor x0, x11
00123f15pxor x8, x13
00123f1apxor x9, x7
00123f1fmovdqa x11, x7
00123f24pxor x10, x12
00123f29movdqa x7, x0
00123f2dpsrld x7, 25
00123f32pslld x0, 7
00123f37por x0, x7
00123f3bmovdqa x7, x8
00123f40psrld x7, 25
00123f45pslld x8, 7
00123f4bpor x8, x7
00123f50movdqa x7, x9
00123f55psrld x7, 25
00123f5apslld x9, 7
00123f60por x9, x7
00123f65movdqa x7, x10
00123f6apsrld x7, 25
00123f6fpslld x10, 7
00123f75por x10, x7
00123f7apshufd x7, x0, 57
00123f7fpshufd x8, x8, 57
00123f85pshufd x9, x9, 57
00123f8bpshufd x10, x10, 57
00123f91pshufd x0, [rsp+16], 78
00123f98movdqa [rsp+32], x0
00123f9epshufd x0, x13, 78
00123fa4movdqa [rsp], x0
00123fa9pshufd x0, x11, 78
00123fafmovdqa [rsp+16], x0
00123fb5pshufd x13, x12, 78
00123fbbpaddd x6, x7
00123fbfpaddd x3, x8
00123fc4paddd x2, x9
00123fc9paddd x1, x10
00123fcepshuflw x0, x6, -79
00123fd3pshufhw x0, x0, -79
00123fd8movdqa x11, [rip-0xeb431]
00123fe1pshufb x14, x11
00123fe7pxor x14, x0
00123fecpshuflw x0, x3, -79
00123ff1pshufhw x0, x0, -79
00123ff6pshufb x15, x11
00123ffcpxor x15, x0
00124001pshuflw x0, x2, -79
00124006pshufhw x0, x0, -79
0012400bpshufb x5, x11
00124011pxor x5, x0
00124015pshuflw x0, x1, -79
0012401apshufhw x0, x0, -79
0012401fpshufb x4, x11
00124025pxor x4, x0
00124029movdqa x11, [rsp+32]
00124030paddd x11, x14
00124035movdqa x12, [rsp]
0012403bpaddd x12, x15
00124040movdqa x0, [rsp+16]
00124046paddd x0, x5
0012404amovdqa [rsp+16], x0
00124050paddd x13, x4
00124055pxor x7, x11
0012405apxor x8, x12
0012405fpxor x9, x0
00124064pxor x10, x13
00124069movdqa x0, x7
0012406dpsrld x0, 20
00124072pslld x7, 12
00124077por x7, x0
0012407bmovdqa x0, x8
00124080psrld x0, 20
00124085pslld x8, 12
0012408bpor x8, x0
00124090movdqa x0, x9
00124095psrld x0, 20
0012409apslld x9, 12
001240a0por x9, x0
001240a5movdqa x0, x10
001240aapsrld x0, 20
001240afpslld x10, 12
001240b5por x10, x0
001240bapaddd x6, x7
001240bepaddd x3, x8
001240c3paddd x2, x9
001240c8paddd x1, x10
001240cdmovdqa [rsp+48], x6
001240d3pxor x14, x6
001240d8movdqa [rsp+64], x3
001240depxor x15, x3
001240e3movdqa [rsp+32], x2
001240e9pxor x5, x2
001240edmovdqa [rsp], x1
001240f2pxor x4, x1
001240f6movdqa x0, [rip-0xeb55e]
001240fepshufb x14, x0
00124104pshufb x15, x0
0012410apshufb x5, x0
0012410fpshufb x4, x0
00124114paddd x11, x14
00124119paddd x12, x15
0012411emovdqa x0, [rsp+16]
00124124paddd x0, x5
00124128paddd x13, x4
0012412dpxor x7, x11
00124132pxor x8, x12
00124137pxor x9, x0
0012413cmovdqa x1, x0
00124140pxor x10, x13
00124145movdqa x0, x7
00124149psrld x0, 25
0012414epslld x7, 7
00124153por x7, x0
00124157movdqa x0, x8
0012415cpsrld x0, 25
00124161pslld x8, 7
00124167por x8, x0
0012416cmovdqa x0, x9
00124171psrld x0, 25
00124176pslld x9, 7
0012417cpor x9, x0
00124181movdqa x0, x10
00124186psrld x0, 25
0012418bpslld x10, 7
00124191por x10, x0
00124196pshufd x0, x7, -109
0012419bpshufd x8, x8, -109
001241a1pshufd x9, x9, -109
001241a7pshufd x10, x10, -109
001241adpshufd x7, x11, 78
001241b3pshufd x11, x12, 78
001241b9pshufd x12, x1, 78
001241bfpshufd x13, x13, 78
001241c5pshufd x14, x14, 57
001241cbpshufd x15, x15, 57
001241d1pshufd x5, x5, 57
001241d6pshufd x4, x4, 57
001241dbjmp 0x123d7d
001241e0
001241e0loc_1241e0:
001241e0mov rdx, [rdi+32]
001241e4lea rax, [rdx+1]
001241e8movdqa x1, [rdi+32]
001241edmovdqa x2, x1
001241f1pinsrd x2, eax, 0
001241f7shr rax, 32
001241fbpinsrd x2, eax, 1
00124201lea rax, [rsp+464]
00124209lea rcx, [rdx+2]
0012420dmovdqa x3, x1
00124211pinsrd x3, ecx, 0
00124217shr rcx, 32
0012421bpinsrd x3, ecx, 1
00124221movdqa [rax-48], x2
00124226movdqa [rax-32], x3
0012422blea rcx, [rdx+3]
0012422fmovdqa x2, x1
00124233pinsrd x2, ecx, 0
00124239shr rcx, 32
0012423dpinsrd x2, ecx, 1
00124243movdqa [rax-16], x2
00124248push 4
0012424apop rcx
0012424badd rdx, rcx
0012424emovdqa x2, x1
00124252pinsrd x2, edx, 0
00124258shr rdx, 32
0012425cpinsrd x2, edx, 1
00124262movdqa [rax-64], x1
00124267movdqa [rdi+32], x2
0012426clea rdx, [rsp+208]
00124274movaps x1, [rsp+48]
00124279movaps [rdx-64], x1
0012427dmovaps x1, [rsp+64]
00124282movaps [rdx-48], x1
00124286movaps x1, [rsp+32]
0012428bmovaps [rdx-32], x1
0012428fmovdqa x1, [rsp]
00124294movdqa [rdx-16], x1
00124299lea rsi, [rsp+272]
001242a1movdqa [rsi-64], x0
001242a6movdqa [rsi-48], x8
001242acmovdqa [rsi-32], x9
001242b2movdqa [rsi-16], x10
001242b8lea r8, [rsp+336]
001242c0movdqa [r8-64], x7
001242c6movdqa [r8-48], x11
001242ccmovdqa [r8-32], x12
001242d2movdqa [r8-16], x13
001242d8lea r9, [rsp+400]
001242e0movdqa [r9-64], x14
001242e6lea r10, [rsp+144]
001242eelea r11, [rsp+472]
001242f6mov [r11], r10
001242f9movdqa [r9-48], x15
001242ffmovdqa [r9-32], x5
00124305movdqa [r9-16], x4
0012430bmov [r11+8], rdx
0012430fmov [r11+16], rdx
00124313mov [r11+24], rsi
00124317and [r11+32], 0
0012431cmov [r11+40], rcx
00124320mov [r11+48], rcx
00124324lea rdx, [rsp+272]
0012432cmov [r11+56], rdx
00124330mov [r11+64], r8
00124334and [r11+72], 0
00124339mov [r11+80], rcx
0012433dmov [r11+88], rcx
00124341lea rdx, [rsp+336]
00124349mov [r11+96], rdx
0012434dmov [r11+104], r9
00124351and [r11+112], 0
00124356mov [r11+120], rcx
0012435amov [r11+128], rcx
00124361lea rdx, [rsp+400]
00124369mov [r11+136], rdx
00124370mov [r11+144], rax
00124377and [r11+152], 0
0012437fmovaps x0, [rdi]
00124382movaps [rsp+48], x0
00124387movaps x0, [rdi+16]
0012438bmovaps [rsp+128], x0
00124393mov [r11+160], rcx
0012439amov [r11+168], rcx
001243a1mov r14l, 256
001243a7xor r13l, r13l
001243aa
001243aaloc_1243aa:
001243aalea rdi, [rsp+88]
001243aflea rsi, [rsp+472]
001243b7call _<core::iter::adapters::zip::Zip<A,B> as core::iter::traits::iterator::Iterator>::next
001243bcmov rax, [rsp+88]
001243c1test rax, rax
001243c4je 0x124500
001243camovdqa x0, [rax]
001243cepaddd x0, [rip-0xeb846]
001243d6movdqa [rsp+64], x0
001243dcmov rax, [rsp+96]
001243e1mov rcx, [rsp+104]
001243e6mov rdx, [rsp+112]
001243ebmov rsi, [rsp+120]
001243f0movdqa x0, [rsi]
001243f4movdqa x1, [rax]
001243f8paddd x1, [rsp+48]
001243femovdqa [rsp+32], x1
00124404movdqa x1, [rcx]
00124408paddd x1, [rsp+128]
00124411movdqa [rsp], x1
00124416paddd x0, [rdx]
0012441amovdqa [rsp+16], x0
00124420xor ebx, ebx
00124422mov rbp, r14
00124425sub rbp, 16
00124429mov r15, r12
0012442ccmovb r15, r13
00124430cmovb rbp, r14
00124434setae bl
00124437mov rdi, r15
0012443alea rsi, [rip+0xc88cf]
00124441call core::option::Option<T>::unwrap
00124446shl rbx, 4
0012444aadd rbx, r12
0012444dmovaps x0, [rsp+64]
00124452movups [r15], x0
00124456xor r12l, r12l
00124459mov r14, rbp
0012445csub r14, 16
00124460mov r15, rbx
00124463cmovb r15, r13
00124467cmovb r14, rbp
0012446bsetae r12b
0012446fmov rdi, r15
00124472lea rsi, [rip+0xc88af]
00124479call core::option::Option<T>::unwrap
0012447eshl r12, 4
00124482add r12, rbx
00124485movaps x0, [rsp+32]
0012448amovups [r15], x0
0012448exor r15l, r15l
00124491mov rbp, r14
00124494sub rbp, 16
00124498mov rbx, r12
0012449bcmovb rbx, r13
0012449fcmovb rbp, r14
001244a3setae r15b
001244a7mov rdi, rbx
001244aalea rsi, [rip+0xc888f]
001244b1call core::option::Option<T>::unwrap
001244b6shl r15, 4
001244baadd r15, r12
001244bdmovaps x0, [rsp]
001244c1movups [rbx], x0
001244c4xor r12l, r12l
001244c7mov r14, rbp
001244casub r14, 16
001244cemov rbx, r15
001244d1cmovb rbx, r13
001244d5cmovb r14, rbp
001244d9setae r12b
001244ddmov rdi, rbx
001244e0lea rsi, [rip+0xc8871]
001244e7call core::option::Option<T>::unwrap
001244ecshl r12, 4
001244f0add r12, r15
001244f3movaps x0, [rsp+16]
001244f8movups [rbx], x0
001244fbjmp 0x1243aa
00124500
00124500loc_124500:
00124500add rsp, 648
00124507pop rbx
00124508pop r12
0012450apop r13
0012450cpop r14
0012450epop r15
00124510pop rbp
00124511ret
00123cc9
00123cc9rand_chacha::guts::refill_wide::impl_sse41:
00123cc9push rbp
00123ccapush r15
00123cccpush r14
00123ccepush r13
00123cd0push r12
00123cd2push rbx
00123cd3sub rsp, 648
00123cdamov r12, rsi
00123cddmov rax, [rdi+32]
00123ce1movdqa x0, [rdi]
00123ce5movdqa x7, [rdi+16]
00123ceamovdqa x14, [rdi+32]
00123cf0lea rcx, [rax+1]
00123cf4movdqa x15, x14
00123cf9pinsrd x15, ecx, 0
00123d00shr rcx, 32
00123d04pinsrd x15, ecx, 1
00123d0blea rcx, [rax+2]
00123d0fmovdqa x5, x14
00123d14pinsrd x5, ecx, 0
00123d1ashr rcx, 32
00123d1epinsrd x5, ecx, 1
00123d24add rax, 3
00123d28movdqa x4, x14
00123d2dpinsrd x4, eax, 0
00123d33shr rax, 32
00123d37pinsrd x4, eax, 1
00123d3dmovdqa x3, [rip-0xeb1b5]
00123d45push 6
00123d47pop rax
00123d48movdqa x8, x0
00123d4dmovdqa x9, x0
00123d52movdqa x10, x0
00123d57movdqa x11, x7
00123d5cmovdqa x12, x7
00123d61movdqa x13, x7
00123d66movdqa [rsp+32], x3
00123d6cmovdqa [rsp+64], x3
00123d72movdqa [rsp], x3
00123d77movdqa [rsp+48], x3
00123d7d
00123d7dloc_123d7d:
00123d7dsub eax, 1
00123d80jb 0x1241e0
00123d86movdqa x6, [rsp+48]
00123d8cpaddd x6, x0
00123d90movdqa x3, [rsp+64]
00123d96paddd x3, x8
00123d9bmovdqa x2, [rsp+32]
00123da1paddd x2, x9
00123da6movdqa x1, [rsp]
00123dabpaddd x1, x10
00123db0pxor x14, x6
00123db5pxor x15, x3
00123dbapxor x5, x2
00123dbepxor x4, x1
00123dc2pshuflw x14, x14, -79
00123dc8pshufhw x14, x14, -79
00123dcepshuflw x15, x15, -79
00123dd4pshufhw x15, x15, -79
00123ddapshuflw x5, x5, -79
00123ddfpshufhw x5, x5, -79
00123de4pshuflw x4, x4, -79
00123de9pshufhw x4, x4, -79
00123deepaddd x7, x14
00123df3movdqa [rsp+16], x7
00123df9paddd x11, x15
00123dfepaddd x12, x5
00123e03movdqa [rsp], x12
00123e09paddd x13, x4
00123e0epxor x0, x7
00123e12pxor x8, x11
00123e17pxor x9, x12
00123e1cpxor x10, x13
00123e21movdqa x7, x0
00123e25psrld x7, 20
00123e2apslld x0, 12
00123e2fpor x0, x7
00123e33movdqa x7, x8
00123e38psrld x7, 20
00123e3dpslld x8, 12
00123e43por x8, x7
00123e48movdqa x7, x9
00123e4dpsrld x7, 20
00123e52pslld x9, 12
00123e58por x9, x7
00123e5dmovdqa x7, x10
00123e62psrld x7, 20
00123e67pslld x10, 12
00123e6dpor x10, x7
00123e72paddd x6, x0
00123e76paddd x3, x8
00123e7bpaddd x2, x9
00123e80paddd x1, x10
00123e85movdqa x7, x6
00123e89movdqa x12, x13
00123e8emovdqa x13, x11
00123e93movdqa x11, [rip-0xeb2fc]
00123e9cpshufb x7, x11
00123ea2pshufb x14, x11
00123ea8pxor x14, x7
00123eadmovdqa x7, x3
00123eb1pshufb x7, x11
00123eb7pshufb x15, x11
00123ebdpxor x15, x7
00123ec2movdqa x7, x2
00123ec6pshufb x7, x11
00123eccpshufb x5, x11
00123ed2pxor x5, x7
00123ed6movdqa x7, x1
00123edapshufb x7, x11
00123ee0pshufb x4, x11
00123ee6pxor x4, x7
00123eeamovdqa x11, [rsp+16]
00123ef1paddd x11, x14
00123ef6movdqa [rsp+16], x11
00123efdpaddd x13, x15
00123f02movdqa x7, [rsp]
00123f07paddd x7, x5
00123f0bpaddd x12, x4
00123f10pxor x0, x11
00123f15pxor x8, x13
00123f1apxor x9, x7
00123f1fmovdqa x11, x7
00123f24pxor x10, x12
00123f29movdqa x7, x0
00123f2dpsrld x7, 25
00123f32pslld x0, 7
00123f37por x0, x7
00123f3bmovdqa x7, x8
00123f40psrld x7, 25
00123f45pslld x8, 7
00123f4bpor x8, x7
00123f50movdqa x7, x9
00123f55psrld x7, 25
00123f5apslld x9, 7
00123f60por x9, x7
00123f65movdqa x7, x10
00123f6apsrld x7, 25
00123f6fpslld x10, 7
00123f75por x10, x7
00123f7apshufd x7, x0, 57
00123f7fpshufd x8, x8, 57
00123f85pshufd x9, x9, 57
00123f8bpshufd x10, x10, 57
00123f91pshufd x0, [rsp+16], 78
00123f98movdqa [rsp+32], x0
00123f9epshufd x0, x13, 78
00123fa4movdqa [rsp], x0
00123fa9pshufd x0, x11, 78
00123fafmovdqa [rsp+16], x0
00123fb5pshufd x13, x12, 78
00123fbbpaddd x6, x7
00123fbfpaddd x3, x8
00123fc4paddd x2, x9
00123fc9paddd x1, x10
00123fcepshuflw x0, x6, -79
00123fd3pshufhw x0, x0, -79
00123fd8movdqa x11, [rip-0xeb431]
00123fe1pshufb x14, x11
00123fe7pxor x14, x0
00123fecpshuflw x0, x3, -79
00123ff1pshufhw x0, x0, -79
00123ff6pshufb x15, x11
00123ffcpxor x15, x0
00124001pshuflw x0, x2, -79
00124006pshufhw x0, x0, -79
0012400bpshufb x5, x11
00124011pxor x5, x0
00124015pshuflw x0, x1, -79
0012401apshufhw x0, x0, -79
0012401fpshufb x4, x11
00124025pxor x4, x0
00124029movdqa x11, [rsp+32]
00124030paddd x11, x14
00124035movdqa x12, [rsp]
0012403bpaddd x12, x15
00124040movdqa x0, [rsp+16]
00124046paddd x0, x5
0012404amovdqa [rsp+16], x0
00124050paddd x13, x4
00124055pxor x7, x11
0012405apxor x8, x12
0012405fpxor x9, x0
00124064pxor x10, x13
00124069movdqa x0, x7
0012406dpsrld x0, 20
00124072pslld x7, 12
00124077por x7, x0
0012407bmovdqa x0, x8
00124080psrld x0, 20
00124085pslld x8, 12
0012408bpor x8, x0
00124090movdqa x0, x9
00124095psrld x0, 20
0012409apslld x9, 12
001240a0por x9, x0
001240a5movdqa x0, x10
001240aapsrld x0, 20
001240afpslld x10, 12
001240b5por x10, x0
001240bapaddd x6, x7
001240bepaddd x3, x8
001240c3paddd x2, x9
001240c8paddd x1, x10
001240cdmovdqa [rsp+48], x6
001240d3pxor x14, x6
001240d8movdqa [rsp+64], x3
001240depxor x15, x3
001240e3movdqa [rsp+32], x2
001240e9pxor x5, x2
001240edmovdqa [rsp], x1
001240f2pxor x4, x1
001240f6movdqa x0, [rip-0xeb55e]
001240fepshufb x14, x0
00124104pshufb x15, x0
0012410apshufb x5, x0
0012410fpshufb x4, x0
00124114paddd x11, x14
00124119paddd x12, x15
0012411emovdqa x0, [rsp+16]
00124124paddd x0, x5
00124128paddd x13, x4
0012412dpxor x7, x11
00124132pxor x8, x12
00124137pxor x9, x0
0012413cmovdqa x1, x0
00124140pxor x10, x13
00124145movdqa x0, x7
00124149psrld x0, 25
0012414epslld x7, 7
00124153por x7, x0
00124157movdqa x0, x8
0012415cpsrld x0, 25
00124161pslld x8, 7
00124167por x8, x0
0012416cmovdqa x0, x9
00124171psrld x0, 25
00124176pslld x9, 7
0012417cpor x9, x0
00124181movdqa x0, x10
00124186psrld x0, 25
0012418bpslld x10, 7
00124191por x10, x0
00124196pshufd x0, x7, -109
0012419bpshufd x8, x8, -109
001241a1pshufd x9, x9, -109
001241a7pshufd x10, x10, -109
001241adpshufd x7, x11, 78
001241b3pshufd x11, x12, 78
001241b9pshufd x12, x1, 78
001241bfpshufd x13, x13, 78
001241c5pshufd x14, x14, 57
001241cbpshufd x15, x15, 57
001241d1pshufd x5, x5, 57
001241d6pshufd x4, x4, 57
001241dbjmp 0x123d7d
001241e0
001241e0loc_1241e0:
001241e0mov rdx, [rdi+32]
001241e4lea rax, [rdx+1]
001241e8movdqa x1, [rdi+32]
001241edmovdqa x2, x1
001241f1pinsrd x2, eax, 0
001241f7shr rax, 32
001241fbpinsrd x2, eax, 1
00124201lea rax, [rsp+464]
00124209lea rcx, [rdx+2]
0012420dmovdqa x3, x1
00124211pinsrd x3, ecx, 0
00124217shr rcx, 32
0012421bpinsrd x3, ecx, 1
00124221movdqa [rax-48], x2
00124226movdqa [rax-32], x3
0012422blea rcx, [rdx+3]
0012422fmovdqa x2, x1
00124233pinsrd x2, ecx, 0
00124239shr rcx, 32
0012423dpinsrd x2, ecx, 1
00124243movdqa [rax-16], x2
00124248push 4
0012424apop rcx
0012424badd rdx, rcx
0012424emovdqa x2, x1
00124252pinsrd x2, edx, 0
00124258shr rdx, 32
0012425cpinsrd x2, edx, 1
00124262movdqa [rax-64], x1
00124267movdqa [rdi+32], x2
0012426clea rdx, [rsp+208]
00124274movaps x1, [rsp+48]
00124279movaps [rdx-64], x1
0012427dmovaps x1, [rsp+64]
00124282movaps [rdx-48], x1
00124286movaps x1, [rsp+32]
0012428bmovaps [rdx-32], x1
0012428fmovdqa x1, [rsp]
00124294movdqa [rdx-16], x1
00124299lea rsi, [rsp+272]
001242a1movdqa [rsi-64], x0
001242a6movdqa [rsi-48], x8
001242acmovdqa [rsi-32], x9
001242b2movdqa [rsi-16], x10
001242b8lea r8, [rsp+336]
001242c0movdqa [r8-64], x7
001242c6movdqa [r8-48], x11
001242ccmovdqa [r8-32], x12
001242d2movdqa [r8-16], x13
001242d8lea r9, [rsp+400]
001242e0movdqa [r9-64], x14
001242e6lea r10, [rsp+144]
001242eelea r11, [rsp+472]
001242f6mov [r11], r10
001242f9movdqa [r9-48], x15
001242ffmovdqa [r9-32], x5
00124305movdqa [r9-16], x4
0012430bmov [r11+8], rdx
0012430fmov [r11+16], rdx
00124313mov [r11+24], rsi
00124317and [r11+32], 0
0012431cmov [r11+40], rcx
00124320mov [r11+48], rcx
00124324lea rdx, [rsp+272]
0012432cmov [r11+56], rdx
00124330mov [r11+64], r8
00124334and [r11+72], 0
00124339mov [r11+80], rcx
0012433dmov [r11+88], rcx
00124341lea rdx, [rsp+336]
00124349mov [r11+96], rdx
0012434dmov [r11+104], r9
00124351and [r11+112], 0
00124356mov [r11+120], rcx
0012435amov [r11+128], rcx
00124361lea rdx, [rsp+400]
00124369mov [r11+136], rdx
00124370mov [r11+144], rax
00124377and [r11+152], 0
0012437fmovaps x0, [rdi]
00124382movaps [rsp+48], x0
00124387movaps x0, [rdi+16]
0012438bmovaps [rsp+128], x0
00124393mov [r11+160], rcx
0012439amov [r11+168], rcx
001243a1mov r14l, 256
001243a7xor r13l, r13l
001243aa
001243aaloc_1243aa:
001243aalea rdi, [rsp+88]
001243aflea rsi, [rsp+472]
001243b7call _<core::iter::adapters::zip::Zip<A,B> as core::iter::traits::iterator::Iterator>::next
001243bcmov rax, [rsp+88]
001243c1test rax, rax
001243c4je 0x124500
001243camovdqa x0, [rax]
001243cepaddd x0, [rip-0xeb846]
001243d6movdqa [rsp+64], x0
001243dcmov rax, [rsp+96]
001243e1mov rcx, [rsp+104]
001243e6mov rdx, [rsp+112]
001243ebmov rsi, [rsp+120]
001243f0movdqa x0, [rsi]
001243f4movdqa x1, [rax]
001243f8paddd x1, [rsp+48]
001243femovdqa [rsp+32], x1
00124404movdqa x1, [rcx]
00124408paddd x1, [rsp+128]
00124411movdqa [rsp], x1
00124416paddd x0, [rdx]
0012441amovdqa [rsp+16], x0
00124420xor ebx, ebx
00124422mov rbp, r14
00124425sub rbp, 16
00124429mov r15, r12
0012442ccmovb r15, r13
00124430cmovb rbp, r14
00124434setae bl
00124437mov rdi, r15
0012443alea rsi, [rip+0xc88cf]
00124441call core::option::Option<T>::unwrap
00124446shl rbx, 4
0012444aadd rbx, r12
0012444dmovaps x0, [rsp+64]
00124452movups [r15], x0
00124456xor r12l, r12l
00124459mov r14, rbp
0012445csub r14, 16
00124460mov r15, rbx
00124463cmovb r15, r13
00124467cmovb r14, rbp
0012446bsetae r12b
0012446fmov rdi, r15
00124472lea rsi, [rip+0xc88af]
00124479call core::option::Option<T>::unwrap
0012447eshl r12, 4
00124482add r12, rbx
00124485movaps x0, [rsp+32]
0012448amovups [r15], x0
0012448exor r15l, r15l
00124491mov rbp, r14
00124494sub rbp, 16
00124498mov rbx, r12
0012449bcmovb rbx, r13
0012449fcmovb rbp, r14
001244a3setae r15b
001244a7mov rdi, rbx
001244aalea rsi, [rip+0xc888f]
001244b1call core::option::Option<T>::unwrap
001244b6shl r15, 4
001244baadd r15, r12
001244bdmovaps x0, [rsp]
001244c1movups [rbx], x0
001244c4xor r12l, r12l
001244c7mov r14, rbp
001244casub r14, 16
001244cemov rbx, r15
001244d1cmovb rbx, r13
001244d5cmovb r14, rbp
001244d9setae r12b
001244ddmov rdi, rbx
001244e0lea rsi, [rip+0xc8871]
001244e7call core::option::Option<T>::unwrap
001244ecshl r12, 4
001244f0add r12, r15
001244f3movaps x0, [rsp+16]
001244f8movups [rbx], x0
001244fbjmp 0x1243aa
00124500
00124500loc_124500:
00124500add rsp, 648
00124507pop rbx
00124508pop r12
0012450apop r13
0012450cpop r14
0012450epop r15
00124510pop rbp
00124511ret
00123cc9
00124512
00124512core::option::Option<T>::unwrap:
00124512test rdi, rdi
00124515je 0x12451b
00124517mov rax, rdi
0012451aret
0012451b
0012451bloc_12451b:
0012451bpush rax
0012451cmov rdx, rsi
0012451flea rdi, [rip-0x93528]
00124526push 43
00124528pop rsi
00124529call core::panicking::panic
0012452eud2
00124512
00124512core::option::Option<T>::unwrap:
00124512test rdi, rdi
00124515je 0x12451b
00124517mov rax, rdi
0012451aret
0012451b
0012451bloc_12451b:
0012451bpush rax
0012451cmov rdx, rsi
0012451flea rdi, [rip-0x93528]
00124526push 43
00124528pop rsi
00124529call core::panicking::panic
0012452eud2
00124512
00124530
00124530rand_chacha::guts::refill_wide::impl_ssse3:
00124530push rbp
00124531push r15
00124533push r14
00124535push r13
00124537push r12
00124539push rbx
0012453asub rsp, 440
00124541mov r13, rsi
00124544mov rax, [rdi+32]
00124548movdqa x7, [rdi]
0012454cmovdqa x9, [rdi+16]
00124552movdqa x14, [rdi+32]
00124558lea rcx, [rax+1]
0012455cmovd x15, ecx
00124561shr rcx, 32
00124565movdqa x0, x14
0012456apslldq x0, 8
0012456fshufps x0, x14, -24
00124574movd x1, ecx
00124578por x1, x0
0012457cmovdqa x2, x1
00124580pslldq x2, 8
00124585shufps x2, x1, -24
00124589por x15, x2
0012458elea rcx, [rax+2]
00124592movd x5, ecx
00124596shr rcx, 32
0012459amovd x1, ecx
0012459epor x1, x0
001245a2movdqa x2, x1
001245a6pslldq x2, 8
001245abshufps x2, x1, -24
001245afpor x5, x2
001245b3add rax, 3
001245b7movd x4, eax
001245bbshr rax, 32
001245bfmovd x1, eax
001245c3por x1, x0
001245c7movdqa x0, x1
001245cbpslldq x0, 8
001245d0shufps x0, x1, -24
001245d4por x4, x0
001245d8movdqa x3, [rip-0xeba20]
001245e0push 6
001245e2pop rax
001245e3movdqa x8, x7
001245e8movdqa x12, x7
001245edmovdqa x0, x7
001245f1movdqa x13, x9
001245f6movdqa x10, x9
001245fbmovdqa x11, x9
00124600movdqa [rsp+64], x3
00124606movdqa [rsp+48], x3
0012460cmovdqa [rsp+16], x3
00124612movdqa [rsp+32], x3
00124618
00124618loc_124618:
00124618sub eax, 1
0012461bjb 0x124a7c
00124621movdqa x6, [rsp+32]
00124627paddd x6, x0
0012462bmovdqa x3, [rsp+48]
00124631paddd x3, x12
00124636movdqa x2, [rsp+64]
0012463cpaddd x2, x8
00124641movdqa x1, [rsp+16]
00124647paddd x1, x7
0012464bpxor x14, x6
00124650pxor x15, x3
00124655pxor x5, x2
00124659pxor x4, x1
0012465dpshuflw x14, x14, -79
00124663pshufhw x14, x14, -79
00124669pshuflw x15, x15, -79
0012466fpshufhw x15, x15, -79
00124675pshuflw x5, x5, -79
0012467apshufhw x5, x5, -79
0012467fpshuflw x4, x4, -79
00124684pshufhw x4, x4, -79
00124689paddd x9, x14
0012468epaddd x13, x15
00124693movdqa [rsp], x13
00124699paddd x10, x5
0012469epaddd x11, x4
001246a3movdqa [rsp+16], x11
001246aapxor x0, x9
001246afpxor x12, x13
001246b4pxor x8, x10
001246b9pxor x7, x11
001246bemovdqa x13, x0
001246c3psrld x13, 20
001246c9pslld x0, 12
001246cepor x0, x13
001246d3movdqa x13, x12
001246d8psrld x13, 20
001246depslld x12, 12
001246e4por x12, x13
001246e9movdqa x13, x8
001246eepsrld x13, 20
001246f4pslld x8, 12
001246fapor x8, x13
001246ffmovdqa x13, x7
00124704psrld x13, 20
0012470apslld x7, 12
0012470fpor x7, x13
00124714paddd x6, x0
00124718paddd x3, x12
0012471dpaddd x2, x8
00124722paddd x1, x7
00124726movdqa x13, x6
0012472bmovdqa x11, x10
00124730movdqa x10, x9
00124735movdqa x9, [rip-0xebb6e]
0012473epshufb x13, x9
00124744pshufb x14, x9
0012474apxor x14, x13
0012474fmovdqa x13, x3
00124754pshufb x13, x9
0012475apshufb x15, x9
00124760pxor x15, x13
00124765movdqa x13, x2
0012476apshufb x13, x9
00124770pshufb x5, x9
00124776pxor x5, x13
0012477bmovdqa x13, x1
00124780pshufb x13, x9
00124786pshufb x4, x9
0012478cpxor x4, x13
00124791paddd x10, x14
00124796movdqa x9, [rsp]
0012479cpaddd x9, x15
001247a1movdqa [rsp], x9
001247a7paddd x11, x5
001247acmovdqa x13, [rsp+16]
001247b3paddd x13, x4
001247b8pxor x0, x10
001247bdpxor x12, x9
001247c2pxor x8, x11
001247c7pxor x7, x13
001247ccmovdqa x9, x13
001247d1movdqa x13, x0
001247d6psrld x13, 25
001247dcpslld x0, 7
001247e1por x0, x13
001247e6movdqa x13, x12
001247ebpsrld x13, 25
001247f1pslld x12, 7
001247f7por x12, x13
001247fcmovdqa x13, x8
00124801psrld x13, 25
00124807pslld x8, 7
0012480dpor x8, x13
00124812movdqa x13, x7
00124817psrld x13, 25
0012481dpslld x7, 7
00124822por x7, x13
00124827pshufd x13, x0, 57
0012482dpshufd x12, x12, 57
00124833pshufd x8, x8, 57
00124839pshufd x7, x7, 57
0012483epshufd x0, x10, 78
00124844movdqa [rsp+16], x0
0012484apshufd x0, [rsp], 78
00124850movdqa [rsp], x0
00124855pshufd x10, x11, 78
0012485bpshufd x11, x9, 78
00124861paddd x6, x13
00124866paddd x3, x12
0012486bpaddd x2, x8
00124870paddd x1, x7
00124874pshuflw x0, x6, -79
00124879pshufhw x0, x0, -79
0012487emovdqa x9, [rip-0xebca7]
00124887pshufb x14, x9
0012488dpxor x14, x0
00124892pshuflw x0, x3, -79
00124897pshufhw x0, x0, -79
0012489cpshufb x15, x9
001248a2pxor x15, x0
001248a7pshuflw x0, x2, -79
001248acpshufhw x0, x0, -79
001248b1pshufb x5, x9
001248b7pxor x5, x0
001248bbpshuflw x0, x1, -79
001248c0pshufhw x0, x0, -79
001248c5pshufb x4, x9
001248cbpxor x4, x0
001248cfmovdqa x9, [rsp+16]
001248d6paddd x9, x14
001248dbmovdqa x0, [rsp]
001248e0paddd x0, x15
001248e5movdqa [rsp], x0
001248eapaddd x10, x5
001248efpaddd x11, x4
001248f4pxor x13, x9
001248f9pxor x12, x0
001248fepxor x8, x10
00124903pxor x7, x11
00124908movdqa x0, x13
0012490dpsrld x0, 20
00124912pslld x13, 12
00124918por x13, x0
0012491dmovdqa x0, x12
00124922psrld x0, 20
00124927pslld x12, 12
0012492dpor x12, x0
00124932movdqa x0, x8
00124937psrld x0, 20
0012493cpslld x8, 12
00124942por x8, x0
00124947movdqa x0, x7
0012494bpsrld x0, 20
00124950pslld x7, 12
00124955por x7, x0
00124959paddd x6, x13
0012495epaddd x3, x12
00124963paddd x2, x8
00124968paddd x1, x7
0012496cmovdqa [rsp+32], x6
00124972pxor x14, x6
00124977movdqa [rsp+48], x3
0012497dpxor x15, x3
00124982movdqa [rsp+64], x2
00124988pxor x5, x2
0012498cmovdqa [rsp+16], x1
00124992pxor x4, x1
00124996movdqa x0, [rip-0xebdce]
0012499epshufb x14, x0
001249a4pshufb x15, x0
001249aapshufb x5, x0
001249afpshufb x4, x0
001249b4paddd x9, x14
001249b9movdqa x1, [rsp]
001249bepaddd x1, x15
001249c3paddd x10, x5
001249c8paddd x11, x4
001249cdpxor x13, x9
001249d2pxor x12, x1
001249d7pxor x8, x10
001249dcpxor x7, x11
001249e1movdqa x0, x13
001249e6psrld x0, 25
001249ebpslld x13, 7
001249f1por x13, x0
001249f6movdqa x0, x12
001249fbpsrld x0, 25
00124a00pslld x12, 7
00124a06por x12, x0
00124a0bmovdqa x0, x8
00124a10psrld x0, 25
00124a15pslld x8, 7
00124a1bpor x8, x0
00124a20movdqa x0, x7
00124a24psrld x0, 25
00124a29pslld x7, 7
00124a2epor x7, x0
00124a32pshufd x0, x13, -109
00124a38pshufd x12, x12, -109
00124a3epshufd x8, x8, -109
00124a44pshufd x7, x7, -109
00124a49pshufd x9, x9, 78
00124a4fpshufd x13, x1, 78
00124a55pshufd x10, x10, 78
00124a5bpshufd x11, x11, 78
00124a61pshufd x14, x14, 57
00124a67pshufd x15, x15, 57
00124a6dpshufd x5, x5, 57
00124a72pshufd x4, x4, 57
00124a77jmp 0x124618
00124a7c
00124a7cloc_124a7c:
00124a7cmov rax, [rdi+32]
00124a80lea rcx, [rax+1]
00124a84mov rdx, rcx
00124a87shr rdx, 32
00124a8bmovdqa x2, [rdi+32]
00124a90movdqa [rsp], x2
00124a95movdqa x1, x2
00124a99pslldq x1, 8
00124a9eshufps x1, x2, -24
00124aa2movd x2, edx
00124aa6por x2, x1
00124aaamovdqa x6, x2
00124aaepslldq x6, 8
00124ab3shufps x6, x2, -24
00124ab7movd x2, ecx
00124abbpor x2, x6
00124abfmovdqa [rsp+96], x2
00124ac5lea rcx, [rax+2]
00124ac9mov rdx, rcx
00124accshr rdx, 32
00124ad0movd x2, edx
00124ad4por x2, x1
00124ad8movdqa x6, x2
00124adcpslldq x6, 8
00124ae1shufps x6, x2, -24
00124ae5movaps x2, x6
00124ae8movd x6, ecx
00124aecpor x6, x2
00124af0lea rcx, [rax+3]
00124af4mov rdx, rcx
00124af7shr rdx, 32
00124afbmovd x3, edx
00124affpor x3, x1
00124b03movdqa x2, x3
00124b07pslldq x2, 8
00124b0cshufps x2, x3, -24
00124b10movaps x3, x2
00124b13movd x2, ecx
00124b17por x2, x3
00124b1bmovdqa [rsp+80], x2
00124b21add rax, 4
00124b25mov rcx, rax
00124b28shr rcx, 32
00124b2cmovd x2, ecx
00124b30por x2, x1
00124b34movdqa x3, x2
00124b38pslldq x3, 8
00124b3dshufps x3, x2, -24
00124b41movd x2, eax
00124b45por x2, x3
00124b49movaps x1, [rsp+32]
00124b4emovaps [rsp+112], x1
00124b53movaps x1, [rsp+48]
00124b58movaps [rsp+128], x1
00124b60movaps x1, [rsp+64]
00124b65movaps [rsp+144], x1
00124b6dmovdqa x1, [rsp+16]
00124b73movdqa [rsp+160], x1
00124b7cmovdqa [rsp+176], x0
00124b85movdqa [rsp+192], x12
00124b8fmovdqa [rsp+208], x8
00124b99movdqa [rsp+224], x7
00124ba2movdqa [rsp+240], x9
00124bacmovdqa [rsp+256], x13
00124bb6movdqa [rsp+272], x10
00124bc0movdqa [rsp+288], x11
00124bcamovaps [rsp+304], x14
00124bd3movdqa [rsp+320], x15
00124bddmovdqa [rsp+336], x5
00124be6movdqa [rsp+352], x4
00124befmovaps x0, [rsp]
00124bf3movaps [rsp+368], x0
00124bfbmovaps x0, [rsp+96]
00124c00movaps [rsp+384], x0
00124c08movdqa [rsp+400], x6
00124c11movaps x0, [rdi]
00124c14movaps [rsp+32], x0
00124c19movaps x0, [rsp+80]
00124c1emovaps [rsp+416], x0
00124c26movaps x0, [rdi+16]
00124c2amovaps [rsp+80], x0
00124c2fmovdqa [rdi+32], x2
00124c34mov r12l, 256
00124c3axor r15l, r15l
00124c3d
00124c3dloc_124c3d:
00124c3dcmp r15, 64
00124c41je 0x124d98
00124c47movdqa x0, [rsp+r15+112]
00124c4epaddd x0, [rip-0xec096]
00124c56movdqa [rsp+48], x0
00124c5cmovdqa x0, [rsp+r15+368]
00124c66movdqa x1, [rsp+r15+176]
00124c70paddd x1, [rsp+32]
00124c76movdqa [rsp+64], x1
00124c7cmovdqa x1, [rsp+r15+240]
00124c86paddd x1, [rsp+80]
00124c8cmovdqa [rsp+16], x1
00124c92paddd x0, [rsp+r15+304]
00124c9cmovdqa [rsp], x0
00124ca1xor ebx, ebx
00124ca3mov r14, r12
00124ca6sub r14, 16
00124caamov rbp, r13
00124cadmov eax, 0
00124cb2cmovb rbp, rax
00124cb6cmovb r14, r12
00124cbasetae bl
00124cbdmov rdi, rbp
00124cc0lea rsi, [rip+0xc8049]
00124cc7call core::option::Option<T>::unwrap
00124cccshl rbx, 4
00124cd0add rbx, r13
00124cd3movaps x0, [rsp+48]
00124cd8movups [rbp], x0
00124cdcxor r13l, r13l
00124cdfmov r12, r14
00124ce2sub r12, 16
00124ce6mov rbp, rbx
00124ce9mov eax, 0
00124ceecmovb rbp, rax
00124cf2cmovb r12, r14
00124cf6setae r13b
00124cfamov rdi, rbp
00124cfdlea rsi, [rip+0xc8024]
00124d04call core::option::Option<T>::unwrap
00124d09shl r13, 4
00124d0dadd r13, rbx
00124d10movaps x0, [rsp+64]
00124d15movups [rbp], x0
00124d19xor ebp, ebp
00124d1bmov r14, r12
00124d1esub r14, 16
00124d22mov rbx, r13
00124d25mov eax, 0
00124d2acmovb rbx, rax
00124d2ecmovb r14, r12
00124d32setae bpl
00124d36mov rdi, rbx
00124d39lea rsi, [rip+0xc8000]
00124d40call core::option::Option<T>::unwrap
00124d45shl rbp, 4
00124d49add rbp, r13
00124d4cmovaps x0, [rsp+16]
00124d51movups [rbx], x0
00124d54xor r13l, r13l
00124d57mov r12, r14
00124d5asub r12, 16
00124d5emov rbx, rbp
00124d61mov eax, 0
00124d66cmovb rbx, rax
00124d6acmovb r12, r14
00124d6esetae r13b
00124d72mov rdi, rbx
00124d75lea rsi, [rip+0xc7fdc]
00124d7ccall core::option::Option<T>::unwrap
00124d81shl r13, 4
00124d85add r13, rbp
00124d88movaps x0, [rsp]
00124d8cmovups [rbx], x0
00124d8fadd r15, 16
00124d93jmp 0x124c3d
00124d98
00124d98loc_124d98:
00124d98add rsp, 440
00124d9fpop rbx
00124da0pop r12
00124da2pop r13
00124da4pop r14
00124da6pop r15
00124da8pop rbp
00124da9ret
00124530
00124530rand_chacha::guts::refill_wide::impl_ssse3:
00124530push rbp
00124531push r15
00124533push r14
00124535push r13
00124537push r12
00124539push rbx
0012453asub rsp, 440
00124541mov r13, rsi
00124544mov rax, [rdi+32]
00124548movdqa x7, [rdi]
0012454cmovdqa x9, [rdi+16]
00124552movdqa x14, [rdi+32]
00124558lea rcx, [rax+1]
0012455cmovd x15, ecx
00124561shr rcx, 32
00124565movdqa x0, x14
0012456apslldq x0, 8
0012456fshufps x0, x14, -24
00124574movd x1, ecx
00124578por x1, x0
0012457cmovdqa x2, x1
00124580pslldq x2, 8
00124585shufps x2, x1, -24
00124589por x15, x2
0012458elea rcx, [rax+2]
00124592movd x5, ecx
00124596shr rcx, 32
0012459amovd x1, ecx
0012459epor x1, x0
001245a2movdqa x2, x1
001245a6pslldq x2, 8
001245abshufps x2, x1, -24
001245afpor x5, x2
001245b3add rax, 3
001245b7movd x4, eax
001245bbshr rax, 32
001245bfmovd x1, eax
001245c3por x1, x0
001245c7movdqa x0, x1
001245cbpslldq x0, 8
001245d0shufps x0, x1, -24
001245d4por x4, x0
001245d8movdqa x3, [rip-0xeba20]
001245e0push 6
001245e2pop rax
001245e3movdqa x8, x7
001245e8movdqa x12, x7
001245edmovdqa x0, x7
001245f1movdqa x13, x9
001245f6movdqa x10, x9
001245fbmovdqa x11, x9
00124600movdqa [rsp+64], x3
00124606movdqa [rsp+48], x3
0012460cmovdqa [rsp+16], x3
00124612movdqa [rsp+32], x3
00124618
00124618loc_124618:
00124618sub eax, 1
0012461bjb 0x124a7c
00124621movdqa x6, [rsp+32]
00124627paddd x6, x0
0012462bmovdqa x3, [rsp+48]
00124631paddd x3, x12
00124636movdqa x2, [rsp+64]
0012463cpaddd x2, x8
00124641movdqa x1, [rsp+16]
00124647paddd x1, x7
0012464bpxor x14, x6
00124650pxor x15, x3
00124655pxor x5, x2
00124659pxor x4, x1
0012465dpshuflw x14, x14, -79
00124663pshufhw x14, x14, -79
00124669pshuflw x15, x15, -79
0012466fpshufhw x15, x15, -79
00124675pshuflw x5, x5, -79
0012467apshufhw x5, x5, -79
0012467fpshuflw x4, x4, -79
00124684pshufhw x4, x4, -79
00124689paddd x9, x14
0012468epaddd x13, x15
00124693movdqa [rsp], x13
00124699paddd x10, x5
0012469epaddd x11, x4
001246a3movdqa [rsp+16], x11
001246aapxor x0, x9
001246afpxor x12, x13
001246b4pxor x8, x10
001246b9pxor x7, x11
001246bemovdqa x13, x0
001246c3psrld x13, 20
001246c9pslld x0, 12
001246cepor x0, x13
001246d3movdqa x13, x12
001246d8psrld x13, 20
001246depslld x12, 12
001246e4por x12, x13
001246e9movdqa x13, x8
001246eepsrld x13, 20
001246f4pslld x8, 12
001246fapor x8, x13
001246ffmovdqa x13, x7
00124704psrld x13, 20
0012470apslld x7, 12
0012470fpor x7, x13
00124714paddd x6, x0
00124718paddd x3, x12
0012471dpaddd x2, x8
00124722paddd x1, x7
00124726movdqa x13, x6
0012472bmovdqa x11, x10
00124730movdqa x10, x9
00124735movdqa x9, [rip-0xebb6e]
0012473epshufb x13, x9
00124744pshufb x14, x9
0012474apxor x14, x13
0012474fmovdqa x13, x3
00124754pshufb x13, x9
0012475apshufb x15, x9
00124760pxor x15, x13
00124765movdqa x13, x2
0012476apshufb x13, x9
00124770pshufb x5, x9
00124776pxor x5, x13
0012477bmovdqa x13, x1
00124780pshufb x13, x9
00124786pshufb x4, x9
0012478cpxor x4, x13
00124791paddd x10, x14
00124796movdqa x9, [rsp]
0012479cpaddd x9, x15
001247a1movdqa [rsp], x9
001247a7paddd x11, x5
001247acmovdqa x13, [rsp+16]
001247b3paddd x13, x4
001247b8pxor x0, x10
001247bdpxor x12, x9
001247c2pxor x8, x11
001247c7pxor x7, x13
001247ccmovdqa x9, x13
001247d1movdqa x13, x0
001247d6psrld x13, 25
001247dcpslld x0, 7
001247e1por x0, x13
001247e6movdqa x13, x12
001247ebpsrld x13, 25
001247f1pslld x12, 7
001247f7por x12, x13
001247fcmovdqa x13, x8
00124801psrld x13, 25
00124807pslld x8, 7
0012480dpor x8, x13
00124812movdqa x13, x7
00124817psrld x13, 25
0012481dpslld x7, 7
00124822por x7, x13
00124827pshufd x13, x0, 57
0012482dpshufd x12, x12, 57
00124833pshufd x8, x8, 57
00124839pshufd x7, x7, 57
0012483epshufd x0, x10, 78
00124844movdqa [rsp+16], x0
0012484apshufd x0, [rsp], 78
00124850movdqa [rsp], x0
00124855pshufd x10, x11, 78
0012485bpshufd x11, x9, 78
00124861paddd x6, x13
00124866paddd x3, x12
0012486bpaddd x2, x8
00124870paddd x1, x7
00124874pshuflw x0, x6, -79
00124879pshufhw x0, x0, -79
0012487emovdqa x9, [rip-0xebca7]
00124887pshufb x14, x9
0012488dpxor x14, x0
00124892pshuflw x0, x3, -79
00124897pshufhw x0, x0, -79
0012489cpshufb x15, x9
001248a2pxor x15, x0
001248a7pshuflw x0, x2, -79
001248acpshufhw x0, x0, -79
001248b1pshufb x5, x9
001248b7pxor x5, x0
001248bbpshuflw x0, x1, -79
001248c0pshufhw x0, x0, -79
001248c5pshufb x4, x9
001248cbpxor x4, x0
001248cfmovdqa x9, [rsp+16]
001248d6paddd x9, x14
001248dbmovdqa x0, [rsp]
001248e0paddd x0, x15
001248e5movdqa [rsp], x0
001248eapaddd x10, x5
001248efpaddd x11, x4
001248f4pxor x13, x9
001248f9pxor x12, x0
001248fepxor x8, x10
00124903pxor x7, x11
00124908movdqa x0, x13
0012490dpsrld x0, 20
00124912pslld x13, 12
00124918por x13, x0
0012491dmovdqa x0, x12
00124922psrld x0, 20
00124927pslld x12, 12
0012492dpor x12, x0
00124932movdqa x0, x8
00124937psrld x0, 20
0012493cpslld x8, 12
00124942por x8, x0
00124947movdqa x0, x7
0012494bpsrld x0, 20
00124950pslld x7, 12
00124955por x7, x0
00124959paddd x6, x13
0012495epaddd x3, x12
00124963paddd x2, x8
00124968paddd x1, x7
0012496cmovdqa [rsp+32], x6
00124972pxor x14, x6
00124977movdqa [rsp+48], x3
0012497dpxor x15, x3
00124982movdqa [rsp+64], x2
00124988pxor x5, x2
0012498cmovdqa [rsp+16], x1
00124992pxor x4, x1
00124996movdqa x0, [rip-0xebdce]
0012499epshufb x14, x0
001249a4pshufb x15, x0
001249aapshufb x5, x0
001249afpshufb x4, x0
001249b4paddd x9, x14
001249b9movdqa x1, [rsp]
001249bepaddd x1, x15
001249c3paddd x10, x5
001249c8paddd x11, x4
001249cdpxor x13, x9
001249d2pxor x12, x1
001249d7pxor x8, x10
001249dcpxor x7, x11
001249e1movdqa x0, x13
001249e6psrld x0, 25
001249ebpslld x13, 7
001249f1por x13, x0
001249f6movdqa x0, x12
001249fbpsrld x0, 25
00124a00pslld x12, 7
00124a06por x12, x0
00124a0bmovdqa x0, x8
00124a10psrld x0, 25
00124a15pslld x8, 7
00124a1bpor x8, x0
00124a20movdqa x0, x7
00124a24psrld x0, 25
00124a29pslld x7, 7
00124a2epor x7, x0
00124a32pshufd x0, x13, -109
00124a38pshufd x12, x12, -109
00124a3epshufd x8, x8, -109
00124a44pshufd x7, x7, -109
00124a49pshufd x9, x9, 78
00124a4fpshufd x13, x1, 78
00124a55pshufd x10, x10, 78
00124a5bpshufd x11, x11, 78
00124a61pshufd x14, x14, 57
00124a67pshufd x15, x15, 57
00124a6dpshufd x5, x5, 57
00124a72pshufd x4, x4, 57
00124a77jmp 0x124618
00124a7c
00124a7cloc_124a7c:
00124a7cmov rax, [rdi+32]
00124a80lea rcx, [rax+1]
00124a84mov rdx, rcx
00124a87shr rdx, 32
00124a8bmovdqa x2, [rdi+32]
00124a90movdqa [rsp], x2
00124a95movdqa x1, x2
00124a99pslldq x1, 8
00124a9eshufps x1, x2, -24
00124aa2movd x2, edx
00124aa6por x2, x1
00124aaamovdqa x6, x2
00124aaepslldq x6, 8
00124ab3shufps x6, x2, -24
00124ab7movd x2, ecx
00124abbpor x2, x6
00124abfmovdqa [rsp+96], x2
00124ac5lea rcx, [rax+2]
00124ac9mov rdx, rcx
00124accshr rdx, 32
00124ad0movd x2, edx
00124ad4por x2, x1
00124ad8movdqa x6, x2
00124adcpslldq x6, 8
00124ae1shufps x6, x2, -24
00124ae5movaps x2, x6
00124ae8movd x6, ecx
00124aecpor x6, x2
00124af0lea rcx, [rax+3]
00124af4mov rdx, rcx
00124af7shr rdx, 32
00124afbmovd x3, edx
00124affpor x3, x1
00124b03movdqa x2, x3
00124b07pslldq x2, 8
00124b0cshufps x2, x3, -24
00124b10movaps x3, x2
00124b13movd x2, ecx
00124b17por x2, x3
00124b1bmovdqa [rsp+80], x2
00124b21add rax, 4
00124b25mov rcx, rax
00124b28shr rcx, 32
00124b2cmovd x2, ecx
00124b30por x2, x1
00124b34movdqa x3, x2
00124b38pslldq x3, 8
00124b3dshufps x3, x2, -24
00124b41movd x2, eax
00124b45por x2, x3
00124b49movaps x1, [rsp+32]
00124b4emovaps [rsp+112], x1
00124b53movaps x1, [rsp+48]
00124b58movaps [rsp+128], x1
00124b60movaps x1, [rsp+64]
00124b65movaps [rsp+144], x1
00124b6dmovdqa x1, [rsp+16]
00124b73movdqa [rsp+160], x1
00124b7cmovdqa [rsp+176], x0
00124b85movdqa [rsp+192], x12
00124b8fmovdqa [rsp+208], x8
00124b99movdqa [rsp+224], x7
00124ba2movdqa [rsp+240], x9
00124bacmovdqa [rsp+256], x13
00124bb6movdqa [rsp+272], x10
00124bc0movdqa [rsp+288], x11
00124bcamovaps [rsp+304], x14
00124bd3movdqa [rsp+320], x15
00124bddmovdqa [rsp+336], x5
00124be6movdqa [rsp+352], x4
00124befmovaps x0, [rsp]
00124bf3movaps [rsp+368], x0
00124bfbmovaps x0, [rsp+96]
00124c00movaps [rsp+384], x0
00124c08movdqa [rsp+400], x6
00124c11movaps x0, [rdi]
00124c14movaps [rsp+32], x0
00124c19movaps x0, [rsp+80]
00124c1emovaps [rsp+416], x0
00124c26movaps x0, [rdi+16]
00124c2amovaps [rsp+80], x0
00124c2fmovdqa [rdi+32], x2
00124c34mov r12l, 256
00124c3axor r15l, r15l
00124c3d
00124c3dloc_124c3d:
00124c3dcmp r15, 64
00124c41je 0x124d98
00124c47movdqa x0, [rsp+r15+112]
00124c4epaddd x0, [rip-0xec096]
00124c56movdqa [rsp+48], x0
00124c5cmovdqa x0, [rsp+r15+368]
00124c66movdqa x1, [rsp+r15+176]
00124c70paddd x1, [rsp+32]
00124c76movdqa [rsp+64], x1
00124c7cmovdqa x1, [rsp+r15+240]
00124c86paddd x1, [rsp+80]
00124c8cmovdqa [rsp+16], x1
00124c92paddd x0, [rsp+r15+304]
00124c9cmovdqa [rsp], x0
00124ca1xor ebx, ebx
00124ca3mov r14, r12
00124ca6sub r14, 16
00124caamov rbp, r13
00124cadmov eax, 0
00124cb2cmovb rbp, rax
00124cb6cmovb r14, r12
00124cbasetae bl
00124cbdmov rdi, rbp
00124cc0lea rsi, [rip+0xc8049]
00124cc7call core::option::Option<T>::unwrap
00124cccshl rbx, 4
00124cd0add rbx, r13
00124cd3movaps x0, [rsp+48]
00124cd8movups [rbp], x0
00124cdcxor r13l, r13l
00124cdfmov r12, r14
00124ce2sub r12, 16
00124ce6mov rbp, rbx
00124ce9mov eax, 0
00124ceecmovb rbp, rax
00124cf2cmovb r12, r14
00124cf6setae r13b
00124cfamov rdi, rbp
00124cfdlea rsi, [rip+0xc8024]
00124d04call core::option::Option<T>::unwrap
00124d09shl r13, 4
00124d0dadd r13, rbx
00124d10movaps x0, [rsp+64]
00124d15movups [rbp], x0
00124d19xor ebp, ebp
00124d1bmov r14, r12
00124d1esub r14, 16
00124d22mov rbx, r13
00124d25mov eax, 0
00124d2acmovb rbx, rax
00124d2ecmovb r14, r12
00124d32setae bpl
00124d36mov rdi, rbx
00124d39lea rsi, [rip+0xc8000]
00124d40call core::option::Option<T>::unwrap
00124d45shl rbp, 4
00124d49add rbp, r13
00124d4cmovaps x0, [rsp+16]
00124d51movups [rbx], x0
00124d54xor r13l, r13l
00124d57mov r12, r14
00124d5asub r12, 16
00124d5emov rbx, rbp
00124d61mov eax, 0
00124d66cmovb rbx, rax
00124d6acmovb r12, r14
00124d6esetae r13b
00124d72mov rdi, rbx
00124d75lea rsi, [rip+0xc7fdc]
00124d7ccall core::option::Option<T>::unwrap
00124d81shl r13, 4
00124d85add r13, rbp
00124d88movaps x0, [rsp]
00124d8cmovups [rbx], x0
00124d8fadd r15, 16
00124d93jmp 0x124c3d
00124d98
00124d98loc_124d98:
00124d98add rsp, 440
00124d9fpop rbx
00124da0pop r12
00124da2pop r13
00124da4pop r14
00124da6pop r15
00124da8pop rbp
00124da9ret
00124530
Loading..