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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x338
movaps xmmword [rsp + 0x320], xmm15
movaps xmmword [rsp + 0x310], xmm14
movaps xmmword [rsp + 0x300], xmm13
movaps xmmword [rsp + 0x2f0], xmm12
movaps xmmword [rsp + 0x2e0], xmm11
movaps xmmword [rsp + 0x2d0], xmm10
movaps xmmword [rsp + 0x2c0], xmm9
movaps xmmword [rsp + 0x2b0], xmm8
movaps xmmword [rsp + 0x2a0], xmm7
movdqa xmmword [rsp + 0x290], xmm6
mov r15, rdx
mov rax, qword [rcx + 0x20]
movdqa xmm0, xmmword [rcx]
movdqa xmm7, xmmword [rcx + 0x10]
movdqa xmm14, xmmword [rcx + 0x20]
lea rdx, [rax + 1]
movdqa xmm15, xmm14
pinsrd xmm15, edx, 0
shr rdx, 0x20
pinsrd xmm15, edx, 1
lea rdx, [rax + 2]
movdqa xmm5, xmm14
pinsrd xmm5, edx, 0
shr rdx, 0x20
pinsrd xmm5, edx, 1
add rax, 3
movdqa xmm4, xmm14
pinsrd xmm4, eax, 0
shr rax, 0x20
pinsrd xmm4, eax, 1
movdqa xmm3, xmmword [0x14004b270]
mov eax, 6
movdqa xmm8, xmm0
movdqa xmm9, xmm0
movdqa xmm10, xmm0
movdqa xmm11, xmm7
movdqa xmm12, xmm7
movdqa xmm13, xmm7
movdqa xmmword [rsp + 0x40], xmm3
movdqa xmmword [rsp + 0x60], xmm3
movdqa xmmword [rsp + 0x20], xmm3
movdqa xmmword [rsp + 0x50], xmm3
sub eax, 1
jb 0x14000dbdf
movdqa xmm6, xmmword [rsp + 0x50]
paddd xmm6, xmm0
movdqa xmm3, xmmword [rsp + 0x60]
paddd xmm3, xmm8
movdqa xmm2, xmmword [rsp + 0x40]
paddd xmm2, xmm9
movdqa xmm1, xmmword [rsp + 0x20]
paddd xmm1, xmm10
pxor xmm14, xmm6
pxor xmm15, xmm3
pxor xmm5, xmm2
pxor xmm4, xmm1
pshuflw xmm14, xmm14, 0xb1
pshufhw xmm14, xmm14, 0xb1
pshuflw xmm15, xmm15, 0xb1
pshufhw xmm15, xmm15, 0xb1
pshuflw xmm5, xmm5, 0xb1
pshufhw xmm5, xmm5, 0xb1
pshuflw xmm4, xmm4, 0xb1
pshufhw xmm4, xmm4, 0xb1
paddd xmm7, xmm14
movdqa xmmword [rsp + 0x30], xmm7
paddd xmm11, xmm15
paddd xmm12, xmm5
movdqa xmmword [rsp + 0x20], xmm12
paddd xmm13, xmm4
pxor xmm0, xmm7
pxor xmm8, xmm11
pxor xmm9, xmm12
pxor xmm10, xmm13
movdqa xmm7, xmm0
psrld xmm7, 0x14
pslld xmm0, 0xc
por xmm0, xmm7
movdqa xmm7, xmm8
psrld xmm7, 0x14
pslld xmm8, 0xc
por xmm8, xmm7
movdqa xmm7, xmm9
psrld xmm7, 0x14
pslld xmm9, 0xc
por xmm9, xmm7
movdqa xmm7, xmm10
psrld xmm7, 0x14
pslld xmm10, 0xc
por xmm10, xmm7
paddd xmm6, xmm0
paddd xmm3, xmm8
paddd xmm2, xmm9
paddd xmm1, xmm10
movdqa xmm7, xmm6
movdqa xmm12, xmm13
movdqa xmm13, xmm11
movdqa xmm11, xmmword [0x14004b280]
pshufb xmm7, xmm11
pshufb xmm14, xmm11
pxor xmm14, xmm7
movdqa xmm7, xmm3
pshufb xmm7, xmm11
pshufb xmm15, xmm11
pxor xmm15, xmm7
movdqa xmm7, xmm2
pshufb xmm7, xmm11
pshufb xmm5, xmm11
pxor xmm5, xmm7
movdqa xmm7, xmm1
pshufb xmm7, xmm11
pshufb xmm4, xmm11
pxor xmm4, xmm7
movdqa xmm11, xmmword [rsp + 0x30]
paddd xmm11, xmm14
movdqa xmmword [rsp + 0x30], xmm11
paddd xmm13, xmm15
movdqa xmm7, xmmword [rsp + 0x20]
paddd xmm7, xmm5
paddd xmm12, xmm4
pxor xmm0, xmm11
pxor xmm8, xmm13
pxor xmm9, xmm7
movdqa xmm11, xmm7
pxor xmm10, xmm12
movdqa xmm7, xmm0
psrld xmm7, 0x19
pslld xmm0, 7
por xmm0, xmm7
movdqa xmm7, xmm8
psrld xmm7, 0x19
pslld xmm8, 7
por xmm8, xmm7
movdqa xmm7, xmm9
psrld xmm7, 0x19
pslld xmm9, 7
por xmm9, xmm7
movdqa xmm7, xmm10
psrld xmm7, 0x19
pslld xmm10, 7
por xmm10, xmm7
pshufd xmm7, xmm0, 0x39
pshufd xmm8, xmm8, 0x39
pshufd xmm9, xmm9, 0x39
pshufd xmm10, xmm10, 0x39
pshufd xmm0, xmmword [rsp + 0x30], 0x4e
movdqa xmmword [rsp + 0x40], xmm0
pshufd xmm0, xmm13, 0x4e
movdqa xmmword [rsp + 0x20], xmm0
pshufd xmm0, xmm11, 0x4e
movdqa xmmword [rsp + 0x30], xmm0
pshufd xmm13, xmm12, 0x4e
paddd xmm6, xmm7
paddd xmm3, xmm8
paddd xmm2, xmm9
paddd xmm1, xmm10
pshuflw xmm0, xmm6, 0xb1
pshufhw xmm0, xmm0, 0xb1
movdqa xmm11, xmmword [0x14004b290]
pshufb xmm14, xmm11
pxor xmm14, xmm0
pshuflw xmm0, xmm3, 0xb1
pshufhw xmm0, xmm0, 0xb1
pshufb xmm15, xmm11
pxor xmm15, xmm0
pshuflw xmm0, xmm2, 0xb1
pshufhw xmm0, xmm0, 0xb1
pshufb xmm5, xmm11
pxor xmm5, xmm0
pshuflw xmm0, xmm1, 0xb1
pshufhw xmm0, xmm0, 0xb1
pshufb xmm4, xmm11
pxor xmm4, xmm0
movdqa xmm11, xmmword [rsp + 0x40]
paddd xmm11, xmm14
movdqa xmm12, xmmword [rsp + 0x20]
paddd xmm12, xmm15
movdqa xmm0, xmmword [rsp + 0x30]
paddd xmm0, xmm5
movdqa xmmword [rsp + 0x30], xmm0
paddd xmm13, xmm4
pxor xmm7, xmm11
pxor xmm8, xmm12
pxor xmm9, xmm0
pxor xmm10, xmm13
movdqa xmm0, xmm7
psrld xmm0, 0x14
pslld xmm7, 0xc
por xmm7, xmm0
movdqa xmm0, xmm8
psrld xmm0, 0x14
pslld xmm8, 0xc
por xmm8, xmm0
movdqa xmm0, xmm9
psrld xmm0, 0x14
pslld xmm9, 0xc
por xmm9, xmm0
movdqa xmm0, xmm10
psrld xmm0, 0x14
pslld xmm10, 0xc
por xmm10, xmm0
paddd xmm6, xmm7
paddd xmm3, xmm8
paddd xmm2, xmm9
paddd xmm1, xmm10
movdqa xmmword [rsp + 0x50], xmm6
pxor xmm14, xmm6
movdqa xmmword [rsp + 0x60], xmm3
pxor xmm15, xmm3
movdqa xmmword [rsp + 0x40], xmm2
pxor xmm5, xmm2
movdqa xmmword [rsp + 0x20], xmm1
pxor xmm4, xmm1
movdqa xmm0, xmmword [0x14004b280]
pshufb xmm14, xmm0
pshufb xmm15, xmm0
pshufb xmm5, xmm0
pshufb xmm4, xmm0
paddd xmm11, xmm14
paddd xmm12, xmm15
movdqa xmm0, xmmword [rsp + 0x30]
paddd xmm0, xmm5
paddd xmm13, xmm4
pxor xmm7, xmm11
pxor xmm8, xmm12
pxor xmm9, xmm0
movdqa xmm1, xmm0
pxor xmm10, xmm13
movdqa xmm0, xmm7
psrld xmm0, 0x19
pslld xmm7, 7
por xmm7, xmm0
movdqa xmm0, xmm8
psrld xmm0, 0x19
pslld xmm8, 7
por xmm8, xmm0
movdqa xmm0, xmm9
psrld xmm0, 0x19
pslld xmm9, 7
por xmm9, xmm0
movdqa xmm0, xmm10
psrld xmm0, 0x19
pslld xmm10, 7
por xmm10, xmm0
pshufd xmm0, xmm7, 0x93
pshufd xmm8, xmm8, 0x93
pshufd xmm9, xmm9, 0x93
pshufd xmm10, xmm10, 0x93
pshufd xmm7, xmm11, 0x4e
pshufd xmm11, xmm12, 0x4e
pshufd xmm12, xmm1, 0x4e
pshufd xmm13, xmm13, 0x4e
pshufd xmm14, xmm14, 0x39
pshufd xmm15, xmm15, 0x39
pshufd xmm5, xmm5, 0x39
pshufd xmm4, xmm4, 0x39
jmp 0x14000d776
mov r8, qword [rcx + 0x20]
lea rax, [r8 + 1]
movdqa xmm1, xmmword [rcx + 0x20]
movdqa xmm2, xmm1
pinsrd xmm2, eax, 0
shr rax, 0x20
pinsrd xmm2, eax, 1
lea rax, [rsp + 0x1e0]
lea rdx, [r8 + 2]
movdqa xmm3, xmm1
pinsrd xmm3, edx, 0
shr rdx, 0x20
pinsrd xmm3, edx, 1
movdqa xmmword [rax - 0x30], xmm2
movdqa xmmword [rax - 0x20], xmm3
lea rdx, [r8 + 3]
movdqa xmm2, xmm1
pinsrd xmm2, edx, 0
shr rdx, 0x20
pinsrd xmm2, edx, 1
movdqa xmmword [rax - 0x10], xmm2
mov edx, 4
add r8, rdx
movdqa xmm2, xmm1
pinsrd xmm2, r8d, 0
shr r8, 0x20
pinsrd xmm2, r8d, 1
movdqa xmmword [rax - 0x40], xmm1
movdqa xmmword [rcx + 0x20], xmm2
lea r8, [rsp + 0xe0]
movaps xmm1, xmmword [rsp + 0x50]
movaps xmmword [r8 - 0x40], xmm1
movaps xmm1, xmmword [rsp + 0x60]
movaps xmmword [r8 - 0x30], xmm1
movaps xmm1, xmmword [rsp + 0x40]
movaps xmmword [r8 - 0x20], xmm1
movaps xmm1, xmmword [rsp + 0x20]
movaps xmmword [r8 - 0x10], xmm1
lea r9, [rsp + 0x120]
movdqa xmmword [r9 - 0x40], xmm0
movdqa xmmword [r9 - 0x30], xmm8
movdqa xmmword [r9 - 0x20], xmm9
movdqa xmmword [r9 - 0x10], xmm10
lea r10, [rsp + 0x160]
movdqa xmmword [r10 - 0x40], xmm7
movdqa xmmword [r10 - 0x30], xmm11
movdqa xmmword [r10 - 0x20], xmm12
movdqa xmmword [r10 - 0x10], xmm13
lea r11, [rsp + 0x1a0]
movdqa xmmword [r11 - 0x40], xmm14
lea rsi, [rsp + 0xa0]
lea rdi, [rsp + 0x1e0]
mov qword [rdi], rsi
movdqa xmmword [r11 - 0x30], xmm15
movdqa xmmword [r11 - 0x20], xmm5
movdqa xmmword [r11 - 0x10], xmm4
mov qword [rdi + 8], r8
mov qword [rdi + 0x10], r8
mov qword [rdi + 0x18], r9
and qword [rdi + 0x20], 0
mov qword [rdi + 0x28], rdx
mov qword [rdi + 0x30], rdx
lea r8, [rsp + 0x120]
mov qword [rdi + 0x38], r8
mov qword [rdi + 0x40], r10
and qword [rdi + 0x48], 0
mov qword [rdi + 0x50], rdx
mov qword [rdi + 0x58], rdx
lea r8, [rsp + 0x160]
mov qword [rdi + 0x60], r8
mov qword [rdi + 0x68], r11
and qword [rdi + 0x70], 0
mov qword [rdi + 0x78], rdx
mov qword [rdi + 0x80], rdx
lea r8, [rsp + 0x1a0]
mov qword [rdi + 0x88], r8
mov qword [rdi + 0x90], rax
and qword [rdi + 0x98], 0
movdqa xmm6, xmmword [rcx]
movdqa xmm7, xmmword [rcx + 0x10]
mov qword [rdi + 0xa0], rdx
mov qword [rdi + 0xa8], rdx
mov r12d, 0x100
xor r14d, r14d
movdqa xmm8, xmmword [0x14004b270]
lea rcx, [rsp + 0x78]
mov rdx, rdi
call sym._ZN102__LT_core..iter..adapters..zip..Zip_LT_A_C_B_GT__u20_as_u20_core..iter..traits..iterator..Iterator_GT_4next17h85a9b9946c
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x14000dee7
movdqa xmm12, xmmword [rax]
paddd xmm12, xmm8
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x90]
mov r8, qword [rsp + 0x98]
movdqa xmm9, xmmword [r8]
movdqa xmm11, xmmword [rax]
paddd xmm11, xmm6
movdqa xmm10, xmmword [rcx]
paddd xmm10, xmm7
paddd xmm9, xmmword [rdx]
xor esi, esi
mov rbx, r12
sub rbx, 0x10
mov rbp, r15
cmovb rbp, r14
cmovb rbx, r12
setae sil
mov rcx, rbp
lea rdx, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_rand_chacha_0.3.1_srcguts.rs
call sym.core::option::Option_T_::unwrap::h164f22778b9e0f39
shl rsi, 4
add rsi, r15
movdqu xmmword [rbp], xmm12
xor r15d, r15d
mov r13, rbx
sub r13, 0x10
mov r12, rsi
cmovb r12, r14
cmovb r13, rbx
setae r15b
mov rcx, r12
lea rdx, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_rand_chacha_0.3.1_srcguts.rs
call sym.core::option::Option_T_::unwrap::h164f22778b9e0f39
shl r15, 4
add r15, rsi
movdqu xmmword [r12], xmm11
xor ebp, ebp
mov rbx, r13
sub rbx, 0x10
mov rsi, r15
cmovb rsi, r14
cmovb rbx, r13
setae bpl
mov rcx, rsi
lea rdx, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_rand_chacha_0.3.1_srcguts.rs
call sym.core::option::Option_T_::unwrap::h164f22778b9e0f39
shl rbp, 4
add rbp, r15
movdqu xmmword [rsi], xmm10
xor r15d, r15d
mov r12, rbx
sub r12, 0x10
mov rsi, rbp
cmovb rsi, r14
cmovb r12, rbx
setae r15b
mov rcx, rsi
lea rdx, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_rand_chacha_0.3.1_srcguts.rs
call sym.core::option::Option_T_::unwrap::h164f22778b9e0f39
shl r15, 4
add r15, rbp
movdqu xmmword [rsi], xmm9
jmp 0x14000ddaf
movaps xmm6, xmmword [rsp + 0x290]
movaps xmm7, xmmword [rsp + 0x2a0]
movaps xmm8, xmmword [rsp + 0x2b0]
movaps xmm9, xmmword [rsp + 0x2c0]
movaps xmm10, xmmword [rsp + 0x2d0]
movaps xmm11, xmmword [rsp + 0x2e0]
movaps xmm12, xmmword [rsp + 0x2f0]
movaps xmm13, xmmword [rsp + 0x300]
movaps xmm14, xmmword [rsp + 0x310]
movaps xmm15, xmmword [rsp + 0x320]
add rsp, 0x338
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret