File akira_3298d203c2acb68c474e5fdad8379181890b4403d6491c523c13730129be3f75.elf
Function:
    00110464
    00110464core::array::_<impl core::ops::index::IndexMut<I> for [T; N]>::index_mut:
    00110464mov r8, rdx
    00110467mov rdx, rdi
    0011046apush 32
    0011046cpop rcx
    0011046dxor edi, edi
    0011046fjmp 0x1103f1
    00110464
    00110474
    00110474crypto::cryptoutil::write_u32v_le:
    00110474cmp rsi, 16
    00110478jne 0x11048e
    0011047axor eax, eax
    0011047c
    0011047cloc_11047c:
    0011047ccmp rax, 4
    00110480je 0x11048d
    00110482mov ecx, [rdx+4*rax]
    00110485mov [rdi+4*rax], ecx
    00110488inc rax
    0011048bjmp 0x11047c
    0011048d
    0011048dloc_11048d:
    0011048dret
    0011048e
    0011048eloc_11048e:
    0011048epush rax
    0011048flea rdi, [rip-0xc56df]
    00110496lea rdx, [rip+0xdae93]
    0011049dpush 46
    0011049fpop rsi
    001104a0call core::panicking::panic
    001104a5ud2
    00110474
    001104a7
    001104a7_<crypto::buffer::RefReadBuffer as crypto::buffer::ReadBuffer>::take_next:
    001104a7push r14
    001104a9push rbx
    001104aapush rax
    001104abmov rbx, rsi
    001104aemov r14, rdi
    001104b1mov rdx, [rdi]
    001104b4mov rcx, [rdi+8]
    001104b8mov rdi, [rdi+16]
    001104bcadd rbx, rdi
    001104bflea r8, [rip+0xdae22]
    001104c6mov rsi, rbx
    001104c9call _<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::index
    001104cemov [r14+16], rbx
    001104d2add rsp, 8
    001104d6pop rbx
    001104d7pop r14
    001104d9ret
    001104a7
    001104da
    001104dacore::array::_<impl core::ops::index::Index<I> for [T; N]>::index:
    001104damov r8, rcx
    001104ddmov rax, rdi
    001104e0push 16
    001104e2pop rcx
    001104e3mov rdi, rsi
    001104e6mov rsi, rdx
    001104e9mov rdx, rax
    001104ecjmp 0x128f5e
    001104da
    001104f1
    001104f1crypto::cryptoutil::read_u32_le:
    001104f1cmp rsi, 4
    001104f5jne 0x1104fa
    001104f7mov eax, [rdi]
    001104f9ret
    001104fa
    001104faloc_1104fa:
    001104fapush rax
    001104fblea rdi, [rip-0xc571d]
    00110502lea rdx, [rip+0xdae3f]
    00110509push 34
    0011050bpop rsi
    0011050ccall core::panicking::panic
    00110511ud2
    001104f1
    00110513
    00110513core::array::_<impl core::ops::index::IndexMut<I> for [T; N]>::index_mut:
    00110513mov r8, rcx
    00110516mov rax, rdi
    00110519push 80
    0011051bpop rcx
    0011051cmov rdi, rsi
    0011051fmov rsi, rdx
    00110522mov rdx, rax
    00110525jmp 0x1103f1
    00110513
    0011052a
    0011052acore::array::_<impl core::ops::index::Index<I> for [T; N]>::index:
    0011052amov r8, rcx
    0011052dmov rax, rdi
    00110530push 32
    00110532pop rcx
    00110533mov rdi, rsi
    00110536mov rsi, rdx
    00110539mov rdx, rax
    0011053cjmp 0x128f5e
    0011052a
    00110541
    00110541_<[Z; 32] as zeroize::Zeroize>::zeroize:
    00110541xor eax, eax
    00110543
    00110543loc_110543:
    00110543cmp rax, 32
    00110547je 0x110552
    00110549mov [rdi+rax], 0
    0011054dinc rax
    00110550jmp 0x110543
    00110552
    00110552loc_110552:
    00110552ret
    00110541
    00110553
    00110553_<curve25519_dalek::scalar::Scalar as core::ops::index::Index<usize>>::index:
    00110553cmp rsi, 31
    00110557ja 0x110560
    00110559add rdi, rsi
    0011055cmov rax, rdi
    0011055fret
    00110560
    00110560loc_110560:
    00110560push rax
    00110561push 32
    00110563pop rax
    00110564mov rdi, rsi
    00110567mov rsi, rax
    0011056acall core::panicking::panic_bounds_check
    0011056fud2
    00110553
    00110571
    00110571curve25519_dalek::backend::serial::u64::field::FieldElement51::as_bytes:
    00110571push rbp
    00110572push r15
    00110574push r14
    00110576push r13
    00110578push r12
    0011057apush rbx
    0011057bmov [rsp-32], rdi
    00110580mov rax, [rsi]
    00110583mov r9, [rsi+8]
    00110587mov r8, [rsi+16]
    0011058bmov rdx, [rsi+24]
    0011058fmov rcx, [rsi+32]
    00110593mov rsi, rax
    00110596shr rsi, 51
    0011059amov rdi, r9
    0011059dshr rdi, 51
    001105a1mov r10, r8
    001105a4shr r10, 51
    001105a8mov r11, rdx
    001105abshr r11, 51
    001105afmov rbx, rcx
    001105b2shr rbx, 51
    001105b6mov r14, 0x7ffffffffffff
    001105c0and rax, r14
    001105c3and r9, r14
    001105c6add r9, rsi
    001105c9and r8, r14
    001105ccadd r8, rdi
    001105cfand rdx, r14
    001105d2add rdx, r10
    001105d5and rcx, r14
    001105d8add rcx, r11
    001105dbimul rsi, rbx, 19
    001105dflea r10, [rsi+rax]
    001105e3add rax, rsi
    001105e6add rax, 19
    001105eashr rax, 51
    001105eeadd rax, r9
    001105f1shr rax, 51
    001105f5add rax, r8
    001105f8shr rax, 51
    001105fcadd rax, rdx
    001105ffshr rax, 51
    00110603add rax, rcx
    00110606shr rax, 51
    0011060aimul r11, rax, 19
    0011060eadd r11, r10
    00110611mov rsi, r11
    00110614mov r10, r11
    00110617shr r10, 51
    0011061badd r10, r9
    0011061emov rax, r10
    00110621shr rax, 51
    00110625add rax, r8
    00110628mov r13, rax
    0011062bshr r13, 51
    0011062fadd r13, rdx
    00110632mov r15, r13
    00110635shr r15, 51
    00110639add r15, rcx
    0011063cshr rsi, 48
    00110640and esi, 7
    00110643lea ecx, [rsi+8*r10]
    00110647mov [rsp-64], ecx
    0011064bmov [rsp-68], r10l
    00110650mov [rsp-52], r10l
    00110655mov [rsp-56], r10l
    0011065amov [rsp-40], r10
    0011065fmov [rsp-48], r10
    00110664shr r10, 45
    00110668and r10l, 63
    0011066cmov ebx, eax
    0011066eshl ebx, 6
    00110671or ebx, r10l
    00110674mov [rsp-60], eax
    00110678mov [rsp-72], eax
    0011067cmov r14l, eax
    0011067fmov r9, rax
    00110682mov r8, rax
    00110685mov r10, rax
    00110688shr rax, 50
    0011068cand eax, 1
    0011068flea ebp, [rax+2*r13]
    00110693mov edi, r13l
    00110696mov esi, r13l
    00110699mov edx, r13l
    0011069cmov rax, r13
    0011069fmov r12, r13
    001106a2shr r13, 47
    001106a6and r13l, 15
    001106aamov ecx, r15l
    001106adshl ecx, 4
    001106b0or ecx, r13l
    001106b3shr rax, 31
    001106b7movd x11, eax
    001106bcshr edx, 23
    001106bfmovd x3, edx
    001106c3shr esi, 15
    001106c6movd x4, esi
    001106cashr edi, 7
    001106cdmovd x1, edi
    001106d1shr r8, 34
    001106d5movd x5, r8l
    001106dashr r9, 26
    001106demovd x0, r9l
    001106e3movd x2, ebp
    001106e7movdqa [rsp-24], x2
    001106edshr r10, 42
    001106f1movd x7, r10l
    001106f6mov rax, r15
    001106f9shr rax, 28
    001106fdmovd x12, eax
    00110702mov eax, r15l
    00110705shr eax, 20
    00110708movd x2, eax
    0011070cmov rax, r15
    0011070fshr rax, 36
    00110713movd x8, eax
    00110718mov eax, r15l
    0011071bmov edx, r15l
    0011071eshr r15, 44
    00110722and r15l, 127
    00110726movd x15, r15l
    0011072bshr edx, 12
    0011072emovd x13, edx
    00110733shr eax, 4
    00110736movd x10, eax
    0011073bmovd x14, ecx
    00110740shr r12, 39
    00110744movd x9, r12l
    00110749mov eax, r11l
    0011074cshr eax, 24
    0011074fpunpcklbw x3, x11
    00110754movd x11, eax
    00110759mov eax, r11l
    0011075cshr eax, 16
    0011075fpunpcklbw x1, x4
    00110763movd x4, eax
    00110767mov eax, r11l
    0011076ashr eax, 8
    0011076dpunpcklwd x1, x3
    00110771movd x6, eax
    00110775mov rax, r11
    00110778shr rax, 40
    0011077cpunpcklbw x0, x5
    00110780movd x5, eax
    00110784punpcklbw x7, [rsp-24]
    0011078amovd x3, r11l
    0011078fshr r11, 32
    00110793punpcklwd x0, x7
    00110797movd x7, r11l
    0011079cpunpckldq x0, x1
    001107a0movd x1, [rsp-64]
    001107a6mov eax, [rsp-68]
    001107aashr eax, 5
    001107adpunpcklbw x2, x12
    001107b2movd x12, eax
    001107b7mov rax, [rsp-48]
    001107bcshr rax, 37
    001107c0punpcklbw x8, x15
    001107c5movd x15, eax
    001107camov rax, [rsp-40]
    001107cfshr rax, 29
    001107d3punpcklwd x2, x8
    001107d8movd x8, eax
    001107ddmov eax, [rsp-56]
    001107e1shr eax, 21
    001107e4punpcklbw x10, x13
    001107e9movd x13, eax
    001107eemov eax, [rsp-52]
    001107f2shr eax, 13
    001107f5punpcklbw x9, x14
    001107famovd x14, eax
    001107ffshr r14l, 18
    00110803punpcklwd x9, x10
    00110808movd x10, r14l
    0011080dmov eax, [rsp-72]
    00110811shr eax, 10
    00110814punpckldq x9, x2
    00110819movd x2, eax
    0011081dpunpcklqdq x0, x9
    00110822movd x9, ebx
    00110827mov eax, [rsp-60]
    0011082bshr eax, 2
    0011082epunpcklbw x4, x11
    00110833movd x11, eax
    00110838punpcklbw x3, x6
    0011083cpunpcklwd x3, x4
    00110840punpcklbw x7, x5
    00110844punpcklbw x1, x12
    00110849punpcklwd x7, x1
    0011084dpunpckldq x3, x7
    00110851punpcklbw x8, x15
    00110856punpcklbw x14, x13
    0011085bpunpcklwd x14, x8
    00110860punpcklbw x2, x10
    00110865punpcklbw x9, x11
    0011086apunpcklwd x9, x2
    0011086fpunpckldq x14, x9
    00110874punpcklqdq x3, x14
    00110879mov rax, [rsp-32]
    0011087emovdqu [rax], x3
    00110882movdqu [rax+16], x0
    00110887pop rbx
    00110888pop r12
    0011088apop r13
    0011088cpop r14
    0011088epop r15
    00110890pop rbp
    00110891ret
    00110571
    00110892
    00110892_<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Add<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::add:
    00110892mov rax, [rsi+32]
    00110896mov [rsp-8], rax
    0011089bmovups x0, [rsi]
    0011089emovups x1, [rsi+16]
    001108a2movaps [rsp-24], x1
    001108a7movaps [rsp-40], x0
    001108acxor eax, eax
    001108ae
    001108aeloc_1108ae:
    001108aecmp rax, 5
    001108b2je 0x1108c2
    001108b4mov rcx, [rdx+8*rax]
    001108b8add [rsp+8*rax-40], rcx
    001108bdinc rax
    001108c0jmp 0x1108ae
    001108c2
    001108c2loc_1108c2:
    001108c2mov rax, [rsp-8]
    001108c7mov [rdi+32], rax
    001108cbmovaps x0, [rsp-40]
    001108d0movaps x1, [rsp-24]
    001108d5movups [rdi+16], x1
    001108d9movups [rdi], x0
    001108dcret
    00110892
    001108dd
    001108dd_<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Sub<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::sub:
    001108ddpush r15
    001108dfpush r14
    001108e1push rbx
    001108e2mov rax, 0x7ffffffffffff0
    001108ecmov rcx, [rsi]
    001108efadd rcx, rax
    001108f2sub rcx, [rdx]
    001108f5mov r8, [rsi+8]
    001108f9add r8, rax
    001108fcsub r8, [rdx+8]
    00110900mov r9, [rsi+16]
    00110904add r9, rax
    00110907sub r9, [rdx+16]
    0011090bmov r10, [rsi+24]
    0011090fadd r10, rax
    00110912sub r10, [rdx+24]
    00110916add rax, [rsi+32]
    0011091asub rax, [rdx+32]
    0011091eadd rcx, -288
    00110925mov rdx, rcx
    00110928shr rdx, 51
    0011092cmov rsi, r8
    0011092fshr rsi, 51
    00110933mov r11, r9
    00110936shr r11, 51
    0011093amov rbx, r10
    0011093dshr rbx, 51
    00110941mov r14, rax
    00110944shr r14, 51
    00110948mov r15, 0x7ffffffffffff
    00110952and rcx, r15
    00110955and r8, r15
    00110958add r8, rdx
    0011095band r9, r15
    0011095eadd r9, rsi
    00110961and r10, r15
    00110964add r10, r11
    00110967and rax, r15
    0011096aadd rax, rbx
    0011096dimul rdx, r14, 19
    00110971add rdx, rcx
    00110974mov [rdi], rdx
    00110977mov [rdi+8], r8
    0011097bmov [rdi+16], r9
    0011097fmov [rdi+24], r10
    00110983mov [rdi+32], rax
    00110987pop rbx
    00110988pop r14
    0011098apop r15
    0011098cret
    001108dd
    0011098d
    0011098dcurve25519_dalek::field::_<impl curve25519_dalek::backend::serial::u64::field::FieldElement51>::invert:
    0011098dpush rbp
    0011098epush r15
    00110990push r14
    00110992push r13
    00110994push r12
    00110996push rbx
    00110997sub rsp, 872
    0011099emov r14, rsi
    001109a1mov [rsp+8], rdi
    001109a6lea r15, [rsp+192]
    001109aemov rdi, r15
    001109b1call curve25519_dalek::backend::serial::u64::field::FieldElement51::square
    001109b6lea r12, [rsp+112]
    001109bbmov rdi, r12
    001109bemov rsi, r15
    001109c1call curve25519_dalek::backend::serial::u64::field::FieldElement51::square
    001109c6lea r13, [rsp+232]
    001109cemov rdi, r13
    001109d1mov rsi, r12
    001109d4call curve25519_dalek::backend::serial::u64::field::FieldElement51::square
    001109d9lea r12, [rsp+272]
    001109e1mov rdi, r12
    001109e4mov rsi, r14
    001109e7mov rdx, r13
    001109eacall _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Mul<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::mul
    001109eflea r14, [rsp+312]
    001109f7mov rdi, r14
    001109famov rsi, r15
    001109fdmov rdx, r12
    00110a00call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Mul<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::mul
    00110a05lea r15, [rsp+352]
    00110a0dmov rdi, r15
    00110a10mov rsi, r14
    00110a13call curve25519_dalek::backend::serial::u64::field::FieldElement51::square
    00110a18lea r13, [rsp+392]
    00110a20mov rdi, r13
    00110a23mov rsi, r12
    00110a26mov rdx, r15
    00110a29call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Mul<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::mul
    00110a2elea r12, [rsp+432]
    00110a36push 5
    00110a38pop rdx
    00110a39mov rdi, r12
    00110a3cmov rsi, r13
    00110a3fcall curve25519_dalek::backend::serial::u64::field::FieldElement51::pow2k
    00110a44lea r15, [rsp+472]
    00110a4cmov rdi, r15
    00110a4fmov rsi, r12
    00110a52mov rdx, r13
    00110a55call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Mul<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::mul
    00110a5alea r13, [rsp+512]
    00110a62push 10
    00110a64pop r12
    00110a66mov rdi, r13
    00110a69mov rsi, r15
    00110a6cmov edx, r12l
    00110a6fcall curve25519_dalek::backend::serial::u64::field::FieldElement51::pow2k
    00110a74lea rbx, [rsp+552]
    00110a7cmov rdi, rbx
    00110a7fmov rsi, r13
    00110a82mov rdx, r15
    00110a85call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Mul<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::mul
    00110a8alea r13, [rsp+592]
    00110a92push 20
    00110a94pop rdx
    00110a95mov rdi, r13
    00110a98mov rsi, rbx
    00110a9bcall curve25519_dalek::backend::serial::u64::field::FieldElement51::pow2k
    00110aa0lea rbp, [rsp+632]
    00110aa8mov rdi, rbp
    00110aabmov rsi, r13
    00110aaemov rdx, rbx
    00110ab1call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Mul<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::mul
    00110ab6lea rbx, [rsp+672]
    00110abemov rdi, rbx
    00110ac1mov rsi, rbp
    00110ac4mov edx, r12l
    00110ac7call curve25519_dalek::backend::serial::u64::field::FieldElement51::pow2k
    00110acclea r12, [rsp+712]
    00110ad4mov rdi, r12
    00110ad7mov rsi, rbx
    00110adamov rdx, r15
    00110addcall _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Mul<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::mul
    00110ae2lea rbx, [rsp+752]
    00110aeapush 50
    00110aecpop r15
    00110aeemov rdi, rbx
    00110af1mov rsi, r12
    00110af4mov edx, r15l
    00110af7call curve25519_dalek::backend::serial::u64::field::FieldElement51::pow2k
    00110afclea rbp, [rsp+792]
    00110b04mov rdi, rbp
    00110b07mov rsi, rbx
    00110b0amov rdx, r12
    00110b0dcall _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Mul<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::mul
    00110b12lea rbx, [rsp+832]
    00110b1apush 100
    00110b1cpop rdx
    00110b1dmov rdi, rbx
    00110b20mov rsi, rbp
    00110b23call curve25519_dalek::backend::serial::u64::field::FieldElement51::pow2k
    00110b28lea r13, [rsp+16]
    00110b2dmov rdi, r13
    00110b30mov rsi, rbx
    00110b33mov rdx, rbp
    00110b36call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Mul<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::mul
    00110b3blea rbx, [rsp+64]
    00110b40mov rdi, rbx
    00110b43mov rsi, r13
    00110b46mov edx, r15l
    00110b49call curve25519_dalek::backend::serial::u64::field::FieldElement51::pow2k
    00110b4elea r15, [rsp+112]
    00110b53mov rdi, r15
    00110b56mov rsi, rbx
    00110b59mov rdx, r12
    00110b5ccall _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Mul<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::mul
    00110b61mov rax, [r14+32]
    00110b65mov [r15+72], rax
    00110b69movups x0, [r14]
    00110b6dmovups x1, [r14+16]
    00110b72movups [r15+56], x1
    00110b77movups [r15+40], x0
    00110b7cmov rax, [r15+32]
    00110b80mov [r13+32], rax
    00110b84movups x0, [r15]
    00110b88movups x1, [r15+16]
    00110b8dmovaps [r13+16], x1
    00110b92movaps [r13], x0
    00110b97mov rax, [r15+72]
    00110b9bmov [rbx+32], rax
    00110b9fmovups x0, [r15+40]
    00110ba4movups x1, [r15+56]
    00110ba9movaps [rbx+16], x1
    00110badmovaps [rbx], x0
    00110bb0lea rbx, [rsp+112]
    00110bb5lea rsi, [rsp+16]
    00110bbamov rdi, rbx
    00110bbdpush 5
    00110bbfpop rdx
    00110bc0call curve25519_dalek::backend::serial::u64::field::FieldElement51::pow2k
    00110bc5lea rdx, [rsp+64]
    00110bcamov rdi, [rsp+8]
    00110bcfmov rsi, rbx
    00110bd2call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Mul<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::mul
    00110bd7add rsp, 872
    00110bdepop rbx
    00110bdfpop r12
    00110be1pop r13
    00110be3pop r14
    00110be5pop r15
    00110be7pop rbp
    00110be8ret
    0011098d
    00110be9
    00110be9_<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Mul<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::mul:
    00110be9push rbp
    00110beapush r15
    00110becpush r14
    00110beepush r13
    00110bf0push r12
    00110bf2push rbx
    00110bf3sub rsp, 144
    00110bfamov r12, [rdx]
    00110bfdmov rax, [rdx+8]
    00110c01mov [rsp-64], rax
    00110c06imul r9, rax, 19
    00110c0amov rax, [rdx+16]
    00110c0emov [rsp-120], rax
    00110c13imul r15, rax, 19
    00110c17mov [rsp-88], r15
    00110c1cmov rax, [rdx+24]
    00110c20mov [rsp-112], rax
    00110c25imul rbx, rax, 19
    00110c29mov [rsp-96], rbx
    00110c2emov r11, [rdx+32]
    00110c32mov [rsp+136], r11
    00110c3amov rcx, [rsi]
    00110c3dmov [rsp-80], rcx
    00110c42mov rax, r12
    00110c45mul rcx
    00110c48mov rcx, rax
    00110c4bmov r8, rdx
    00110c4emov rax, [rsi+32]
    00110c52mov rbp, rax
    00110c55mul r9
    00110c58mov r9, rax
    00110c5bmov r10, rdx
    00110c5eimul r14, r11, 19
    00110c62add r9, rcx
    00110c65adc r10, r8
    00110c68mov r13, [rsi+24]
    00110c6cmov rax, r13
    00110c6fmov [rsp-128], r13
    00110c74mul r15
    00110c77mov r8, rdx
    00110c7amov r11, rax
    00110c7dadd r11, r9
    00110c80adc r8, r10
    00110c83mov rcx, [rsi+16]
    00110c87mov rax, rcx
    00110c8amul rbx
    00110c8dmov r9, rdx
    00110c90mov rbx, rax
    00110c93add rbx, r11
    00110c96adc r9, r8
    00110c99mov r10, [rsi+8]
    00110c9dmov rax, r10
    00110ca0mul r14
    00110ca3mov [rsp-104], r14
    00110ca8add rax, rbx
    00110cabmov [rsp+48], rax
    00110cb0adc rdx, r9
    00110cb3mov [rsp+40], rdx
    00110cb8mov rax, r10
    00110cbbmov r8, r12
    00110cbemov [rsp-72], r12
    00110cc3mul r12
    00110cc6mov [rsp+104], rdx
    00110ccbmov [rsp+56], rax
    00110cd0mov r15, [rsp-80]
    00110cd5mov rax, r15
    00110cd8mov r12, [rsp-64]
    00110cddmul r12
    00110ce0mov [rsp+16], rdx
    00110ce5mov [rsp-8], rax
    00110ceamov rax, rbp
    00110cedmul [rsp-88]
    00110cf2mov r11, rdx
    00110cf5mov rsi, rax
    00110cf8mov rax, r13
    00110cfbmov r9, [rsp-96]
    00110d00mul r9
    00110d03mov [rsp-24], rdx
    00110d08mov [rsp-48], rax
    00110d0dmov rax, rcx
    00110d10mul r14
    00110d13mov [rsp-32], rdx
    00110d18mov [rsp-56], rax
    00110d1dmov rax, rcx
    00110d20mul r8
    00110d23mov [rsp-88], rdx
    00110d28mov [rsp+96], rax
    00110d2dmov rax, r10
    00110d30mul r12
    00110d33mov [rsp+128], rdx
    00110d3bmov [rsp+88], rax
    00110d40mov rax, r15
    00110d43mov r14, r15
    00110d46mov r15, [rsp-120]
    00110d4bmul r15
    00110d4emov [rsp+32], rdx
    00110d53mov [rsp+8], rax
    00110d58mov rax, rbp
    00110d5bmov r13, rbp
    00110d5emul r9
    00110d61mov rbx, rdx
    00110d64mov r8, rax
    00110d67mov rbp, [rsp-128]
    00110d6cmov rax, rbp
    00110d6fmov r9, [rsp-104]
    00110d74mul r9
    00110d77mov [rsp-16], rdx
    00110d7cmov [rsp-40], rax
    00110d81mov rax, rbp
    00110d84mov rbp, [rsp-72]
    00110d89mul rbp
    00110d8cmov [rsp-96], rdx
    00110d91mov [rsp+80], rax
    00110d96mov rax, rcx
    00110d99mul r12
    00110d9cmov [rsp+120], rdx
    00110da1mov [rsp+72], rax
    00110da6mov rax, r10
    00110da9mul r15
    00110dacmov [rsp+112], rdx
    00110db1mov [rsp+64], rax
    00110db6mov rax, r14
    00110db9mov r15, [rsp-112]
    00110dbemul r15
    00110dc1mov [rsp+24], rdx
    00110dc6mov [rsp], rax
    00110dcamov rax, r13
    00110dcdmul r9
    00110dd0mov r14, rdx
    00110dd3mov r9, rax
    00110dd6mov rax, r13
    00110dd9mul rbp
    00110ddcmov [rsp-104], rdx
    00110de1mov rbp, rax
    00110de4mov rax, [rsp-128]
    00110de9mul r12
    00110decmov r12, rdx
    00110defmov r13, rax
    00110df2mov rax, rcx
    00110df5mul [rsp-120]
    00110dfamov [rsp-120], rdx
    00110dffmov [rsp-128], rax
    00110e04mov rax, r10
    00110e07mul r15
    00110e0amov r15, rdx
    00110e0dmov [rsp-112], rax
    00110e12mov rax, [rsp-80]
    00110e17mul [rsp+136]
    00110e1fmov r10, [rsp+48]
    00110e24mov rcx, [rsp+40]
    00110e29shld rcx, r10, 13
    00110e2eadd rsi, [rsp-8]
    00110e33adc r11, [rsp+16]
    00110e38add rsi, [rsp-48]
    00110e3dadc r11, [rsp-24]
    00110e42add rsi, [rsp-56]
    00110e47adc r11, [rsp-32]
    00110e4cadd rsi, [rsp+56]
    00110e51adc r11, [rsp+104]
    00110e56add rsi, rcx
    00110e59adc r11, 0
    00110e5dshld r11, rsi, 13
    00110e62mov rcx, 0x7ffffffffffff
    00110e6cand r10, rcx
    00110e6fadd r8, [rsp+8]
    00110e74adc rbx, [rsp+32]
    00110e79add r8, [rsp-40]
    00110e7eadc rbx, [rsp-16]
    00110e83add r8, [rsp+96]
    00110e88adc rbx, [rsp-88]
    00110e8dadd r8, [rsp+88]
    00110e92adc rbx, [rsp+128]
    00110e9aadd r8, r11
    00110e9dadc rbx, 0
    00110ea1shld rbx, r8, 13
    00110ea6and rsi, rcx
    00110ea9add r9, [rsp]
    00110eadadc r14, [rsp+24]
    00110eb2add r9, [rsp+80]
    00110eb7adc r14, [rsp-96]
    00110ebcadd r9, [rsp+72]
    00110ec1adc r14, [rsp+120]
    00110ec6add r9, [rsp+64]
    00110ecbadc r14, [rsp+112]
    00110ed0add r9, rbx
    00110ed3adc r14, 0
    00110ed7and r8, rcx
    00110edashld r14, r9, 13
    00110edfadd rax, rbp
    00110ee2adc rdx, [rsp-104]
    00110ee7add rax, r13
    00110eeaadc rdx, r12
    00110eedadd rax, [rsp-128]
    00110ef2adc rdx, [rsp-120]
    00110ef7add rax, [rsp-112]
    00110efcadc rdx, r15
    00110effadd rax, r14
    00110f02adc rdx, 0
    00110f06shld rdx, rax, 13
    00110f0bimul rdx, rdx, 19
    00110f0fadd rdx, r10
    00110f12mov r10, rdx
    00110f15shr r10, 51
    00110f19add r10, rsi
    00110f1cand r9, rcx
    00110f1fand rax, rcx
    00110f22and rdx, rcx
    00110f25mov [rdi], rdx
    00110f28mov [rdi+8], r10
    00110f2cmov [rdi+16], r8
    00110f30mov [rdi+24], r9
    00110f34mov [rdi+32], rax
    00110f38add rsp, 144
    00110f3fpop rbx
    00110f40pop r12
    00110f42pop r13
    00110f44pop r14
    00110f46pop r15
    00110f48pop rbp
    00110f49ret
    00110be9
    00110f4a
    00110f4acurve25519_dalek::backend::serial::u64::field::FieldElement51::pow2k:
    00110f4apush rbp
    00110f4bpush r15
    00110f4dpush r14
    00110f4fpush r13
    00110f51push r12
    00110f53push rbx
    00110f54mov [rsp-16], rdi
    00110f59mov r11, [rsi]
    00110f5cmov r10, [rsi+8]
    00110f60mov r8, [rsi+16]
    00110f64mov rcx, [rsi+24]
    00110f68mov rdi, [rsi+32]
    00110f6c
    00110f6cloc_110f6c:
    00110f6cmov [rsp-20], edx
    00110f70imul r14, rcx, 19
    00110f74imul rbx, rdi, 19
    00110f78mov rax, r11
    00110f7bmul r11
    00110f7emov r12, rdx
    00110f81mov r15, rax
    00110f84mov rax, r10
    00110f87mul rbx
    00110f8amov [rsp-40], rbx
    00110f8fmov r13, rdx
    00110f92mov rbp, rax
    00110f95mov rax, r14
    00110f98mul r8
    00110f9bmov rsi, rdx
    00110f9emov r9, rax
    00110fa1add r9, rbp
    00110fa4adc rsi, r13
    00110fa7shld rsi, r9, 1
    00110facadd r9, r9
    00110fafadd r9, r15
    00110fb2adc rsi, r12
    00110fb5mov rax, r14
    00110fb8mul rcx
    00110fbbmov [rsp-48], rdx
    00110fc0mov rbp, rax
    00110fc3mov rax, r11
    00110fc6mul r10
    00110fc9mov r13, rdx
    00110fccmov r12, rax
    00110fcfmov rax, r8
    00110fd2mul rbx
    00110fd5mov rbx, rdx
    00110fd8mov r15, rax
    00110fdbadd r15, r12
    00110fdeadc rbx, r13
    00110fe1shld rbx, r15, 1
    00110fe6add r15, r15
    00110fe9add r15, rbp
    00110fecadc rbx, [rsp-48]
    00110ff1mov rax, r10
    00110ff4mul r10
    00110ff7mov [rsp-48], rdx
    00110ffcmov [rsp-32], rax
    00111001mov rax, r11
    00111004mul r8
    00111007mov rbp, rdx
    0011100amov r12, rax
    0011100dmov rax, r14
    00111010mul rdi
    00111013mov r14, rdx
    00111016mov r13, rax
    00111019add r13, r12
    0011101cadc r14, rbp
    0011101fshld r14, r13, 1
    00111024add r13, r13
    00111027add r13, [rsp-32]
    0011102cadc r14, [rsp-48]
    00111031mov rax, [rsp-40]
    00111036mul rdi
    00111039mov [rsp-40], rdx
    0011103emov [rsp-48], rax
    00111043mov rax, r11
    00111046mul rcx
    00111049mov [rsp-32], rdx
    0011104emov [rsp-8], rax
    00111053mov rax, r10
    00111056mul r8
    00111059mov r12, rdx
    0011105cmov rbp, rax
    0011105fadd rbp, [rsp-8]
    00111064adc r12, [rsp-32]
    00111069shld r12, rbp, 1
    0011106eadd rbp, rbp
    00111071add rbp, [rsp-48]
    00111076adc r12, [rsp-40]
    0011107bmov rax, r8
    0011107emul r8
    00111081mov [rsp-40], rdx
    00111086mov [rsp-48], rax
    0011108bmov rax, r11
    0011108emul rdi
    00111091mov r8, rdx
    00111094mov r11, rax
    00111097mov rax, r10
    0011109amul rcx
    0011109dadd rax, r11
    001110a0adc rdx, r8
    001110a3shld rdx, rax, 1
    001110a8add rax, rax
    001110abadd rax, [rsp-48]
    001110b0adc rdx, [rsp-40]
    001110b5shld rsi, r9, 13
    001110baadd rsi, r15
    001110bdadc rbx, 0
    001110c1shld rbx, rsi, 13
    001110c6mov r15, 0x7ffffffffffff
    001110d0and r9, r15
    001110d3add rbx, r13
    001110d6adc r14, 0
    001110daand rsi, r15
    001110ddshld r14, rbx, 13
    001110e2add r14, rbp
    001110e5adc r12, 0
    001110e9mov r8, rbx
    001110ecand r8, r15
    001110efshld r12, r14, 13
    001110f4add r12, rax
    001110f7adc rdx, 0
    001110fbshld rdx, r12, 13
    00111100imul r11, rdx, 19
    00111104mov edx, [rsp-20]
    00111108add r11, r9
    0011110bmov r10, r11
    0011110eshr r10, 51
    00111112add r10, rsi
    00111115mov rcx, r14
    00111118and rcx, r15
    0011111bmov rdi, r12
    0011111eand rdi, r15
    00111121and r11, r15
    00111124dec edx
    00111126jne 0x110f6c
    0011112cmov rax, [rsp-16]
    00111131mov [rax], r11
    00111134mov [rax+8], r10
    00111138mov [rax+16], r8
    0011113cmov [rax+24], rcx
    00111140mov [rax+32], rdi
    00111144pop rbx
    00111145pop r12
    00111147pop r13
    00111149pop r14
    0011114bpop r15
    0011114dpop rbp
    0011114eret
    00110f4a
    0011114f
    0011114fcurve25519_dalek::backend::serial::u64::field::FieldElement51::square:
    0011114fpush 1
    00111151pop rdx
    00111152jmp 0x110f4a
    0011114f
    00111157
    00111157curve25519_dalek::window::LookupTable<T>::select:
    00111157push rbp
    00111158push r15
    0011115apush r14
    0011115cpush r13
    0011115epush r12
    00111160push rbx
    00111161sub rsp, 264
    00111168mov r14, rsi
    0011116bmov [rsp+8], rdi
    00111170movsx eax, dl
    00111173movsx ebx, dl
    00111176shr ebx, 7
    00111179mov ecx, ebx
    0011117badd ecx, eax
    0011117dmovups x0, [rip-0xc5a6c]
    00111184lea r12, [rsp+56]
    00111189movaps [r12-24], x0
    0011118fmovups x1, [rip-0xc5a8e]
    00111196and [r12-8], 0
    0011119cmovaps [r12-40], x1
    001111a2and [r12+32], 0
    001111a8movups [r12], x1
    001111admovups [r12+16], x0
    001111b3xorps x0, x0
    001111b6movaps [r12+40], x0
    001111bcmovaps [r12+56], x0
    001111c2and [r12+72], 0
    001111c8push -8
    001111capop r13
    001111ccmov ebp, ebx
    001111cexor ebp, ecx
    001111d0lea r15, [rsp+16]
    001111d5
    001111d5loc_1111d5:
    001111d5test r13, r13
    001111d8je 0x111209
    001111dalea eax, [r13+9]
    001111dexor eax, ebp
    001111e0mov ecx, eax
    001111e2neg ecx
    001111e4xor edi, edi
    001111e6or cx, ax
    001111e9setns dil
    001111edcall subtle::black_box
    001111f2movzx edx, al
    001111f5mov rdi, r15
    001111f8mov rsi, r14
    001111fbcall _<curve25519_dalek::backend::serial::curve_models::AffineNielsPoint as subtle::ConditionallySelectable>::conditional_assign
    00111200inc r13
    00111203add r14, 120
    00111207jmp 0x1111d5
    00111209
    00111209loc_111209:
    00111209and bl, 1
    0011120cmovzx edi, bl
    0011120fcall subtle::black_box
    00111214mov rcx, [r12+32]
    00111219lea rsi, [rsp+144]
    00111221mov [rsi+32], rcx
    00111225movups x0, [r12]
    0011122amov rcx, 0x7ffffffffffff0
    00111234lea r14, [rsp+16]
    00111239mov rdx, rcx
    0011123csub rdx, [r14+80]
    00111240movups x1, [r12+16]
    00111246mov rdi, rcx
    00111249sub rdi, [r14+88]
    0011124dmovaps [rsi+16], x1
    00111251mov r8, rcx
    00111254sub r8, [r14+96]
    00111258movaps [rsi], x0
    0011125bmov r9, rcx
    0011125esub r9, [r14+104]
    00111262add rdx, -288
    00111269sub rcx, [r14+112]
    0011126dmov r10, rdx
    00111270shr r10, 51
    00111274mov r11, rdi
    00111277shr r11, 51
    0011127bmov rbx, r8
    0011127eshr rbx, 51
    00111282mov r15, r9
    00111285shr r15, 51
    00111289mov r12, rcx
    0011128cshr r12, 51
    00111290mov r13, 0x7ffffffffffff
    0011129aand rdx, r13
    0011129dand rdi, r13
    001112a0add rdi, r10
    001112a3and r8, r13
    001112a6add r8, r11
    001112a9and r9, r13
    001112acadd r9, rbx
    001112afand rcx, r13
    001112b2add rcx, r15
    001112b5imul r10, r12, 19
    001112b9add r10, rdx
    001112bcmov [rsi+80], r10
    001112c0mov [rsi+88], rdi
    001112c4mov [rsi+96], r8
    001112c8mov [rsi+104], r9
    001112ccmov [rsi+112], rcx
    001112d0movaps x0, [r14]
    001112d4movaps x1, [r14+16]
    001112d9movups [rsi+40], x0
    001112ddmovups [rsi+56], x1
    001112e1mov rcx, [r14+32]
    001112e5mov [rsi+72], rcx
    001112e9movzx edx, al
    001112ecmov rdi, r14
    001112efcall _<curve25519_dalek::backend::serial::curve_models::AffineNielsPoint as subtle::ConditionallySelectable>::conditional_assign
    001112f4push 15
    001112f6pop rcx
    001112f7mov rdi, [rsp+8]
    001112fcmov rsi, r14
    001112ffrep movsq [rdi], [rsi]
    00111302add rsp, 264
    00111309pop rbx
    0011130apop r12
    0011130cpop r13
    0011130epop r14
    00111310pop r15
    00111312pop rbp
    00111313ret
    00111157
    00111314
    00111314curve25519_dalek::backend::serial::curve_models::_<impl core::ops::arith::Add<&curve25519_dalek::backend::serial::curve_models::AffineNielsPoint> for &curve25519_dalek::edwards::EdwardsPoint>::add:
    00111314push rbp
    00111315push r15
    00111317push r14
    00111319push r13
    0011131bpush r12
    0011131dpush rbx
    0011131esub rsp, 248
    00111325mov r12, rdx
    00111328mov r14, rsi
    0011132bmov rbx, rdi
    0011132elea r15, [rsi+40]
    00111332lea r13, [rsp+48]
    00111337mov rdi, r13
    0011133amov rsi, r15
    0011133dmov rdx, r14
    00111340call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Add<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::add
    00111345lea rbp, [rsp+88]
    0011134amov rdi, rbp
    0011134dmov rsi, r15
    00111350mov rdx, r14
    00111353call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Sub<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::sub
    00111358lea rdi, [rsp+8]
    0011135dmov rsi, r13
    00111360mov rdx, r12
    00111363call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Mul<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::mul
    00111368lea rdx, [r12+40]
    0011136dlea r15, [rsp+128]
    00111375mov rdi, r15
    00111378mov rsi, rbp
    0011137bcall _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Mul<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::mul
    00111380lea rsi, [r14+120]
    00111384add r12, 80
    00111388lea r13, [rsp+168]
    00111390mov rdi, r13
    00111393mov rdx, r12
    00111396call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Mul<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::mul
    0011139badd r14, 80
    0011139flea r12, [rsp+208]
    001113a7mov rdi, r12
    001113aamov rsi, r14
    001113admov rdx, r14
    001113b0call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Add<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::add
    001113b5mov rdi, rbx
    001113b8lea r14, [rsp+8]
    001113bdmov rsi, r14
    001113c0mov rdx, r15
    001113c3call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Sub<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::sub
    001113c8lea rdi, [rbx+40]
    001113ccmov rsi, r14
    001113cfmov rdx, r15
    001113d2call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Add<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::add
    001113d7lea rdi, [rbx+80]
    001113dbmov rsi, r12
    001113demov rdx, r13
    001113e1call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Add<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::add
    001113e6add rbx, 120
    001113eamov rdi, rbx
    001113edmov rsi, r12
    001113f0mov rdx, r13
    001113f3call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Sub<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::sub
    001113f8add rsp, 248
    001113ffpop rbx
    00111400pop r12
    00111402pop r13
    00111404pop r14
    00111406pop r15
    00111408pop rbp
    00111409ret
    00111314
    0011140a
    0011140acurve25519_dalek::backend::serial::curve_models::CompletedPoint::as_extended:
    0011140apush r15
    0011140cpush r14
    0011140epush r13
    00111410push r12
    00111412push rbx
    00111413mov rbx, rsi
    00111416mov r14, rdi
    00111419lea r15, [rsi+120]
    0011141dmov rdx, r15
    00111420call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Mul<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::mul
    00111425lea r12, [rbx+40]
    00111429lea r13, [rbx+80]
    0011142dlea rdi, [r14+40]
    00111431mov rsi, r12
    00111434mov rdx, r13
    00111437call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Mul<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::mul
    0011143clea rdi, [r14+80]
    00111440mov rsi, r13
    00111443mov rdx, r15
    00111446call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Mul<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::mul
    0011144badd r14, 120
    0011144fmov rdi, r14
    00111452mov rsi, rbx
    00111455mov rdx, r12
    00111458pop rbx
    00111459pop r12
    0011145bpop r13
    0011145dpop r14
    0011145fpop r15
    00111461jmp 0x110be9
    0011140a
    00111466
    00111466_<curve25519_dalek::backend::serial::curve_models::AffineNielsPoint as subtle::ConditionallySelectable>::conditional_assign:
    00111466push r15
    00111468push r14
    0011146apush rbx
    0011146bmov ebx, edx
    0011146dmov r14, rsi
    00111470mov r15, rdi
    00111473call _<curve25519_dalek::backend::serial::u64::field::FieldElement51 as subtle::ConditionallySelectable>::conditional_assign
    00111478lea rdi, [r15+40]
    0011147clea rsi, [r14+40]
    00111480mov edx, ebx
    00111482call _<curve25519_dalek::backend::serial::u64::field::FieldElement51 as subtle::ConditionallySelectable>::conditional_assign
    00111487add r15, 80
    0011148badd r14, 80
    0011148fmov rdi, r15
    00111492mov rsi, r14
    00111495mov edx, ebx
    00111497pop rbx
    00111498pop r14
    0011149apop r15
    0011149cjmp 0x1114a1
    00111466
    001114a1
    001114a1_<curve25519_dalek::backend::serial::u64::field::FieldElement51 as subtle::ConditionallySelectable>::conditional_assign:
    001114a1movzx eax, dl
    001114a4neg rax
    001114a7mov rcx, [rdi]
    001114aamov rdx, [rdi+8]
    001114aemov r8, [rsi]
    001114b1xor r8, rcx
    001114b4and r8, rax
    001114b7xor r8, rcx
    001114bamov [rdi], r8
    001114bdmov rcx, [rsi+8]
    001114c1xor rcx, rdx
    001114c4and rcx, rax
    001114c7xor rcx, rdx
    001114camov [rdi+8], rcx
    001114cemov rcx, [rdi+16]
    001114d2mov rdx, [rsi+16]
    001114d6xor rdx, rcx
    001114d9and rdx, rax
    001114dcxor rdx, rcx
    001114dfmov [rdi+16], rdx
    001114e3mov rcx, [rdi+24]
    001114e7mov rdx, [rsi+24]
    001114ebxor rdx, rcx
    001114eeand rdx, rax
    001114f1xor rdx, rcx
    001114f4mov [rdi+24], rdx
    001114f8mov rcx, [rdi+32]
    001114fcmov rdx, [rsi+32]
    00111500xor rdx, rcx
    00111503and rdx, rax
    00111506xor rdx, rcx
    00111509mov [rdi+32], rdx
    0011150dret
    001114a1
    0011150e
    0011150ecurve25519_dalek::backend::serial::curve_models::ProjectivePoint::double:
    0011150epush rbp
    0011150fpush r15
    00111511push r14
    00111513push r13
    00111515push r12
    00111517push rbx
    00111518sub rsp, 296
    0011151fmov r12, rsi
    00111522mov rbx, rdi
    00111525lea rdi, [rsp+96]
    0011152acall curve25519_dalek::backend::serial::u64::field::FieldElement51::square
    0011152flea r13, [r12+40]
    00111534lea rdi, [rsp+136]
    0011153cmov rsi, r13
    0011153fcall curve25519_dalek::backend::serial::u64::field::FieldElement51::square
    00111544lea rsi, [r12+80]
    00111549lea rdi, [rsp+8]
    0011154epush 1
    00111550pop rdx
    00111551call curve25519_dalek::backend::serial::u64::field::FieldElement51::pow2k
    00111556xor eax, eax
    00111558
    00111558loc_111558:
    00111558cmp rax, 5
    0011155cje 0x111568
    0011155eshl [rsp+8*rax+8], 1
    00111563inc rax
    00111566jmp 0x111558
    00111568
    00111568loc_111568:
    00111568lea r14, [rsp+8]
    0011156dmov rax, [r14+32]
    00111571lea rcx, [rsp+48]
    00111576mov [rcx+32], rax
    0011157amovups x0, [r14]
    0011157emovups x1, [r14+16]
    00111583movaps [rcx+16], x1
    00111587movaps [rcx], x0
    0011158alea rbp, [rsp+176]
    00111592mov rdi, rbp
    00111595mov rsi, r12
    00111598mov rdx, r13
    0011159bcall _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Add<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::add
    001115a0lea r12, [rsp+216]
    001115a8mov rdi, r12
    001115abmov rsi, rbp
    001115aecall curve25519_dalek::backend::serial::u64::field::FieldElement51::square
    001115b3lea r13, [rsp+256]
    001115bblea rbp, [rsp+136]
    001115c3lea r15, [rsp+96]
    001115c8mov rdi, r13
    001115cbmov rsi, rbp
    001115cemov rdx, r15
    001115d1call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Add<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::add
    001115d6mov rdi, r14
    001115d9mov rsi, rbp
    001115dcmov rdx, r15
    001115dfcall _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Sub<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::sub
    001115e4mov rdi, rbx
    001115e7mov rsi, r12
    001115eamov rdx, r13
    001115edcall _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Sub<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::sub
    001115f2mov rax, [r13+32]
    001115f6mov [rbx+72], rax
    001115famovups x0, [r13]
    001115ffmovups x1, [r13+16]
    00111604movups [rbx+56], x1
    00111608movups [rbx+40], x0
    0011160cmovups x0, [r14]
    00111610movups x1, [r14+16]
    00111615movups [rbx+80], x0
    00111619movups [rbx+96], x1
    0011161dmov rax, [r14+32]
    00111621mov [rbx+112], rax
    00111625add rbx, 120
    00111629mov rdi, rbx
    0011162clea rsi, [rsp+48]
    00111631mov rdx, r14
    00111634call _<&curve25519_dalek::backend::serial::u64::field::FieldElement51 as core::ops::arith::Sub<&curve25519_dalek::backend::serial::u64::field::FieldElement51>>::sub
    00111639add rsp, 296
    00111640pop rbx
    00111641pop r12
    00111643pop r13
    00111645pop r14
    00111647pop r15
    00111649pop rbp
    0011164aret
    0011150e
    0011164b
    0011164b_<core::iter::adapters::map::Map<I,F> as core::iter::traits::double_ended::DoubleEndedIterator>::next_back:
    0011164bmov rdx, [rdi+16]
    0011164fmov al, 2
    00111651cmp [rdi+8], rdx
    00111655jae 0x11167f
    00111657lea rcx, [rdx-1]
    0011165bmov [rdi+16], rcx
    0011165fmov rax, rcx
    00111662shr rax, 3
    00111666cmp rdx, 257
    0011166djae 0x111680
    0011166fmov rdx, [rdi]
    00111672movzx eax, [rdx+rax]
    00111676and ecx, 7
    00111679bt eax, ecx
    0011167csetb al
    0011167f
    0011167floc_11167f:
    0011167fret
    00111680
    00111680loc_111680:
    00111680push rax
    00111681lea rdx, [rip+0xd9ee8]
    00111688push 32
    0011168apop rsi
    0011168bmov rdi, rax
    0011168ecall core::panicking::panic_bounds_check
    00111693ud2
    0011164b
    00111695
    00111695subtle::ConditionallySelectable::conditional_swap:
    00111695push r15
    00111697push r14
    00111699push rbx
    0011169asub rsp, 80
    0011169emov ebx, edx
    001116a0mov r14, rsi
    001116a3mov rax, rdi
    001116a6push 10
    001116a8pop rcx
    001116a9mov r15, rsp
    001116acmov rdi, r15
    001116afmov rsi, rax
    001116b2rep movsq [rdi], [rsi]
    001116b5mov rdi, rax
    001116b8mov rsi, r14
    001116bbcall subtle::ConditionallySelectable::conditional_assign
    001116c0mov rdi, r14
    001116c3mov rsi, r15
    001116c6mov edx, ebx
    001116c8call subtle::ConditionallySelectable::conditional_assign
    001116cdadd rsp, 80
    001116d1pop rbx
    001116d2pop r14
    001116d4pop r15
    001116d6ret
    00111695
    001116d7
    001116d7subtle::ConditionallySelectable::conditional_assign:
    001116d7push r15
    001116d9push r14
    001116dbpush r12
    001116ddpush rbx
    001116desub rsp, 88
    001116e2mov ebx, edx
    001116e4mov r14, rsi
    001116e7mov r15, rdi
    001116ealea r12, [rsp+8]
    001116efmov rdi, r12
    001116f2mov rsi, r15
    001116f5mov rdx, r14
    001116f8mov ecx, ebx
    001116facall _<curve25519_dalek::backend::serial::u64::field::FieldElement51 as subtle::ConditionallySelectable>::conditional_select
    001116fflea rsi, [r15+40]
    00111703add r14, 40
    00111707lea rdi, [rsp+48]
    0011170cmov rdx, r14
    0011170fmov ecx, ebx
    00111711call _<curve25519_dalek::backend::serial::u64::field::FieldElement51 as subtle::ConditionallySelectable>::conditional_select
    00111716push 10
    00111718pop rcx
    00111719mov rdi, r15
    0011171cmov rsi, r12
    0011171frep movsq [rdi], [rsi]
    00111722add rsp, 88
    00111726pop rbx
    00111727pop r12
    00111729pop r14
    0011172bpop r15
    0011172dret
    001116d7
    0011172e
    0011172e_<curve25519_dalek::backend::serial::u64::field::FieldElement51 as subtle::ConditionallySelectable>::conditional_select:
    0011172emovzx eax, cl
    00111731neg rax
    00111734mov r8, [rsi]
    00111737mov r9, [rsi+8]
    0011173bmov rcx, [rdx]
    0011173exor rcx, r8
    00111741and rcx, rax
    00111744xor rcx, r8
    00111747mov r8, [rdx+8]
    0011174bxor r8, r9
    0011174eand r8, rax
    00111751xor r8, r9
    00111754mov r9, [rsi+16]
    00111758mov r10, [rdx+16]
    0011175cxor r10, r9
    0011175fand r10, rax
    00111762xor r10, r9
    00111765mov r9, [rsi+24]
    00111769mov r11, [rdx+24]
    0011176dxor r11, r9
    00111770and r11, rax
    00111773xor r11, r9
    00111776mov rsi, [rsi+32]
    0011177amov rdx, [rdx+32]
    0011177exor rdx, rsi
    00111781and rdx, rax
    00111784xor rdx, rsi
    00111787mov [rdi], rcx
    0011178amov [rdi+8], r8
    0011178emov [rdi+16], r10
    00111792mov [rdi+24], r11
    00111796mov [rdi+32], rdx
    0011179aret
    0011172e
    0011179b
    0011179bfork::fork:
    0011179bpush rax
    0011179ccall [rip+0x10048e]
    001117a2cmp eax, -1
    001117a5je 0x1117b2
    001117a7test eax, eax
    001117a9jne 0x1117c1
    001117abpush 1
    001117adpop rcx
    001117aexor eax, eax
    001117b0jmp 0x1117c7
    001117b2
    001117b2loc_1117b2:
    001117b2push 2
    001117b4pop rcx
    001117b5mov rax, 0xffffffff00000000
    001117bfjmp 0x1117c7
    001117c1
    001117c1loc_1117c1:
    001117c1shl rax, 32
    001117c5xor ecx, ecx
    001117c7
    001117c7loc_1117c7:
    001117c7or rax, rcx
    001117capop rcx
    001117cbret
    0011179b
    001117cc
    001117cc_<getrandom::error::Error as core::fmt::Debug>::fmt:
    001117ccpush r14
    001117cepush rbx
    001117cfsub rsp, 184
    001117d6mov rbx, rsi
    001117d9mov r14, rdi
    001117dcmov rdi, [rsi+32]
    001117e0mov rax, [rsi+40]
    001117e4lea rsi, [rip-0x817c6]
    001117ebpush 5
    001117edpop rdx
    001117eecall [rax+24]
    001117f1mov [rsp+8], rbx
    001117f6mov [rsp+16], al
    001117famov [rsp+17], 0
    001117ffmov ebx, [r14]
    00111802test ebx, ebx
    00111804js 0x11188b
    0011180alea r14, [rsp+28]
    0011180fmov [r14], ebx
    00111812lea rsi, [rip-0xd8031]
    00111819lea r8, [rip+0xd9d98]
    00111820lea rdi, [rsp+8]
    00111825push 8
    00111827pop rdx
    00111828mov rcx, r14
    0011182bcall core::fmt::builders::DebugStruct::field
    00111830xorps x0, x0
    00111833lea rsi, [rsp+48]
    00111838movaps [rsi+112], x0
    0011183cmovaps [rsi+96], x0
    00111840movaps [rsi+80], x0
    00111844movaps [rsi+64], x0
    00111848movaps [rsi+48], x0
    0011184cmovaps [rsi+32], x0
    00111850movaps [rsi+16], x0
    00111854movaps [rsi], x0
    00111857mov edi, [r14]
    0011185acall getrandom::error::os_err
    0011185ftest rax, rax
    00111862je 0x111903
    00111868lea rcx, [rsp+32]
    0011186dmov [rcx], rax
    00111870mov [rcx+8], rdx
    00111874lea rsi, [rip-0xbe8fb]
    0011187blea r8, [rip+0xd9d56]
    00111882lea rdi, [rsp+8]
    00111887push 11
    00111889jmp 0x1118fd
    0011188b
    0011188bloc_11188b:
    0011188bmov edi, ebx
    0011188dcall getrandom::error::internal_desc
    00111892test rax, rax
    00111895je 0x1118e1
    00111897lea r14, [rsp+48]
    0011189cmov [r14], rax
    0011189fmov [r14+8], rdx
    001118a3lea rcx, [rsp+32]
    001118a8mov [rcx], ebx
    001118aalea rsi, [rip-0xbe926]
    001118b1lea r8, [rip+0xd9d40]
    001118b8lea rbx, [rsp+8]
    001118bdpush 13
    001118bfpop rdx
    001118c0mov rdi, rbx
    001118c3call core::fmt::builders::DebugStruct::field
    001118c8lea rsi, [rip-0xbe94f]
    001118cflea r8, [rip+0xd9d02]
    001118d6push 11
    001118d8pop rdx
    001118d9mov rdi, rbx
    001118dcmov rcx, r14
    001118dfjmp 0x1118fe
    001118e1
    001118e1loc_1118e1:
    001118e1lea rcx, [rsp+48]
    001118e6mov [rcx], ebx
    001118e8lea rsi, [rip-0xbe957]
    001118eflea r8, [rip+0xd9d02]
    001118f6lea rdi, [rsp+8]
    001118fbpush 12
    001118fd
    001118fdloc_1118fd:
    001118fdpop rdx
    001118fe
    001118feloc_1118fe:
    001118fecall core::fmt::builders::DebugStruct::field
    00111903
    00111903loc_111903:
    00111903lea rdi, [rsp+8]
    00111908call core::fmt::builders::DebugStruct::finish
    0011190dadd rsp, 184
    00111914pop rbx
    00111915pop r14
    00111917ret
    001117cc
    00111918
    00111918_<getrandom::error::Error as core::fmt::Display>::fmt:
    00111918push rbp
    00111919push rbx
    0011191asub rsp, 216
    00111921mov rbx, rsi
    00111924mov ebp, [rdi]
    00111926test ebp, ebp
    00111928js 0x111971
    0011192amov [rsp+12], ebp
    0011192exorps x0, x0
    00111931lea rsi, [rsp+80]
    00111936movaps [rsi+112], x0
    0011193amovaps [rsi+96], x0
    0011193emovaps [rsi+80], x0
    00111942movaps [rsi+64], x0
    00111946movaps [rsi+48], x0
    0011194amovaps [rsi+32], x0
    0011194emovaps [rsi+16], x0
    00111952movaps [rsi], x0
    00111955mov edi, ebp
    00111957call getrandom::error::os_err
    0011195ctest rax, rax
    0011195fje 0x111997
    00111961mov rdi, rbx
    00111964mov rsi, rax
    00111967call core::fmt::Formatter::pad
    0011196cjmp 0x111a07
    00111971
    00111971loc_111971:
    00111971mov edi, ebp
    00111973call getrandom::error::internal_desc
    00111978test rax, rax
    0011197bje 0x1119bd
    0011197dmov rdi, [rbx+32]
    00111981mov rcx, [rbx+40]
    00111985mov rcx, [rcx+24]
    00111989mov rsi, rax
    0011198cadd rsp, 216
    00111993pop rbx
    00111994pop rbp
    00111995jmp rcx
    00111997
    00111997loc_111997:
    00111997lea rax, [rsp+12]
    0011199clea rcx, [rsp+16]
    001119a1mov [rcx], rax
    001119a4lea rax, [rip-6811]
    001119abmov [rcx+8], rax
    001119aflea rax, [rip+0xd9c62]
    001119b6lea rdx, [rsp+32]
    001119bbjmp 0x1119e3
    001119bd
    001119bdloc_1119bd:
    001119bdlea rax, [rsp+16]
    001119c2mov [rax], ebp
    001119c4lea rcx, [rsp+32]
    001119c9mov [rcx], rax
    001119cclea rax, [rip-34851]
    001119d3mov [rcx+8], rax
    001119d7lea rax, [rip+0xd9c4a]
    001119delea rdx, [rsp+80]
    001119e3
    001119e3loc_1119e3:
    001119e3mov [rdx], rax
    001119e6push 1
    001119e8pop rax
    001119e9mov [rdx+8], rax
    001119edand [rdx+32], 0
    001119f2mov [rdx+16], rcx
    001119f6mov [rdx+24], rax
    001119famov rdi, [rbx+32]
    001119femov rsi, [rbx+40]
    00111a02call core::fmt::Formatter::write_fmt
    00111a07
    00111a07loc_111a07:
    00111a07add rsp, 216
    00111a0epop rbx
    00111a0fpop rbp
    00111a10ret
    00111918
    00111a11
    00111a11core::error::Error::type_id:
    00111a11mov rax, 0x7b1f02cef6877ff5
    00111a1bmov rdx, 0xdd35a09c8dd105a3
    00111a25ret
    00111a11
    00111a26
    00111a26core::error::Error::description:
    00111a26lea rax, [rip-0xbead5]
    00111a2dpush 40
    00111a2fpop rdx
    00111a30ret
    00111a26
    00111a31
    00111a31core::error::Error::cause:
    00111a31xor eax, eax
    00111a33ret
    00111a31
    00111a34
    00111a34core::error::Error::provide:
    00111a34ret
    00111a34
    00111a35
    00111a35getrandom::error::os_err:
    00111a35push r14
    00111a37push rbx
    00111a38sub rsp, 24
    00111a3cmov rbx, rsi
    00111a3fmov edx, 128
    00111a44call [rip+0x1001ee]
    00111a4atest eax, eax
    00111a4cje 0x111a52
    00111a4exor eax, eax
    00111a50jmp 0x111a8f
    00111a52
    00111a52loc_111a52:
    00111a52xor edx, edx
    00111a54
    00111a54loc_111a54:
    00111a54cmp rdx, 128
    00111a5bje 0x111a68
    00111a5dcmp [rbx+rdx], 0
    00111a61je 0x111a6d
    00111a63inc rdx
    00111a66jmp 0x111a54
    00111a68
    00111a68loc_111a68:
    00111a68mov edx, 128
    00111a6d
    00111a6dloc_111a6d:
    00111a6dmov r14, rsp
    00111a70mov rdi, r14
    00111a73mov rsi, rbx
    00111a76call core::str::converts::from_utf8
    00111a7bcmp [r14], 0
    00111a7fjne 0x111a88
    00111a81mov rax, [rsp+8]
    00111a86jmp 0x111a8a
    00111a88
    00111a88loc_111a88:
    00111a88xor eax, eax
    00111a8a
    00111a8aloc_111a8a:
    00111a8amov rdx, [rsp+16]
    00111a8f
    00111a8floc_111a8f:
    00111a8fadd rsp, 24
    00111a93pop rbx
    00111a94pop r14
    00111a96ret
    00111a35
    00111a97
    00111a97getrandom::error::internal_desc:
    00111a97add edi, 0xffffffff80000000
    00111a9dcmp edi, 14
    00111aa0ja 0x111abc
    00111aa2movsxd rax, edi
    00111aa5lea rcx, [rip-0x7ebcc]
    00111aacmov rdx, [rcx+8*rax]
    00111ab0lea rcx, [rip+0xffb81]
    00111ab7mov rax, [rcx+8*rax]
    00111abbret
    00111abc
    00111abcloc_111abc:
    00111abcxor eax, eax
    00111aberet
    00111a97
    00111abf
    00111abf_<&T as core::fmt::Debug>::fmt:
    00111abfmov rax, [rdi]
    00111ac2mov r8, [rdi+8]
    00111ac6mov rdx, [rsi+32]
    00111acamov rcx, [rsi+40]
    00111acemov rdi, rax
    00111ad1mov rsi, r8
    00111ad4jmp 0x10a780
    00111abf
    00111ad9
    00111ad9core::ptr::drop_in_place<i32>:
    00111ad9ret
    00111ad9
    00111ada
    00111adagetrandom::imp::getrandom:
    00111adamov ecx, edx
    00111adcmov rdx, rsi
    00111adfmov rsi, rdi
    00111ae2mov edi, 318
    00111ae7xor eax, eax
    00111ae9jmp [rip+0x1000b9]
    00111ada
    00111aef
    00111aefgetrandom::util_libc::last_os_error:
    00111aefpush rax
    00111af0call [rip+0x10004a]
    00111af6mov ecx, [rax]
    00111af8test ecx, ecx
    00111afamov eax, 0xffffffff80000001
    00111affcmovg eax, ecx
    00111b02pop rcx
    00111b03ret
    00111aef
    00111b04
    00111b04getrandom::util_libc::open_readonly:
    00111b04push r15
    00111b06push r14
    00111b08push rbx
    00111b09mov rbx, rdi
    00111b0cmov r15, [rip+0x10012d]
    00111b13push 1
    00111b15pop r14
    00111b17
    00111b17loc_111b17:
    00111b17mov rdi, rbx
    00111b1amov esi, 0x80000
    00111b1fxor eax, eax
    00111b21call r15
    00111b24test eax, eax
    00111b26jns 0x111b34
    00111b28call getrandom::util_libc::last_os_error
    00111b2dcmp eax, 4
    00111b30je 0x111b17
    00111b32jmp 0x111b37
    00111b34
    00111b34loc_111b34:
    00111b34xor r14l, r14l
    00111b37
    00111b37loc_111b37:
    00111b37shl rax, 32
    00111b3bor rax, r14
    00111b3epop rbx
    00111b3fpop r14
    00111b41pop r15
    00111b43ret
    00111b04
    00111b44
    00111b44core::slice::index::_<impl core::ops::index::IndexMut<I> for [T]>::index_mut:
    00111b44mov rcx, rsi
    00111b47sub rcx, rdx
    00111b4ajb 0x111b56
    00111b4cadd rdi, rdx
    00111b4fmov rax, rdi
    00111b52mov rdx, rcx
    00111b55ret
    00111b56
    00111b56loc_111b56:
    00111b56push rax
    00111b57lea rax, [rip+0xd9ada]
    00111b5emov rdi, rdx
    00111b61mov rdx, rax
    00111b64call core::slice::index::slice_start_index_len_fail
    00111b69ud2
    00111b44
    00111b6b
    00111b6b // align 0x10
    00111b70
    00111b70gimli::read::abbrev::Abbreviations::insert:
    00111b70push rbp
    00111b71push r15
    00111b73push r14
    00111b75push r13
    00111b77push r12
    00111b79push rbx
    00111b7asub rsp, 680
    00111b81mov r15, rsi
    00111b84mov r13, [rsi+96]
    00111b88lea rsi, [r13-1]
    00111b8ccmp rsi, [rdi+16]
    00111b90jae 0x111bb8
    00111b92
    00111b92loc_111b92:
    00111b92cmp [r15], 0
    00111b96mov bl, 1
    00111b98je 0x111dbd
    00111b9ecmp [r15+16], 0
    00111ba3je 0x111dbd
    00111ba9mov rdi, [r15+8]
    00111badcall [rip+0xfff45]
    00111bb3jmp 0x111dbd
    00111bb8
    00111bb8loc_111bb8:
    00111bb8mov rbx, rdi
    00111bbbjne 0x111c4b
    00111bc1cmp [rbx+40], 0
    00111bc6je 0x111d57
    00111bccmov rax, [rbx+24]
    00111bd0test rax, rax
    00111bd3je 0x111d57
    00111bd9mov rcx, [rbx+32]
    00111bddmov edx, 255
    00111be2
    00111be2loc_111be2:
    00111be2movzx r8l, [rax+1330]
    00111bealea r9, [8*r8]
    00111bf2mov rdi, -1
    00111bf9nop [rax]
    00111c00
    00111c00loc_111c00:
    00111c00test r9, r9
    00111c03je 0x111c34
    00111c05xor r10l, r10l
    00111c08cmp [rax+8*rdi+1248], r13
    00111c10setne r10b
    00111c14cmova r10l, edx
    00111c18inc rdi
    00111c1badd r9, -8
    00111c1fcmp r10b, 1
    00111c23je 0x111c00
    00111c25movzx r8l, r10b
    00111c29test r8l, r8l
    00111c2cje 0x111d4e
    00111c32jmp 0x111c37
    00111c34
    00111c34loc_111c34:
    00111c34mov rdi, r8
    00111c37
    00111c37loc_111c37:
    00111c37sub rcx, 1
    00111c3bjb 0x111d57
    00111c41mov rax, [rax+8*rdi+1336]
    00111c49jmp 0x111be2
    00111c4b
    00111c4bloc_111c4b:
    00111c4bmov r8, [rbx+24]
    00111c4ftest r8, r8
    00111c52je 0x111cc5
    00111c54mov r9, [rbx+32]
    00111c58mov eax, 255
    00111c5dmov rcx, r9
    00111c60mov rdi, r8
    00111c63
    00111c63loc_111c63:
    00111c63lea r14, [rdi+1240]
    00111c6amovzx ebp, [rdi+1330]
    00111c71lea rdx, [8*rbp]
    00111c79mov r12, -1
    00111c80
    00111c80loc_111c80:
    00111c80test rdx, rdx
    00111c83je 0x111cae
    00111c85xor esi, esi
    00111c87cmp [r14+8*r12+8], r13
    00111c8csetne sil
    00111c90cmova esi, eax
    00111c93inc r12
    00111c96add rdx, -8
    00111c9acmp sil, 1
    00111c9eje 0x111c80
    00111ca0movzx edx, sil
    00111ca4test edx, edx
    00111ca6je 0x111b92
    00111cacjmp 0x111cb1
    00111cae
    00111caeloc_111cae:
    00111caemov r12, rbp
    00111cb1
    00111cb1loc_111cb1:
    00111cb1sub rcx, 1
    00111cb5jb 0x111dd1
    00111cbbmov rdi, [rdi+8*r12+1336]
    00111cc3jmp 0x111c63
    00111cc5
    00111cc5loc_111cc5:
    00111cc5movzx eax, [rip+0x1013fc]
    00111cccmov edi, 1336
    00111cd1call [rip+0xffe61]
    00111cd7test rax, rax
    00111cdaje 0x112ee9
    00111ce0mov [rax+1232], 0
    00111cebmovups x0, [r15]
    00111cefmovups x1, [r15+16]
    00111cf4movups x2, [r15+32]
    00111cf9movups x3, [r15+48]
    00111cfemovups [rax], x0
    00111d01movups [rax+16], x1
    00111d05movups [rax+32], x2
    00111d09movups [rax+48], x3
    00111d0dmovups x0, [r15+64]
    00111d12movups [rax+64], x0
    00111d16movups x0, [r15+80]
    00111d1bmovups [rax+80], x0
    00111d1fmovups x0, [r15+96]
    00111d24movups [rax+96], x0
    00111d28mov [rax+1330], 1
    00111d31mov [rax+1240], r13
    00111d38mov [rbx+24], rax
    00111d3cmov [rbx+32], 0
    00111d44mov [rbx+40], 1
    00111d4cjmp 0x111dbb
    00111d4e
    00111d4eloc_111d4e:
    00111d4etest rax, rax
    00111d51jne 0x111b92
    00111d57
    00111d57loc_111d57:
    00111d57cmp rsi, [rbx+8]
    00111d5bjne 0x111d69
    00111d5dmov rdi, rbx
    00111d60call alloc::raw_vec::RawVec<T,A>::reserve_for_push
    00111d65mov rsi, [rbx+16]
    00111d69
    00111d69loc_111d69:
    00111d69mov rax, [rbx]
    00111d6cimul rcx, rsi, 112
    00111d70movups x0, [r15+96]
    00111d75movups [rax+rcx+96], x0
    00111d7amovups x0, [r15+80]
    00111d7fmovups [rax+rcx+80], x0
    00111d84movups x0, [r15+64]
    00111d89movups [rax+rcx+64], x0
    00111d8emovups x0, [r15]
    00111d92movups x1, [r15+16]
    00111d97movups x2, [r15+32]
    00111d9cmovups x3, [r15+48]
    00111da1movups [rax+rcx+48], x3
    00111da6movups [rax+rcx+32], x2
    00111dabmovups [rax+rcx+16], x1
    00111db0movups [rax+rcx], x0
    00111db4inc rsi
    00111db7mov [rbx+16], rsi
    00111dbb
    00111dbbloc_111dbb:
    00111dbbxor ebx, ebx
    00111dbd
    00111dbdloc_111dbd:
    00111dbdmov eax, ebx
    00111dbfadd rsp, 680
    00111dc6pop rbx
    00111dc7pop r12
    00111dc9pop r13
    00111dcbpop r14
    00111dcdpop r15
    00111dcfpop rbp
    00111dd0ret
    00111dd1
    00111dd1loc_111dd1:
    00111dd1cmp bp, 10
    00111dd5mov [rsp], rdi
    00111dd9jbe 0x111e07
    00111ddbmov bpl, 1
    00111ddecmp r12, 5
    00111de2mov [rsp+560], r8
    00111deamov [rsp+552], r9
    00111df2jae 0x111eb4
    00111df8mov eax, 4
    00111dfdmov [rsp+8], rax
    00111e02jmp 0x111f9e
    00111e07
    00111e07loc_111e07:
    00111e07mov rax, rbp
    00111e0alea rsi, [r14+8*r12]
    00111e0esub rax, r12
    00111e11jbe 0x111ed8
    00111e17lea rdi, [r14+8*r12]
    00111e1badd rdi, 8
    00111e1flea rdx, [8*rax]
    00111e27mov r14, [rip+0xffce2]
    00111e2emov [rsp+16], rax
    00111e33call r14
    00111e36mov rax, [rsp]
    00111e3amov [rax+8*r12+1240], r13
    00111e42movups x0, [r15+96]
    00111e47movaps [rsp+144], x0
    00111e4fmovups x0, [r15+80]
    00111e54movaps [rsp+128], x0
    00111e5cmovups x0, [r15+64]
    00111e61movaps [rsp+112], x0
    00111e66movups x0, [r15]
    00111e6amovups x1, [r15+16]
    00111e6fmovups x2, [r15+32]
    00111e74movups x3, [r15+48]
    00111e79movaps [rsp+96], x3
    00111e7emovaps [rsp+80], x2
    00111e83movaps [rsp+64], x1
    00111e88movaps [rsp+48], x0
    00111e8dimul rax, r12, 112
    00111e91mov rcx, [rsp]
    00111e95lea rsi, [rcx+rax]
    00111e99mov rcx, [rsp]
    00111e9dlea rdi, [rcx+rax]
    00111ea1add rdi, 112
    00111ea5imul rdx, [rsp+16], 112
    00111eabcall r14
    00111eaemov rdi, [rsp]
    00111eb2jmp 0x111f26
    00111eb4
    00111eb4loc_111eb4:
    00111eb4je 0x111f87
    00111ebacmp r12, 6
    00111ebejne 0x111f8e
    00111ec4mov eax, 5
    00111ec9mov [rsp+8], rax
    00111ecexor ebp, ebp
    00111ed0xor r12l, r12l
    00111ed3jmp 0x111f9e
    00111ed8
    00111ed8loc_111ed8:
    00111ed8mov [rsi], r13
    00111edbmovups x0, [r15+96]
    00111ee0movaps [rsp+144], x0
    00111ee8movups x0, [r15+80]
    00111eedmovaps [rsp+128], x0
    00111ef5movups x0, [r15+64]
    00111efamovaps [rsp+112], x0
    00111effmovups x0, [r15]
    00111f03movups x1, [r15+16]
    00111f08movups x2, [r15+32]
    00111f0dmovups x3, [r15+48]
    00111f12movaps [rsp+96], x3
    00111f17movaps [rsp+80], x2
    00111f1cmovaps [rsp+64], x1
    00111f21movaps [rsp+48], x0
    00111f26
    00111f26loc_111f26:
    00111f26inc ebp
    00111f28imul rax, r12, 112
    00111f2cmovaps x0, [rsp+144]
    00111f34movups [rdi+rax+96], x0
    00111f39movaps x0, [rsp+128]
    00111f41movups [rdi+rax+80], x0
    00111f46movaps x0, [rsp+112]
    00111f4bmovups [rdi+rax+64], x0
    00111f50movaps x0, [rsp+48]
    00111f55movaps x1, [rsp+64]
    00111f5amovaps x2, [rsp+80]
    00111f5fmovaps x3, [rsp+96]
    00111f64movups [rdi+rax+48], x3
    00111f69movups [rdi+rax+32], x2
    00111f6emovups [rdi+rax+16], x1
    00111f73movups [rdi+rax], x0
    00111f77mov [rdi+1330], bp
    00111f7einc [rbx+40]
    00111f82jmp 0x111dbb
    00111f87
    00111f87loc_111f87:
    00111f87mov [rsp+8], r12
    00111f8cjmp 0x111f9e
    00111f8e
    00111f8eloc_111f8e:
    00111f8eadd r12, -7
    00111f92mov eax, 6
    00111f97mov [rsp+8], rax
    00111f9cxor ebp, ebp
    00111f9e
    00111f9eloc_111f9e:
    00111f9emovzx eax, [rip+0x101123]
    00111fa5mov edi, 1336
    00111faacall [rip+0xffb88]
    00111fb0test rax, rax
    00111fb3je 0x112f77
    00111fb9mov [rsp+24], rbp
    00111fbemov [rax+1232], 0
    00111fc9mov rdx, [rsp]
    00111fcdmovzx esi, [rdx+1330]
    00111fd4mov rdi, [rsp+8]
    00111fd9mov r8, rdi
    00111fdcnot r8
    00111fdfadd r8, rsi
    00111fe2mov [rsp+16], rax
    00111fe7mov [rax+1330], r8w
    00111fefmov rax, [rdx+8*rdi+1240]
    00111ff7mov [rsp+40], rax
    00111ffcimul rcx, rdi, 112
    00112000movups x0, [rdx+rcx+96]
    00112005movaps [rsp+144], x0
    0011200dmovups x0, [rdx+rcx+80]
    00112012movaps [rsp+128], x0
    0011201amovups x0, [rdx+rcx+64]
    0011201fmovaps [rsp+112], x0
    00112024movups x0, [rdx+rcx]
    00112028movups x1, [rdx+rcx+16]
    0011202dmovups x2, [rdx+rcx+32]
    00112032movups x3, [rdx+rcx+48]
    00112037movaps [rsp+96], x3
    0011203cmovaps [rsp+80], x2
    00112041movaps [rsp+64], x1
    00112046movaps [rsp+48], x0
    0011204bcmp r8, 11
    0011204fja 0x112f88
    00112055lea rbp, [rdi+1]
    00112059sub rsi, rbp
    0011205ccmp rsi, r8
    0011205fmov [rsp+8], rdi
    00112064jne 0x112f9e
    0011206amov rax, [rsp+16]
    0011206flea rdi, [rax+1240]
    00112076lea rsi, [r14+8*rbp]
    0011207alea rdx, [8*r8]
    00112082mov r14, [rip+0xffa97]
    00112089mov [rsp+32], r8
    0011208ecall r14
    00112091mov rax, r14
    00112094imul rsi, rbp, 112
    00112098mov r14, [rsp]
    0011209cadd rsi, r14
    0011209fimul rdx, [rsp+32], 112
    001120a5mov rbp, [rsp+16]
    001120aamov rdi, rbp
    001120adcall rax
    001120afmov r8, r14
    001120b2mov rax, [rsp+8]
    001120b7mov [r14+1330], ax
    001120bfmov r10, [rsp+48]
    001120c4mov rax, [rsp+152]
    001120ccmov [rsp+416], rax
    001120d4movups x0, [rsp+136]
    001120dcmovaps [rsp+400], x0
    001120e4movups x0, [rsp+120]
    001120e9movaps [rsp+384], x0
    001120f1movups x0, [rsp+104]
    001120f6movaps [rsp+368], x0
    001120femovups x0, [rsp+88]
    00112103movaps [rsp+352], x0
    0011210bmovups x0, [rsp+72]
    00112110movaps [rsp+336], x0
    00112118movups x0, [rsp+56]
    0011211dmovaps [rsp+320], x0
    00112125cmp [rsp+24], 0
    0011212amov r14, rbp
    0011212dcmovne r14, r8
    00112131movzx ebp, [r14+1330]
    00112139lea rcx, [r12+1]
    0011213elea rsi, [r14+8*r12]
    00112142add rsi, 1240
    00112149cmp rcx, rbp
    0011214cjbe 0x1121a1
    0011214emov [rsi], r13
    00112151movups x0, [r15+96]
    00112156movaps [rsp+144], x0
    0011215emovups x0, [r15+80]
    00112163movaps [rsp+128], x0
    0011216bmovups x0, [r15+64]
    00112170movaps [rsp+112], x0
    00112175movups x0, [r15]
    00112179movups x1, [r15+16]
    0011217emovups x2, [r15+32]
    00112183movups x3, [r15+48]
    00112188movaps [rsp+96], x3
    0011218dmovaps [rsp+80], x2
    00112192movaps [rsp+64], x1
    00112197movaps [rsp+48], x0
    0011219cjmp 0x112247
    001121a1
    001121a1loc_1121a1:
    001121a1lea rax, [r14+1240]
    001121a8lea rdi, [rax+8*rcx]
    001121acmov rax, rbp
    001121afsub rax, r12
    001121b2mov [rsp+8], rax
    001121b7lea rdx, [8*rax]
    001121bfmov [rsp+24], r10
    001121c4mov [rsp+32], rcx
    001121c9call [rip+0xff941]
    001121cfmov [r14+8*r12+1240], r13
    001121d7movups x0, [r15+96]
    001121dcmovaps [rsp+144], x0
    001121e4movups x0, [r15+80]
    001121e9movaps [rsp+128], x0
    001121f1movups x0, [r15+64]
    001121f6movaps [rsp+112], x0
    001121fbmovups x0, [r15]
    001121ffmovups x1, [r15+16]
    00112204movups x2, [r15+32]
    00112209movups x3, [r15+48]
    0011220emovaps [rsp+96], x3
    00112213movaps [rsp+80], x2
    00112218movaps [rsp+64], x1
    0011221dmovaps [rsp+48], x0
    00112222imul rsi, r12, 112
    00112226add rsi, r14
    00112229imul rdi, [rsp+32], 112
    0011222fadd rdi, r14
    00112232imul rdx, [rsp+8], 112
    00112238call [rip+0xff8d2]
    0011223emov r10, [rsp+24]
    00112243mov r8, [rsp]
    00112247
    00112247loc_112247:
    00112247inc ebp
    00112249imul rax, r12, 112
    0011224dmovaps x0, [rsp+144]
    00112255movups [r14+rax+96], x0
    0011225bmovaps x0, [rsp+128]
    00112263movups [r14+rax+80], x0
    00112269movaps x0, [rsp+112]
    0011226emovups [r14+rax+64], x0
    00112274movaps x0, [rsp+48]
    00112279movaps x1, [rsp+64]
    0011227emovaps x2, [rsp+80]
    00112283movaps x3, [rsp+96]
    00112288movups [r14+rax+48], x3
    0011228emovups [r14+rax+32], x2
    00112294movups [r14+rax+16], x1
    0011229amovups [r14+rax], x0
    0011229fmov [r14+1330], bp
    001122a7mov rax, [rsp+416]
    001122afmov [rsp+304], rax
    001122b7movaps x0, [rsp+400]
    001122bfmovaps [rsp+288], x0
    001122c7movaps x0, [rsp+384]
    001122cfmovaps [rsp+272], x0
    001122d7movaps x0, [rsp+320]
    001122dfmovaps x1, [rsp+336]
    001122e7movaps x2, [rsp+352]
    001122efmovaps x3, [rsp+368]
    001122f7movaps [rsp+256], x3
    001122ffmovaps [rsp+240], x2
    00112307movaps [rsp+224], x1
    0011230fmovaps [rsp+208], x0
    00112317cmp r10, 2
    0011231bje 0x112c6e
    00112321mov rax, [rsp+304]
    00112329mov [rsp+544], rax
    00112331movaps x0, [rsp+288]
    00112339movaps [rsp+528], x0
    00112341movaps x0, [rsp+272]
    00112349movaps [rsp+512], x0
    00112351movaps x0, [rsp+208]
    00112359movaps x1, [rsp+224]
    00112361movaps x2, [rsp+240]
    00112369movaps x3, [rsp+256]
    00112371movaps [rsp+496], x3
    00112379movaps [rsp+480], x2
    00112381movaps [rsp+464], x1
    00112389movaps [rsp+448], x0
    00112391mov rax, [r8+1232]
    00112398test rax, rax
    0011239bje 0x112ad9
    001123a1xor ecx, ecx
    001123a3mov [rsp+32], rcx
    001123a8mov r12, [rsp+16]
    001123admov r11, [rsp+40]
    001123b2
    001123b2loc_1123b2:
    001123b2mov rcx, r8
    001123b5movzx ebp, [r8+1328]
    001123bdmov r9, rax
    001123c0mov [rsp+208], r10
    001123c8mov rax, [rsp+544]
    001123d0lea rcx, [rsp+216]
    001123d8mov [rcx+96], rax
    001123dcmovaps x0, [rsp+528]
    001123e4movups [rcx+80], x0
    001123e8movaps x0, [rsp+512]
    001123f0movups [rcx+64], x0
    001123f4movaps x0, [rsp+448]
    001123fcmovaps x1, [rsp+464]
    00112404movaps x2, [rsp+480]
    0011240cmovaps x3, [rsp+496]
    00112414movups [rcx+48], x3
    00112418movups [rcx+32], x2
    0011241cmovups [rcx+16], x1
    00112420movups [rcx], x0
    00112423movzx r10l, [r9+1330]
    0011242bcmp r10, 11
    0011242fmov [rsp], r9
    00112433mov [rsp+440], r12
    0011243bmov [rsp+24], r10
    00112440jb 0x112c77
    00112446mov r13b, 1
    00112449mov r14l, 4
    0011244fcmp bp, 5
    00112453mov [rsp+432], r11
    0011245bjae 0x112464
    0011245dmov [rsp+8], rbp
    00112462jmp 0x11249c
    00112464
    00112464loc_112464:
    00112464cmp ebp, 5
    00112467je 0x112480
    00112469cmp ebp, 6
    0011246cjne 0x11248a
    0011246emov r14l, 5
    00112474xor r13l, r13l
    00112477xor eax, eax
    00112479mov [rsp+8], rax
    0011247ejmp 0x11249c
    00112480
    00112480loc_112480:
    00112480mov [rsp+8], rbp
    00112485mov r14, rbp
    00112488jmp 0x11249c
    0011248a
    0011248aloc_11248a:
    0011248aadd rbp, -7
    0011248emov [rsp+8], rbp
    00112493mov r14l, 6
    00112499xor r13l, r13l
    0011249c
    0011249cloc_11249c:
    0011249cmovzx eax, [rip+0x100c25]
    001124a3mov edi, 1432
    001124a8call [rip+0xff68a]
    001124aetest rax, rax
    001124b1je 0x112f16
    001124b7mov r15, rax
    001124bamov [rsp+568], r13
    001124c2mov rcx, rax
    001124c5mov [r15+1232], 0
    001124d0mov rdx, [rsp]
    001124d4movzx eax, [rdx+1330]
    001124dbmov r13, r14
    001124denot r13
    001124e1add r13, rax
    001124e4mov [rsp+16], r15
    001124e9mov [r15+1330], r13w
    001124f1mov rcx, [rdx+8*r14+1240]
    001124f9mov [rsp+40], rcx
    001124feimul rcx, r14, 112
    00112502movups x0, [rdx+rcx+96]
    00112507movaps [rsp+416], x0
    0011250fmovups x0, [rdx+rcx+80]
    00112514movaps [rsp+400], x0
    0011251cmovups x0, [rdx+rcx+64]
    00112521movaps [rsp+384], x0
    00112529movups x0, [rdx+rcx]
    0011252dmovups x1, [rdx+rcx+16]
    00112532movups x2, [rdx+rcx+32]
    00112537movups x3, [rdx+rcx+48]
    0011253cmovaps [rsp+368], x3
    00112544movaps [rsp+352], x2
    0011254cmovaps [rsp+336], x1
    00112554movaps [rsp+320], x0
    0011255ccmp r13, 11
    00112560ja 0x112efd
    00112566lea rbp, [r14+1]
    0011256asub rax, rbp
    0011256dcmp rax, r13
    00112570jne 0x112f2a
    00112576lea rax, [rdx+1240]
    0011257dlea rdi, [r15+1240]
    00112584lea rsi, [rax+8*rbp]
    00112588lea rdx, [8*r13]
    00112590mov r12, [rip+0xff589]
    00112597call r12
    0011259aimul rsi, rbp, 112
    0011259eadd rsi, [rsp]
    001125a2imul rdx, r13, 112
    001125a6mov r13, [rsp+16]
    001125abmov rdi, r13
    001125aecall r12
    001125b1mov rax, [rsp]
    001125b5mov [rax+1330], r14w
    001125bdmovaps x0, [rsp+320]
    001125c5movaps x1, [rsp+336]
    001125cdmovaps x2, [rsp+352]
    001125d5movaps x3, [rsp+368]
    001125ddlea rcx, [rsp+56]
    001125e2movups [rcx], x0
    001125e5movups [rcx+16], x1
    001125e9movups [rcx+32], x2
    001125edmovups [rcx+48], x3
    001125f1movaps x0, [rsp+384]
    001125f9movups [rcx+64], x0
    001125fdmovaps x0, [rsp+400]
    00112605movups [rcx+80], x0
    00112609movaps x0, [rsp+416]
    00112611movups [rcx+96], x0
    00112615mov rcx, [rsp+40]
    0011261amov [rsp+48], rcx
    0011261fmovzx r13l, [r13+1330]
    00112627lea rdi, [r13+1]
    0011262bcmp r13, 12
    0011262fjae 0x112f64
    00112635mov rdx, [rsp+24]
    0011263asub rdx, r14
    0011263dcmp rdx, rdi
    00112640mov rcx, [rsp+32]
    00112645jne 0x112f47
    0011264binc rcx
    0011264emov [rsp+32], rcx
    00112653lea rdi, [r15+1336]
    0011265alea rsi, [rax+8*rbp]
    0011265eadd rsi, 1336
    00112665shl rdx, 3
    00112669call [rip+0xff4b1]
    0011266fxor eax, eax
    00112671mov rbp, [rsp+16]
    00112676nop [rax+rax]
    00112680
    00112680loc_112680:
    00112680mov rcx, rax
    00112683cmp rax, r13
    00112686adc rax, 0
    0011268amov rdx, [rbp+8*rcx+1336]
    00112692mov [rdx+1232], rbp
    00112699mov [rdx+1328], cx
    001126a0cmp rcx, r13
    001126a3jae 0x1126aa
    001126a5cmp rax, r13
    001126a8jbe 0x112680
    001126aa
    001126aaloc_1126aa:
    001126aamov r10, [rsp+56]
    001126aflea rax, [rsp+56]
    001126b4movups x0, [rax+8]
    001126b8movups x1, [rax+24]
    001126bcmovups x2, [rax+40]
    001126c0movups x3, [rax+56]
    001126c4movaps [rsp+320], x0
    001126ccmovaps [rsp+336], x1
    001126d4movaps [rsp+352], x2
    001126dcmovaps [rsp+368], x3
    001126e4movups x0, [rax+72]
    001126e8movaps [rsp+384], x0
    001126f0movups x0, [rax+88]
    001126f4movaps [rsp+400], x0
    001126fcmov rax, [rax+104]
    00112700mov [rsp+416], rax
    00112708cmp [rsp+568], 0
    00112710cmovne r15, [rsp]
    00112715movzx r14l, [r15+1330]
    0011271dmov r9, [rsp+8]
    00112722lea r13, [r9+1]
    00112726lea rsi, [r15+8*r9]
    0011272aadd rsi, 1240
    00112731cmp r13, r14
    00112734mov [rsp+24], r10
    00112739jbe 0x1127ac
    0011273bmov rax, [rsp+432]
    00112743mov [rsi], rax
    00112746movups x0, [rsp+304]
    0011274emovaps [rsp+144], x0
    00112756movups x0, [rsp+288]
    0011275emovaps [rsp+128], x0
    00112766movups x0, [rsp+272]
    0011276emovaps [rsp+112], x0
    00112773movups x0, [rsp+208]
    0011277bmovups x1, [rsp+224]
    00112783movups x2, [rsp+240]
    0011278bmovups x3, [rsp+256]
    00112793movaps [rsp+96], x3
    00112798movaps [rsp+80], x2
    0011279dmovaps [rsp+64], x1
    001127a2movaps [rsp+48], x0
    001127a7jmp 0x11286b
    001127ac
    001127acloc_1127ac:
    001127aclea rax, [r15+1240]
    001127b3lea rdi, [rax+8*r13]
    001127b7mov rbp, r14
    001127basub rbp, r9
    001127bdlea rdx, [8*rbp]
    001127c5mov r12, [rip+0xff344]
    001127cccall r12
    001127cfmov rax, [rsp+8]
    001127d4mov rcx, [rsp+432]
    001127dcmov [r15+8*rax+1240], rcx
    001127e4movups x0, [rsp+304]
    001127ecmovaps [rsp+144], x0
    001127f4movups x0, [rsp+288]
    001127fcmovaps [rsp+128], x0
    00112804movups x0, [rsp+272]
    0011280cmovaps [rsp+112], x0
    00112811movups x0, [rsp+208]
    00112819movups x1, [rsp+224]
    00112821movups x2, [rsp+240]
    00112829movups x3, [rsp+256]
    00112831movaps [rsp+96], x3
    00112836movaps [rsp+80], x2
    0011283bmovaps [rsp+64], x1
    00112840movaps [rsp+48], x0
    00112845imul rsi, [rsp+8], 112
    0011284badd rsi, r15
    0011284eimul rdi, r13, 112
    00112852add rdi, r15
    00112855imul rdx, rbp, 112
    00112859mov rbp, [rsp+16]
    0011285ecall r12
    00112861mov r10, [rsp+24]
    00112866mov r9, [rsp+8]
    0011286b
    0011286bloc_11286b:
    0011286bimul rax, r9, 112
    0011286fmovaps x0, [rsp+144]
    00112877movups [r15+rax+96], x0
    0011287dmovaps x0, [rsp+128]
    00112885movups [r15+rax+80], x0
    0011288bmovaps x0, [rsp+112]
    00112890movups [r15+rax+64], x0
    00112896movaps x0, [rsp+48]
    0011289bmovaps x1, [rsp+64]
    001128a0movaps x2, [rsp+80]
    001128a5movaps x3, [rsp+96]
    001128aamovups [r15+rax+48], x3
    001128b0movups [r15+rax+32], x2
    001128b6movups [r15+rax+16], x1
    001128bcmovups [r15+rax], x0
    001128c1lea r12, [r14+2]
    001128c5lea rax, [r9+2]
    001128c9cmp rax, r12
    001128ccjae 0x1128f7
    001128celea rcx, [r15+1336]
    001128d5lea rsi, [rcx+8*r13]
    001128d9lea rdi, [rcx+8*rax]
    001128ddmov rdx, r14
    001128e0sub rdx, r9
    001128e3shl rdx, 3
    001128e7call [rip+0xff223]
    001128edmov r10, [rsp+24]
    001128f2mov r9, [rsp+8]
    001128f7
    001128f7loc_1128f7:
    001128f7lea eax, [r14+1]
    001128fbmov rcx, [rsp+440]
    00112903mov [r15+8*r9+1344], rcx
    0011290bmov [r15+1330], ax
    00112913cmp r13, r12
    00112916mov r8, [rsp]
    0011291ajae 0x1129d2
    00112920mov eax, r14l
    00112923sub eax, r9l
    00112926inc eax
    00112928and eax, 3
    0011292bje 0x11295b
    0011292dlea rdx, [r15+8*r9]
    00112931add rdx, 1344
    00112938xor ecx, ecx
    0011293a
    0011293aloc_11293a:
    0011293amov rsi, [rdx+8*rcx]
    0011293emov [rsi+1232], r15
    00112945lea edi, [rcx+r13]
    00112949mov [rsi+1328], di
    00112950inc rcx
    00112953cmp rax, rcx
    00112956jne 0x11293a
    00112958add r13, rcx
    0011295b
    0011295bloc_11295b:
    0011295bsub r14, r9
    0011295ecmp r14, 3
    00112962jb 0x1129d2
    00112964
    00112964loc_112964:
    00112964mov rax, [r15+8*r13+1336]
    0011296cmov [rax+1232], r15
    00112973mov [rax+1328], r13w
    0011297bmov rax, [r15+8*r13+1344]
    00112983mov [rax+1232], r15
    0011298alea ecx, [r13+1]
    0011298emov [rax+1328], cx
    00112995mov rax, [r15+8*r13+1352]
    0011299dmov [rax+1232], r15
    001129a4lea ecx, [r13+2]
    001129a8mov [rax+1328], cx
    001129afmov rax, [r15+8*r13+1360]
    001129b7mov [rax+1232], r15
    001129belea ecx, [r13+3]
    001129c2mov [rax+1328], cx
    001129c9add r13, 4
    001129cdcmp r13, r12
    001129d0jne 0x112964
    001129d2
    001129d2loc_1129d2:
    001129d2mov rax, [rsp+416]
    001129damov [rsp+672], rax
    001129e2movaps x0, [rsp+400]
    001129eamovaps [rsp+656], x0
    001129f2movaps x0, [rsp+384]
    001129famovaps [rsp+640], x0
    00112a02movaps x0, [rsp+320]
    00112a0amovaps x1, [rsp+336]
    00112a12movaps x2, [rsp+352]
    00112a1amovaps x3, [rsp+368]
    00112a22movaps [rsp+624], x3
    00112a2amovaps [rsp+608], x2
    00112a32movaps [rsp+592], x1
    00112a3amovaps [rsp+576], x0
    00112a42cmp r10, 2
    00112a46je 0x112c6e
    00112a4cmov rax, [rsp+672]
    00112a54mov [rsp+544], rax
    00112a5cmovaps x0, [rsp+656]
    00112a64movaps [rsp+528], x0
    00112a6cmovaps x0, [rsp+640]
    00112a74movaps [rsp+512], x0
    00112a7cmovaps x0, [rsp+576]
    00112a84movaps x1, [rsp+592]
    00112a8cmovaps x2, [rsp+608]
    00112a94movaps x3, [rsp+624]
    00112a9cmovaps [rsp+496], x3
    00112aa4movaps [rsp+480], x2
    00112aacmovaps [rsp+464], x1
    00112ab4movaps [rsp+448], x0
    00112abcmov rax, [r8+1232]
    00112ac3mov r12, rbp
    00112ac6mov r14, [rsp+40]
    00112acbmov r11, r14
    00112acetest rax, rax
    00112ad1jne 0x1123b2
    00112ad7jmp 0x112aea
    00112ad9
    00112ad9loc_112ad9:
    00112ad9xor eax, eax
    00112adbmov [rsp+32], rax
    00112ae0mov rbp, [rsp+16]
    00112ae5mov r14, [rsp+40]
    00112aea
    00112aealoc_112aea:
    00112aeamov rax, [rsp+544]
    00112af2mov [rsp+160], rax
    00112afamovaps x0, [rsp+528]
    00112b02movups [rsp+144], x0
    00112b0amovaps x0, [rsp+512]
    00112b12movups [rsp+128], x0
    00112b1amovaps x0, [rsp+448]
    00112b22movaps x1, [rsp+464]
    00112b2amovaps x2, [rsp+480]
    00112b32movaps x3, [rsp+496]
    00112b3amovups [rsp+112], x3
    00112b3fmovups [rsp+96], x2
    00112b44movups [rsp+80], x1
    00112b49movups [rsp+64], x0
    00112b4emov [rsp+48], r14
    00112b53mov [rsp+56], r10
    00112b58mov [rsp+168], r8
    00112b60mov r12, [rsp+32]
    00112b65mov [rsp+176], r12
    00112b6dmov [rsp+184], rbp
    00112b75mov [rsp+192], r12
    00112b7dmovzx eax, [rip+0x100544]
    00112b84mov edi, 1432
    00112b89call [rip+0xfefa9]
    00112b8ftest rax, rax
    00112b92je 0x112fb8
    00112b98lea r15, [rsp+56]
    00112b9dmov [rax+1232], 0
    00112ba8mov [rax+1330], 0
    00112bb1mov rdx, [rsp+560]
    00112bb9mov [rax+1336], rdx
    00112bc0mov rsi, [rsp+552]
    00112bc8lea rcx, [rsi+1]
    00112bccmov [rdx+1232], rax
    00112bd3mov [rdx+1328], 0
    00112bdcmov [rbx+24], rax
    00112be0mov [rbx+32], rcx
    00112be4cmp rsi, r12
    00112be7jne 0x112fc9
    00112bedmovzx ecx, [rax+1330]
    00112bf4cmp rcx, 11
    00112bf8jae 0x112fde
    00112bfelea edx, [rcx+1]
    00112c01mov [rax+1330], dx
    00112c08mov [rax+8*rcx+1240], r14
    00112c10imul rsi, rcx, 112
    00112c14movups x0, [r15+96]
    00112c19movups [rax+rsi+96], x0
    00112c1emovups x0, [r15+80]
    00112c23movups [rax+rsi+80], x0
    00112c28movups x0, [r15+64]
    00112c2dmovups [rax+rsi+64], x0
    00112c32movups x0, [r15]
    00112c36movups x1, [r15+16]
    00112c3bmovups x2, [r15+32]
    00112c40movups x3, [r15+48]
    00112c45movups [rax+rsi+48], x3
    00112c4amovups [rax+rsi+32], x2
    00112c4fmovups [rax+rsi+16], x1
    00112c54movups [rax+rsi], x0
    00112c58mov [rax+8*rcx+1344], rbp
    00112c60mov [rbp+1232], rax
    00112c67mov [rbp+1328], dx
    00112c6e
    00112c6eloc_112c6e:
    00112c6einc [rbx+40]
    00112c72jmp 0x111dbb
    00112c77
    00112c77loc_112c77:
    00112c77lea ecx, [r10+1]
    00112c7blea r15, [rbp+1]
    00112c7fcmp bp, r10w
    00112c83jae 0x112da4
    00112c89lea rax, [r9+1240]
    00112c90lea rsi, [r9+8*rbp]
    00112c94add rsi, 1240
    00112c9blea rdi, [rax+8*r15]
    00112c9fmov r13, r10
    00112ca2sub r13, rbp
    00112ca5lea rdx, [8*r13]
    00112cadmov [rsp+8], rdx
    00112cb2mov r14, r11
    00112cb5mov [rsp+16], ecx
    00112cb9call [rip+0xfee51]
    00112cbfmov rax, [rsp]
    00112cc3mov [rax+8*rbp+1240], r14
    00112ccbimul r12, rbp, 112
    00112ccfmov rax, [rsp]
    00112cd3lea rsi, [rax+r12]
    00112cd7imul rdi, r15, 112
    00112cdbadd rdi, [rsp]
    00112cdfimul rdx, r13, 112
    00112ce3mov r14, [rip+0xfee26]
    00112ceacall r14
    00112cedmovups x0, [rsp+208]
    00112cf5movups x1, [rsp+224]
    00112cfdmovups x2, [rsp+240]
    00112d05movups x3, [rsp+256]
    00112d0dmov rax, [rsp]
    00112d11movups [rax+r12], x0
    00112d16mov rax, [rsp]
    00112d1amovups [rax+r12+16], x1
    00112d20mov rax, [rsp]
    00112d24movups [rax+r12+32], x2
    00112d2amov rax, [rsp]
    00112d2emovups [rax+r12+48], x3
    00112d34movups x0, [rsp+272]
    00112d3cmov rax, [rsp]
    00112d40movups [rax+r12+64], x0
    00112d46movups x0, [rsp+288]
    00112d4emov rax, [rsp]
    00112d52movups [rax+r12+80], x0
    00112d58movups x0, [rsp+304]
    00112d60mov rax, [rsp]
    00112d64movups [rax+r12+96], x0
    00112d6amov r12, [rsp+440]
    00112d72mov rax, [rsp]
    00112d76lea rsi, [rax+8*r15+1336]
    00112d7emov rax, [rsp]
    00112d82lea rdi, [rax+8*rbp]
    00112d86add rdi, 1352
    00112d8dmov rdx, [rsp+8]
    00112d92call r14
    00112d95mov ecx, [rsp+16]
    00112d99mov r10, [rsp+24]
    00112d9emov r9, [rsp]
    00112da2jmp 0x112e11
    00112da4
    00112da4loc_112da4:
    00112da4mov [r9+8*rbp+1240], r11
    00112dacimul rax, rbp, 112
    00112db0movups x0, [rsp+304]
    00112db8movups [r9+rax+96], x0
    00112dbemovups x0, [rsp+288]
    00112dc6movups [r9+rax+80], x0
    00112dccmovups x0, [rsp+272]
    00112dd4movups [r9+rax+64], x0
    00112ddamovups x0, [rsp+208]
    00112de2movups x1, [rsp+224]
    00112deamovups x2, [rsp+240]
    00112df2movups x3, [rsp+256]
    00112dfamovups [r9+rax+48], x3
    00112e00movups [r9+rax+32], x2
    00112e06movups [r9+rax+16], x1
    00112e0cmovups [r9+rax], x0
    00112e11
    00112e11loc_112e11:
    00112e11lea rax, [r10+2]
    00112e15mov [r9+8*rbp+1344], r12
    00112e1dmov [r9+1330], cx
    00112e25cmp r15, rax
    00112e28jae 0x112c6e
    00112e2emov ecx, r10l
    00112e31sub ecx, ebp
    00112e33inc ecx
    00112e35sub r10, rbp
    00112e38and ecx, 3
    00112e3bje 0x112e6c
    00112e3dlea rsi, [r9+8*rbp]
    00112e41add rsi, 1344
    00112e48xor edx, edx
    00112e4a
    00112e4aloc_112e4a:
    00112e4amov rdi, [rsi+8*rdx]
    00112e4emov [rdi+1232], r9
    00112e55lea r8l, [r15+rdx]
    00112e59mov [rdi+1328], r8w
    00112e61inc rdx
    00112e64cmp rcx, rdx
    00112e67jne 0x112e4a
    00112e69add r15, rdx
    00112e6c
    00112e6cloc_112e6c:
    00112e6ccmp r10, 3
    00112e70jb 0x112c6e
    00112e76
    00112e76loc_112e76:
    00112e76mov rcx, [r9+8*r15+1336]
    00112e7emov [rcx+1232], r9
    00112e85mov [rcx+1328], r15w
    00112e8dmov rcx, [r9+8*r15+1344]
    00112e95mov [rcx+1232], r9
    00112e9clea edx, [r15+1]
    00112ea0mov [rcx+1328], dx
    00112ea7mov rcx, [r9+8*r15+1352]
    00112eafmov [rcx+1232], r9
    00112eb6lea edx, [r15+2]
    00112ebamov [rcx+1328], dx
    00112ec1mov rcx, [r9+8*r15+1360]
    00112ec9mov [rcx+1232], r9
    00112ed0lea edx, [r15+3]
    00112ed4mov [rcx+1328], dx
    00112edbadd r15, 4
    00112edfcmp r15, rax
    00112ee2jne 0x112e76
    00112ee4jmp 0x112c6e
    00112ee9
    00112ee9loc_112ee9:
    00112ee9mov edi, 8
    00112eeemov esi, 1336
    00112ef3call alloc::alloc::handle_alloc_error
    00112ef8jmp 0x112ff6
    00112efd
    00112efdloc_112efd:
    00112efdlea rdx, [rip+0xd8794]
    00112f04mov esi, 11
    00112f09mov rdi, r13
    00112f0ccall core::slice::index::slice_end_index_len_fail
    00112f11jmp 0x112ff6
    00112f16
    00112f16loc_112f16:
    00112f16mov edi, 8
    00112f1bmov esi, 1432
    00112f20call alloc::alloc::handle_alloc_error
    00112f25jmp 0x112ff6
    00112f2a
    00112f2aloc_112f2a:
    00112f2alea rdi, [rip-0xbfc2f]
    00112f31lea rdx, [rip+0xd8748]
    00112f38mov esi, 40
    00112f3dcall core::panicking::panic
    00112f42jmp 0x112ff6
    00112f47
    00112f47loc_112f47:
    00112f47lea rdi, [rip-0xbfc4c]
    00112f4elea rdx, [rip+0xd872b]
    00112f55mov esi, 40
    00112f5acall core::panicking::panic
    00112f5fjmp 0x112ff6
    00112f64
    00112f64loc_112f64:
    00112f64lea rdx, [rip+0xd8745]
    00112f6bmov esi, 12
    00112f70call core::slice::index::slice_end_index_len_fail
    00112f75jmp 0x112ff6
    00112f77
    00112f77loc_112f77:
    00112f77mov edi, 8
    00112f7cmov esi, 1336
    00112f81call alloc::alloc::handle_alloc_error
    00112f86jmp 0x112ff6
    00112f88
    00112f88loc_112f88:
    00112f88lea rdx, [rip+0xd8709]
    00112f8fmov esi, 11
    00112f94mov rdi, r8
    00112f97call core::slice::index::slice_end_index_len_fail
    00112f9cjmp 0x112ff6
    00112f9e
    00112f9eloc_112f9e:
    00112f9elea rdi, [rip-0xbfca3]
    00112fa5lea rdx, [rip+0xd86d4]
    00112facmov esi, 40
    00112fb1call core::panicking::panic
    00112fb6jmp 0x112ff6
    00112fb8
    00112fb8loc_112fb8:
    00112fb8mov edi, 8
    00112fbdmov esi, 1432
    00112fc2call alloc::alloc::handle_alloc_error
    00112fc7jmp 0x112ff6
    00112fc9
    00112fc9loc_112fc9:
    00112fc9lea rdx, [rip+0xd8680]
    00112fd0mov esi, 48
    00112fd5lea rdi, [rip-0xbfd0a]
    00112fdcjmp 0x112ff1
    00112fde
    00112fdeloc_112fde:
    00112fdelea rdx, [rip+0xd8683]
    00112fe5mov esi, 32
    00112fealea rdi, [rip-0xd53d1]
    00112ff1
    00112ff1loc_112ff1:
    00112ff1call core::panicking::panic
    00112ff6
    00112ff6loc_112ff6:
    00112ff6ud2
    00112ff8call core::ptr::drop_in_place<alloc::collections::btree::mem::replace::PanicGuard>
    00112ffdud2
    00112fffjmp 0x11305e
    00113001jmp 0x11305e
    00113003mov rbx, rax
    00113006lea rdi, [rsp+48]
    0011300bcall core::ptr::drop_in_place<gimli::read::abbrev::Abbreviation>
    00113010mov rdi, [rsp+16]
    00113015call core::ptr::drop_in_place<alloc::boxed::Box<alloc::collections::btree::node::LeafNode<u64,gimli::read::abbrev::Abbreviation>>>
    0011301ajmp 0x113061
    0011301cmov rbx, rax
    0011301flea r15, [rsp+208]
    00113027jmp 0x113061
    00113029mov rbx, rax
    0011302clea rdi, [rsp+48]
    00113031call core::ptr::drop_in_place<(u64,gimli::read::abbrev::Abbreviation)>
    00113036jmp 0x113048
    00113038mov rbx, rax
    0011303blea rdi, [rsp+320]
    00113043call core::ptr::drop_in_place<gimli::read::abbrev::Abbreviation>
    00113048
    00113048loc_113048:
    00113048mov rdi, [rsp+16]
    0011304dcall core::ptr::drop_in_place<alloc::boxed::Box<alloc::collections::btree::node::LeafNode<u64,gimli::read::abbrev::Abbreviation>>>
    00113052lea r15, [rsp+208]
    0011305ajmp 0x113061
    0011305cjmp 0x11305e
    0011305e
    0011305eloc_11305e:
    0011305emov rbx, rax
    00113061
    00113061loc_113061:
    00113061mov rdi, r15
    00113064call core::ptr::drop_in_place<gimli::read::abbrev::Abbreviation>
    00113069mov rdi, rbx
    0011306ccall _Unwind_Resume
    00113071ud2
    00111b70