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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x438
lea rbp, [rsp + 0x80]
movdqa xmmword [rbp + 0x3a0], xmm15
movdqa xmmword [rbp + 0x390], xmm14
movaps xmmword [rbp + 0x380], xmm13
movaps xmmword [rbp + 0x370], xmm12
movdqa xmmword [rbp + 0x360], xmm11
movaps xmmword [rbp + 0x350], xmm10
movaps xmmword [rbp + 0x340], xmm9
movaps xmmword [rbp + 0x330], xmm8
movaps xmmword [rbp + 0x320], xmm7
movaps xmmword [rbp + 0x310], xmm6
and rsp, 0xffffffffffffffe0
mov r14, rdx
mov r12, rcx
movdqa xmm10, xmmword [rcx]
movdqa xmm6, xmmword [rcx + 0x10]
movdqa xmm0, xmmword [rcx + 0x20]
mov rsi, qword [rcx + 0x20]
lea rax, [rsi + 1]
movdqa xmm1, xmm0
pinsrd xmm1, eax, 0
shr rax, 0x20
pinsrd xmm1, eax, 1
lea rax, [rsi + 2]
movdqa xmm2, xmm0
pinsrd xmm2, eax, 0
shr rax, 0x20
pinsrd xmm2, eax, 1
lea rax, [rsi + 3]
movdqa xmm3, xmm0
pinsrd xmm3, eax, 0
shr rax, 0x20
pinsrd xmm3, eax, 1
lea rdx, [rsp + 0x130]
movdqa xmmword [rsp + 0xe0], xmm0
movdqa xmmword [rdx], xmm0
movdqa xmmword [rsp + 0xd0], xmm1
movdqa xmmword [rdx + 0x10], xmm1
movdqa xmmword [rsp + 0xc0], xmm2
movdqa xmmword [rdx + 0x20], xmm2
movdqa xmmword [rsp + 0xb0], xmm3
movdqa xmmword [rdx + 0x30], xmm3
lea rdi, [rsp + 0x1e0]
mov rcx, rdi
call fcn.1400235ba
movdqa xmm3, xmmword [rdi]
movdqa xmm2, xmmword [rdi + 0x10]
movdqa xmm1, xmmword [rdi + 0x20]
movdqa xmm0, xmmword [rdi + 0x30]
movdqa xmm4, xmmword [str.expand_32_byte_kexpand_32_byte_kexpand_32_byte_k]
push 6
pop rax
movdqa xmm7, xmm10
movdqa xmm8, xmm10
movdqa xmm9, xmm10
movdqa xmmword [rsp + 0x70], xmm4
movdqa xmmword [rsp + 0x60], xmm4
movdqa xmmword [rsp + 0x50], xmm4
movdqa xmmword [rsp + 0x20], xmm4
movdqa xmm5, xmm6
movdqa xmm12, xmm6
movdqa xmmword [rsp + 0x40], xmm6
movdqa xmm13, xmm6
sub eax, 1
jb 0x14002268f
movdqa xmm14, xmmword [rsp + 0x20]
paddd xmm14, xmm10
movdqa xmmword [rsp + 0x20], xmm13
movdqa xmm13, xmmword [rsp + 0x60]
paddd xmm13, xmm7
movdqa xmmword [rsp + 0x30], xmm12
movdqa xmm12, xmmword [rsp + 0x70]
paddd xmm12, xmm8
movdqa xmm4, xmmword [rsp + 0x50]
paddd xmm4, xmm9
movdqa xmmword [rsp + 0x50], xmm4
pxor xmm3, xmm14
pxor xmm2, xmm13
pxor xmm1, xmm12
pxor xmm0, xmm4
pshuflw xmm3, xmm3, 0xb1
pshufhw xmm15, xmm3, 0xb1
pshuflw xmm2, xmm2, 0xb1
pshufhw xmm11, xmm2, 0xb1
pshuflw xmm1, xmm1, 0xb1
pshufhw xmm6, xmm1, 0xb1
pshuflw xmm0, xmm0, 0xb1
pshufhw xmm0, xmm0, 0xb1
movdqa xmm4, xmmword [rsp + 0x40]
paddd xmm4, xmm15
paddd xmm5, xmm11
movdqa xmm2, xmmword [rsp + 0x30]
paddd xmm2, xmm6
movdqa xmmword [rsp + 0x30], xmm2
movdqa xmm1, xmmword [rsp + 0x20]
paddd xmm1, xmm0
movdqa xmmword [rsp + 0x20], xmm1
pxor xmm10, xmm4
pxor xmm7, xmm5
pxor xmm8, xmm2
pxor xmm9, xmm1
movdqa xmm1, xmm10
psrld xmm1, 0x14
pslld xmm10, 0xc
por xmm10, xmm1
movdqa xmm1, xmm7
psrld xmm1, 0x14
pslld xmm7, 0xc
por xmm7, xmm1
movdqa xmm1, xmm8
psrld xmm1, 0x14
pslld xmm8, 0xc
por xmm8, xmm1
movdqa xmm1, xmm9
psrld xmm1, 0x14
pslld xmm9, 0xc
por xmm9, xmm1
paddd xmm14, xmm10
paddd xmm13, xmm7
paddd xmm12, xmm8
movdqa xmm3, xmmword [rsp + 0x50]
paddd xmm3, xmm9
movdqa xmmword [rsp + 0x50], xmm3
movdqa xmm1, xmm14
movdqa xmm2, xmmword [0x1400416e0]
pshufb xmm1, xmm2
pshufb xmm15, xmm2
pxor xmm15, xmm1
movdqa xmm1, xmm13
pshufb xmm1, xmm2
pshufb xmm11, xmm2
pxor xmm11, xmm1
movdqa xmm1, xmm12
pshufb xmm1, xmm2
pshufb xmm6, xmm2
pxor xmm6, xmm1
movdqa xmm1, xmm3
pshufb xmm1, xmm2
pshufb xmm0, xmm2
pxor xmm0, xmm1
paddd xmm4, xmm15
paddd xmm5, xmm11
movdqa xmm1, xmmword [rsp + 0x30]
paddd xmm1, xmm6
movdqa xmmword [rsp + 0x30], xmm1
movdqa xmm2, xmmword [rsp + 0x20]
paddd xmm2, xmm0
movdqa xmmword [rsp + 0x20], xmm2
pxor xmm10, xmm4
pxor xmm7, xmm5
pxor xmm8, xmm1
pxor xmm9, xmm2
movdqa xmm1, xmm10
psrld xmm1, 0x19
pslld xmm10, 7
por xmm10, xmm1
movdqa xmm1, xmm7
psrld xmm1, 0x19
pslld xmm7, 7
por xmm7, xmm1
movdqa xmm1, xmm8
psrld xmm1, 0x19
pslld xmm8, 7
por xmm8, xmm1
movdqa xmm1, xmm9
psrld xmm1, 0x19
pslld xmm9, 7
por xmm9, xmm1
pshufd xmm1, xmm10, 0x39
pshufd xmm7, xmm7, 0x39
pshufd xmm2, xmm8, 0x39
pshufd xmm3, xmm9, 0x39
pshufd xmm9, xmm4, 0x4e
pshufd xmm10, xmm5, 0x4e
pshufd xmm4, xmmword [rsp + 0x30], 0x4e
movdqa xmmword [rsp + 0x40], xmm4
pshufd xmm4, xmmword [rsp + 0x20], 0x4e
movdqa xmmword [rsp + 0x30], xmm4
paddd xmm14, xmm1
paddd xmm13, xmm7
paddd xmm12, xmm2
movdqa xmm8, xmmword [rsp + 0x50]
paddd xmm8, xmm3
pshuflw xmm5, xmm14, 0xb1
pshufhw xmm5, xmm5, 0xb1
movdqa xmm4, xmmword [0x1400416f0]
pshufb xmm15, xmm4
pxor xmm15, xmm5
pshuflw xmm5, xmm13, 0xb1
pshufhw xmm5, xmm5, 0xb1
pshufb xmm11, xmm4
pxor xmm11, xmm5
pshuflw xmm5, xmm12, 0xb1
pshufhw xmm5, xmm5, 0xb1
pshufb xmm6, xmm4
pxor xmm6, xmm5
pshuflw xmm5, xmm8, 0xb1
pshufhw xmm5, xmm5, 0xb1
pshufb xmm0, xmm4
pxor xmm0, xmm5
paddd xmm9, xmm15
paddd xmm10, xmm11
movdqa xmm5, xmmword [rsp + 0x40]
paddd xmm5, xmm6
movdqa xmmword [rsp + 0x40], xmm5
movdqa xmm4, xmmword [rsp + 0x30]
paddd xmm4, xmm0
movdqa xmmword [rsp + 0x30], xmm4
pxor xmm1, xmm9
pxor xmm7, xmm10
pxor xmm2, xmm5
pxor xmm3, xmm4
movdqa xmm5, xmm1
psrld xmm5, 0x14
pslld xmm1, 0xc
por xmm1, xmm5
movdqa xmm5, xmm7
psrld xmm5, 0x14
pslld xmm7, 0xc
por xmm7, xmm5
movdqa xmm5, xmm2
psrld xmm5, 0x14
pslld xmm2, 0xc
por xmm2, xmm5
movdqa xmm5, xmm3
psrld xmm5, 0x14
pslld xmm3, 0xc
por xmm3, xmm5
paddd xmm14, xmm1
paddd xmm13, xmm7
paddd xmm12, xmm2
movdqa xmm4, xmm8
paddd xmm4, xmm3
movdqa xmmword [rsp + 0x20], xmm14
pxor xmm15, xmm14
movdqa xmmword [rsp + 0x60], xmm13
pxor xmm11, xmm13
movdqa xmmword [rsp + 0x70], xmm12
pxor xmm6, xmm12
movdqa xmmword [rsp + 0x50], xmm4
pxor xmm0, xmm4
movdqa xmm4, xmmword [0x1400416e0]
pshufb xmm15, xmm4
pshufb xmm11, xmm4
pshufb xmm6, xmm4
pshufb xmm0, xmm4
paddd xmm9, xmm15
paddd xmm10, xmm11
movdqa xmm5, xmmword [rsp + 0x40]
paddd xmm5, xmm6
movdqa xmm4, xmmword [rsp + 0x30]
paddd xmm4, xmm0
pxor xmm1, xmm9
movdqa xmm14, xmm9
pxor xmm7, xmm10
movdqa xmm12, xmm10
pxor xmm2, xmm5
movdqa xmm13, xmm5
pxor xmm3, xmm4
movdqa xmm5, xmm1
psrld xmm5, 0x19
pslld xmm1, 7
por xmm1, xmm5
movdqa xmm5, xmm7
psrld xmm5, 0x19
pslld xmm7, 7
por xmm7, xmm5
movdqa xmm5, xmm2
psrld xmm5, 0x19
pslld xmm2, 7
por xmm2, xmm5
movdqa xmm5, xmm3
psrld xmm5, 0x19
pslld xmm3, 7
por xmm3, xmm5
pshufd xmm10, xmm1, 0x93
pshufd xmm7, xmm7, 0x93
pshufd xmm8, xmm2, 0x93
pshufd xmm9, xmm3, 0x93
pshufd xmm1, xmm14, 0x4e
movdqa xmmword [rsp + 0x40], xmm1
pshufd xmm5, xmm12, 0x4e
pshufd xmm12, xmm13, 0x4e
pshufd xmm13, xmm4, 0x4e
pshufd xmm3, xmm15, 0x39
pshufd xmm2, xmm11, 0x39
pshufd xmm1, xmm6, 0x39
pshufd xmm0, xmm0, 0x39
jmp 0x1400221fa
lea rdx, [rsp + 0x130]
movaps xmm4, xmmword [rsp + 0x20]
movaps xmmword [rdx - 0x40], xmm4
movaps xmm4, xmmword [rsp + 0x60]
movaps xmmword [rdx - 0x30], xmm4
movaps xmm4, xmmword [rsp + 0x70]
movaps xmmword [rdx - 0x20], xmm4
movaps xmm4, xmmword [rsp + 0x50]
movaps xmmword [rdx - 0x10], xmm4
lea r9, [rsp + 0x290]
movdqa xmmword [r9], xmm10
movdqa xmmword [r9 + 0x10], xmm7
movdqa xmmword [r9 + 0x20], xmm8
movdqa xmmword [r9 + 0x30], xmm9
lea rdi, [rsp + 0x2d0]
movaps xmm4, xmmword [rsp + 0x40]
movaps xmmword [rdi], xmm4
movdqa xmmword [rdi + 0x10], xmm5
movdqa xmmword [rdi + 0x20], xmm12
movdqa xmmword [rdi + 0x30], xmm13
lea rbx, [rsp + 0x310]
movdqa xmmword [rbx], xmm3
movdqa xmmword [rbx + 0x10], xmm2
movdqa xmmword [rbx + 0x20], xmm1
movdqa xmmword [rbx + 0x30], xmm0
lea r15, [rsp + 0x350]
movdqa xmm0, xmmword [rsp + 0xe0]
movdqa xmmword [r15], xmm0
movaps xmm1, xmmword [rsp + 0xd0]
movaps xmmword [r15 + 0x10], xmm1
add rsi, 4
pinsrd xmm0, esi, 0
shr rsi, 0x20
pinsrd xmm0, esi, 1
movaps xmm1, xmmword [rsp + 0xc0]
movaps xmmword [r15 + 0x20], xmm1
movdqa xmm9, xmmword [r12]
movaps xmm1, xmmword [rsp + 0xb0]
movaps xmmword [r15 + 0x30], xmm1
movdqa xmm10, xmmword [r12 + 0x10]
movdqa xmmword [r12 + 0x20], xmm0
lea rsi, [rsp + 0x130]
lea r8, [rsp + 0xf0]
mov rcx, rsi
call fcn.140023385
lea r12, [rsp + 0x1e0]
mov rcx, r12
mov rdx, rsi
mov r8, rdi
call fcn.1400233ba
lea rdi, [rsp + 0x130]
mov rcx, rdi
mov rdx, r12
mov r8, rbx
call fcn.14002340a
lea rbx, [rsp + 0x1e0]
mov rcx, rbx
mov rdx, rdi
mov r8, r15
call fcn.14002346d
lea rcx, [rsp + 0x130]
mov r8d, 0xb0
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov r15d, 0x100
movdqa xmm8, xmmword [str.expand_32_byte_kexpand_32_byte_kexpand_32_byte_k]
lea rcx, [rsp + 0x88]
lea rdx, [rsp + 0x130]
call fcn.1400234d2
mov rax, qword [rsp + 0x88]
test rax, rax
je 0x14002293d
movdqa xmm7, xmmword [rax]
paddd xmm7, xmm8
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0xa8]
movdqa xmm11, xmmword [rbx]
movdqa xmm6, xmmword [rax]
paddd xmm6, xmm9
movdqa xmm12, xmmword [rcx]
paddd xmm12, xmm10
paddd xmm11, xmmword [rdx]
xor esi, esi
mov r12, r15
sub r12, 0x10
mov rdi, r14
mov r13d, 0
cmovb r14, r13
cmovb r12, r15
setae sil
mov rcx, r14
lea rdx, str.C:Users_admin.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8_rand_chacha_0.3.1_srcguts.rs
call fcn.14002335e
shl rsi, 4
add rsi, rdi
movdqu xmmword [r14], xmm7
xor edi, edi
mov r14, r12
sub r14, 0x10
mov rbx, rsi
cmovb rbx, r13
cmovb r14, r12
setae dil
mov rcx, rbx
lea rdx, str.C:Users_admin.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8_rand_chacha_0.3.1_srcguts.rs
call fcn.14002335e
shl rdi, 4
add rdi, rsi
movdqu xmmword [rbx], xmm6
xor ebx, ebx
mov rsi, r14
sub rsi, 0x10
mov r12, rdi
cmovb r12, r13
cmovb rsi, r14
setae bl
mov rcx, r12
lea rdx, str.C:Users_admin.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8_rand_chacha_0.3.1_srcguts.rs
call fcn.14002335e
shl rbx, 4
add rbx, rdi
movdqu xmmword [r12], xmm12
xor r14d, r14d
mov r15, rsi
sub r15, 0x10
mov rdi, rbx
cmovb rdi, r13
cmovb r15, rsi
setae r14b
mov rcx, rdi
lea rdx, str.C:Users_admin.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8_rand_chacha_0.3.1_srcguts.rs
call fcn.14002335e
shl r14, 4
add r14, rbx
movdqu xmmword [rdi], xmm11
jmp 0x1400227fa
movaps xmm6, xmmword [rbp + 0x310]
movaps xmm7, xmmword [rbp + 0x320]
movaps xmm8, xmmword [rbp + 0x330]
movaps xmm9, xmmword [rbp + 0x340]
movaps xmm10, xmmword [rbp + 0x350]
movaps xmm11, xmmword [rbp + 0x360]
movaps xmm12, xmmword [rbp + 0x370]
movaps xmm13, xmmword [rbp + 0x380]
movaps xmm14, xmmword [rbp + 0x390]
movaps xmm15, xmmword [rbp + 0x3a0]
lea rsp, [rbp + 0x3b8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret