Function at 0x140013524
Capabilities:
Encrypt data using salsa20 or chacha

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x3c8
vmovdqa xmmword [rsp + 0x3b0], xmm15
vmovaps xmmword [rsp + 0x3a0], xmm14
vmovaps xmmword [rsp + 0x390], xmm13
vmovaps xmmword [rsp + 0x380], xmm12
vmovaps xmmword [rsp + 0x370], xmm11
vmovaps xmmword [rsp + 0x360], xmm10
vmovaps xmmword [rsp + 0x350], xmm9
vmovdqa xmmword [rsp + 0x340], xmm8
vmovaps xmmword [rsp + 0x330], xmm7
vmovaps xmmword [rsp + 0x320], xmm6
mov rsi, r8
vmovdqa xmm5, xmmword [rcx]
vmovdqa xmm14, xmmword [rcx + 0x10]
vmovdqa xmm9, xmmword [rcx + 0x20]
mov rax, qword [rcx + 0x20]
lea r8, [rax + 1]
vpinsrd xmm0, xmm9, r8d, 0
shr r8, 0x20
vpinsrd xmm11, xmm0, r8d, 1
lea r8, [rax + 2]
vpinsrd xmm0, xmm9, r8d, 0
shr r8, 0x20
vpinsrd xmm1, xmm0, r8d, 1
lea r8, [rax + 3]
vpinsrd xmm0, xmm9, r8d, 0
shr r8, 0x20
vpinsrd xmm0, xmm0, r8d, 1
vmovdqa xmm13, xmmword [str.expand_32_byte_k]
vmovdqa xmmword [rsp + 0x60], xmm0
vmovdqa xmm2, xmm0
vmovdqa xmmword [rsp + 0x70], xmm1
vmovdqa xmm6, xmm1
vmovdqa xmmword [rsp + 0x80], xmm11
vmovdqa xmmword [rsp + 0x90], xmm9
vmovdqa xmmword [rsp + 0x30], xmm14
vmovdqa xmm10, xmm14
vmovdqa xmm12, xmm14
vmovdqa xmmword [rsp + 0xa0], xmm14
vmovdqa xmm7, xmm5
vmovdqa xmm0, xmm5
vmovdqa xmm3, xmm5
vmovdqa xmmword [rsp + 0xb0], xmm5
vmovdqa xmm1, xmm13
vmovdqa xmmword [rsp + 0x20], xmm13
vmovdqa xmmword [rsp + 0x40], xmm13
sub edx, 1
jb 0x140013a0c
vmovdqa xmm4, xmm10
vpaddd xmm10, xmm13, xmm5
vpxor xmm8, xmm9, xmm10
vpshuflw xmm8, xmm8, 0xb1
vmovdqa xmm13, xmm12
vpshufhw xmm12, xmm8, 0xb1
vpaddd xmm8, xmm12, xmm14
vmovdqa xmmword [rsp + 0x50], xmm8
vpxor xmm5, xmm8, xmm5
vpsrld xmm9, xmm5, 0x14
vpslld xmm5, xmm5, 0xc
vpor xmm15, xmm9, xmm5
vmovdqa xmm9, xmm6
vpaddd xmm6, xmm3, xmmword [rsp + 0x20]
vmovdqa xmm8, xmm2
vpxor xmm2, xmm11, xmm6
vpshuflw xmm2, xmm2, 0xb1
vpshufhw xmm11, xmm2, 0xb1
vpaddd xmm2, xmm11, xmm13
vmovdqa xmmword [rsp + 0x20], xmm2
vpxor xmm3, xmm2, xmm3
vpsrld xmm14, xmm3, 0x14
vpslld xmm3, xmm3, 0xc
vpor xmm13, xmm14, xmm3
vpaddd xmm5, xmm1, xmm0
vpxor xmm3, xmm9, xmm5
vpshuflw xmm3, xmm3, 0xb1
vpshufhw xmm2, xmm3, 0xb1
vpaddd xmm1, xmm2, xmm4
vmovdqa xmmword [rsp + 0xc0], xmm1
vpxor xmm3, xmm1, xmm0
vpsrld xmm4, xmm3, 0x14
vpslld xmm3, xmm3, 0xc
vpor xmm14, xmm3, xmm4
vpaddd xmm4, xmm7, xmmword [rsp + 0x40]
vpxor xmm3, xmm8, xmm4
vpshuflw xmm3, xmm3, 0xb1
vpshufhw xmm1, xmm3, 0xb1
vpaddd xmm9, xmm1, xmmword [rsp + 0x30]
vpxor xmm3, xmm9, xmm7
vpsrld xmm8, xmm3, 0x14
vpslld xmm3, xmm3, 0xc
vpor xmm3, xmm8, xmm3
vpaddd xmm8, xmm15, xmm10
vmovdqa xmm10, xmmword [0x1400b64b0]
vpshufb xmm0, xmm12, xmm10
vpshufb xmm12, xmm8, xmm10
vpxor xmm12, xmm12, xmm0
vpaddd xmm0, xmm13, xmm6
vmovdqa xmmword [rsp + 0xd0], xmm0
vpshufb xmm6, xmm11, xmm10
vpshufb xmm11, xmm0, xmm10
vpxor xmm11, xmm11, xmm6
vpaddd xmm0, xmm14, xmm5
vmovdqa xmmword [rsp + 0x30], xmm0
vpshufb xmm2, xmm2, xmm10
vpshufb xmm5, xmm0, xmm10
vpxor xmm5, xmm2, xmm5
vpaddd xmm2, xmm3, xmm4
vmovdqa xmmword [rsp + 0x40], xmm2
vpshufb xmm0, xmm1, xmm10
vpshufb xmm1, xmm2, xmm10
vpxor xmm2, xmm0, xmm1
vpaddd xmm0, xmm12, xmmword [rsp + 0x50]
vmovdqa xmmword [rsp + 0xe0], xmm0
vpxor xmm0, xmm15, xmm0
vpsrld xmm6, xmm0, 0x19
vpslld xmm0, xmm0, 7
vpor xmm0, xmm0, xmm6
vpaddd xmm4, xmm11, xmmword [rsp + 0x20]
vpxor xmm6, xmm13, xmm4
vpsrld xmm7, xmm6, 0x19
vpslld xmm6, xmm6, 7
vpor xmm6, xmm6, xmm7
vpaddd xmm7, xmm5, xmmword [rsp + 0xc0]
vpxor xmm13, xmm14, xmm7
vpsrld xmm14, xmm13, 0x19
vpslld xmm13, xmm13, 7
vpor xmm14, xmm13, xmm14
vpaddd xmm1, xmm9, xmm2
vmovdqa xmmword [rsp + 0x50], xmm1
vpxor xmm3, xmm1, xmm3
vpsrld xmm13, xmm3, 0x19
vpslld xmm3, xmm3, 7
vpor xmm15, xmm13, xmm3
vpshufd xmm1, xmm0, 0x39
vpaddd xmm13, xmm8, xmm1
vpshuflw xmm3, xmm13, 0xb1
vpshufhw xmm3, xmm3, 0xb1
vmovdqa xmm0, xmmword [0x1400b64c0]
vpshufb xmm8, xmm12, xmm0
vpxor xmm12, xmm8, xmm3
vpshufd xmm8, xmm6, 0x39
vpaddd xmm3, xmm8, xmmword [rsp + 0xd0]
vmovdqa xmmword [rsp + 0x20], xmm3
vpshuflw xmm6, xmm3, 0xb1
vpshufhw xmm6, xmm6, 0xb1
vpshufb xmm10, xmm11, xmm0
vpxor xmm6, xmm10, xmm6
vpshufd xmm14, xmm14, 0x39
vpaddd xmm3, xmm14, xmmword [rsp + 0x30]
vmovdqa xmmword [rsp + 0x30], xmm3
vpshuflw xmm10, xmm3, 0xb1
vpshufhw xmm10, xmm10, 0xb1
vpshufb xmm5, xmm5, xmm0
vpxor xmm5, xmm10, xmm5
vpshufd xmm3, xmm15, 0x39
vpaddd xmm9, xmm3, xmmword [rsp + 0x40]
vmovdqa xmmword [rsp + 0x40], xmm9
vpshuflw xmm10, xmm9, 0xb1
vpshufhw xmm10, xmm10, 0xb1
vpshufb xmm2, xmm2, xmm0
vpxor xmm2, xmm10, xmm2
vpshufd xmm10, xmmword [rsp + 0xe0], 0x4e
vpaddd xmm15, xmm10, xmm12
vpxor xmm1, xmm15, xmm1
vpsrld xmm10, xmm1, 0x14
vpslld xmm1, xmm1, 0xc
vpor xmm1, xmm10, xmm1
vpshufd xmm9, xmm4, 0x4e
vpaddd xmm11, xmm9, xmm6
vpxor xmm8, xmm11, xmm8
vpsrld xmm9, xmm8, 0x14
vpslld xmm8, xmm8, 0xc
vpor xmm8, xmm8, xmm9
vpshufd xmm7, xmm7, 0x4e
vpaddd xmm10, xmm7, xmm5
vpxor xmm7, xmm10, xmm14
vpsrld xmm9, xmm7, 0x14
vpslld xmm7, xmm7, 0xc
vpor xmm14, xmm9, xmm7
vpshufd xmm4, xmmword [rsp + 0x50], 0x4e
vpaddd xmm4, xmm4, xmm2
vpxor xmm0, xmm4, xmm3
vpsrld xmm7, xmm0, 0x14
vpslld xmm0, xmm0, 0xc
vpor xmm7, xmm0, xmm7
vpaddd xmm13, xmm13, xmm1
vpxor xmm0, xmm12, xmm13
vmovdqa xmm3, xmmword [0x1400b64b0]
vpshufb xmm9, xmm0, xmm3
vpaddd xmm12, xmm15, xmm9
vpxor xmm0, xmm12, xmm1
vpsrld xmm1, xmm0, 0x19
vpslld xmm0, xmm0, 7
vpor xmm0, xmm0, xmm1
vpaddd xmm1, xmm8, xmmword [rsp + 0x20]
vmovdqa xmmword [rsp + 0x20], xmm1
vpxor xmm1, xmm6, xmm1
vpshufb xmm6, xmm1, xmm3
vmovdqa xmm15, xmm3
vpaddd xmm11, xmm11, xmm6
vpxor xmm1, xmm11, xmm8
vpsrld xmm3, xmm1, 0x19
vpslld xmm1, xmm1, 7
vpor xmm3, xmm1, xmm3
vpaddd xmm1, xmm14, xmmword [rsp + 0x30]
vpxor xmm5, xmm5, xmm1
vpshufb xmm8, xmm5, xmm15
vpaddd xmm10, xmm10, xmm8
vpxor xmm5, xmm10, xmm14
vpsrld xmm14, xmm5, 0x19
vpslld xmm5, xmm5, 7
vpor xmm14, xmm14, xmm5
vpaddd xmm5, xmm7, xmmword [rsp + 0x40]
vmovdqa xmmword [rsp + 0x40], xmm5
vpxor xmm2, xmm2, xmm5
vpshufb xmm2, xmm2, xmm15
vpaddd xmm4, xmm4, xmm2
vpxor xmm5, xmm4, xmm7
vpsrld xmm7, xmm5, 0x19
vpslld xmm5, xmm5, 7
vpor xmm7, xmm5, xmm7
vpshufd xmm5, xmm0, 0x93
vpshufd xmm3, xmm3, 0x93
vpshufd xmm0, xmm14, 0x93
vpshufd xmm7, xmm7, 0x93
vpshufd xmm14, xmm12, 0x4e
vpshufd xmm12, xmm11, 0x4e
vpshufd xmm10, xmm10, 0x4e
vpshufd xmm4, xmm4, 0x4e
vmovdqa xmmword [rsp + 0x30], xmm4
vpshufd xmm9, xmm9, 0x39
vpshufd xmm11, xmm6, 0x39
vpshufd xmm6, xmm8, 0x39
vpshufd xmm2, xmm2, 0x39
jmp 0x14001364b
lea r8, [rsp + 0x170]
vmovdqa xmmword [r8 - 0x40], xmm13
vmovaps xmm4, xmmword [rsp + 0x20]
vmovaps xmmword [r8 - 0x30], xmm4
vmovdqa xmmword [r8 - 0x20], xmm1
vmovaps xmm1, xmmword [rsp + 0x40]
vmovaps xmmword [r8 - 0x10], xmm1
lea r9, [rsp + 0x230]
vmovdqa xmmword [r9], xmm5
vmovdqa xmmword [r9 + 0x10], xmm3
vmovdqa xmmword [r9 + 0x20], xmm0
vmovdqa xmmword [r9 + 0x30], xmm7
lea r12, [rsp + 0x1b0]
vmovdqa xmmword [r12 - 0x40], xmm14
vmovdqa xmmword [r12 - 0x30], xmm12
vmovdqa xmmword [r12 - 0x20], xmm10
vmovaps xmm0, xmmword [rsp + 0x30]
vmovaps xmmword [r12 - 0x10], xmm0
lea r15, [rsp + 0x1f0]
vmovdqa xmmword [r15 - 0x40], xmm9
vmovdqa xmmword [r15 - 0x30], xmm11
vmovdqa xmmword [r15 - 0x20], xmm6
vmovdqa xmmword [r15 - 0x10], xmm2
lea r14, [rsp + 0x230]
vmovdqa xmm0, xmmword [rsp + 0x90]
vmovdqa xmmword [r14 - 0x40], xmm0
vmovaps xmm1, xmmword [rsp + 0x80]
vmovaps xmmword [r14 - 0x30], xmm1
vmovaps xmm1, xmmword [rsp + 0x70]
vmovaps xmmword [r14 - 0x20], xmm1
vmovdqa xmm1, xmmword [rsp + 0x60]
vmovdqa xmmword [r14 - 0x10], xmm1
add rax, 4
vpinsrd xmm0, xmm0, eax, 0
shr rax, 0x20
vpinsrd xmm0, xmm0, eax, 1
vmovdqa xmmword [rcx + 0x20], xmm0
lea rdi, [rsp + 0xf8]
lea rdx, [rsp + 0x130]
mov rcx, rdi
call sym.core::iter::traits::iterator::Iterator::zip::h863b2ac8baf16eb9
mov rax, qword [rdi + 0x20]
mov rcx, qword [rdi + 0x28]
vmovdqu ymm0, ymmword [rdi]
lea rbx, [rsp + 0x270]
vmovdqu ymmword [rbx], ymm0
mov qword [rbx + 0x20], rax
mov qword [rbx + 0x28], rcx
sub rcx, rax
cmp rcx, 4
mov eax, 4
cmovb rax, rcx
mov rdx, qword [rdi + 0x30]
mov qword [rbx + 0x30], rdx
lea rdx, [rsp + 0x170]
mov qword [rbx + 0x38], rdx
mov qword [rbx + 0x40], r12
and qword [rbx + 0x48], 0
mov qword [rbx + 0x50], rax
mov qword [rbx + 0x58], rcx
lea rcx, [rsp + 0x1b0]
mov qword [rbx + 0x60], rcx
mov qword [rbx + 0x68], r15
and qword [rbx + 0x70], 0
mov qword [rbx + 0x78], rax
mov qword [rbx + 0x80], rax
lea rcx, [rsp + 0x1f0]
mov qword [rbx + 0x88], rcx
mov qword [rbx + 0x90], r14
and qword [rbx + 0x98], 0
mov qword [rbx + 0xa0], rax
mov qword [rbx + 0xa8], rax
xor r14d, r14d
vmovdqa xmm6, xmmword [str.expand_32_byte_k]
vmovdqa xmm7, xmmword [rsp + 0xb0]
vmovdqa xmm8, xmmword [rsp + 0xa0]
mov rcx, rdi
mov rdx, rbx
vzeroupper
call sym._ZN102__LT_core..iter..adapters..zip..Zip_LT_A_C_B_GT__u20_as_u20_core..iter..traits..iterator..Iterator_GT_4next17hd6166046be
mov rax, qword [rsp + 0xf8]
test rax, rax
je 0x140013c4b
cmp r14, 0x100
je 0x140013cb9
mov rcx, qword [rsp + 0x118]
vmovdqa xmm0, xmmword [rcx]
mov rcx, qword [rsp + 0x100]
mov rdx, qword [rsp + 0x108]
vpaddd xmm1, xmm6, xmmword [rax]
vpaddd xmm2, xmm7, xmmword [rcx]
vpaddd xmm3, xmm8, xmmword [rdx]
mov rax, qword [rsp + 0x110]
vpaddd xmm0, xmm0, xmmword [rax]
vmovdqu xmmword [rsi + r14], xmm1
vmovdqu xmmword [rsi + r14 + 0x10], xmm2
vmovdqu xmmword [rsi + r14 + 0x20], xmm3
vmovdqu xmmword [rsi + r14 + 0x30], xmm0
add r14, 0x40
jmp 0x140013bce
vzeroupper
vmovaps xmm6, xmmword [rsp + 0x320]
vmovaps xmm7, xmmword [rsp + 0x330]
vmovaps xmm8, xmmword [rsp + 0x340]
vmovaps xmm9, xmmword [rsp + 0x350]
vmovaps xmm10, xmmword [rsp + 0x360]
vmovaps xmm11, xmmword [rsp + 0x370]
vmovaps xmm12, xmmword [rsp + 0x380]
vmovaps xmm13, xmmword [rsp + 0x390]
vmovaps xmm14, xmmword [rsp + 0x3a0]
vmovaps xmm15, xmmword [rsp + 0x3b0]
add rsp, 0x3c8
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
lea rcx, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001f_rand_chacha_0.3.1_srcguts.rs
call sym.core::option::unwrap_failed::he56e1bcb20c6688c
int3