Function at 0x1400772b0
Capabilities:
Encode data using xor
Encrypt data using salsa20 or chacha

Disassembly:
sub rsp, 0x1b8
vmovdqa xmmword [rsp + 0x1a0], xmm15
vmovaps xmmword [rsp + 0x190], xmm14
vmovdqa xmmword [rsp + 0x180], xmm13
vmovaps xmmword [rsp + 0x170], xmm12
vmovaps xmmword [rsp + 0x160], xmm11
vmovaps xmmword [rsp + 0x150], xmm10
vmovaps xmmword [rsp + 0x140], xmm9
vmovaps xmmword [rsp + 0x130], xmm8
vmovaps xmmword [rsp + 0x120], xmm7
vmovaps xmmword [rsp + 0x110], xmm6
mov r8, rdx
nop word cs:[rax + rax]
mov eax, dword [0x141f38718]
mov edx, dword [0x141f3871c]
add eax, edx
add eax, 0x48b82a76
xor eax, 0x30b56606
imul eax, eax, 0x1f9d7878
cmp eax, 0xa96e0425
ja 0x140077320
vmovdqa xmm8, xmmword [rcx + 0x20]
mov r9, qword [rcx + 0x20]
lea rax, [r9 + 1]
vpinsrd xmm0, xmm8, eax, 0
shr rax, 0x20
vpinsrd xmm7, xmm0, eax, 1
lea rax, [r9 + 2]
vpinsrd xmm0, xmm8, eax, 0
shr rax, 0x20
vpinsrd xmm6, xmm0, eax, 1
lea r10, [r9 + 3]
mov r11, r10
shr r11, 0x20
mov eax, dword [0x141f38720]
xor edx, edx
div dword [0x141f38724]
nop
mov eax, dword [0x141f38728]
or eax, dword [0x141f3872c]
imul rax, rax, 0x10afa7e3
shr rax, 0x3a
or eax, 0x6508aca9
cmp eax, 0x1b1b8273
je 0x140077390
vpinsrd xmm0, xmm8, r10d, 0
vpinsrd xmm5, xmm0, r11d, 1
vmovdqa xmm0, xmmword [rcx]
vmovdqa xmm2, xmmword [rcx + 0x10]
vmovdqa xmm1, xmmword [0x140108d40]
mov eax, 6
vmovdqa xmmword [rsp + 0x40], xmm5
vmovdqa xmmword [rsp + 0x50], xmm6
vmovdqa xmm4, xmm1
vmovdqa xmm3, xmm1
vmovdqa xmmword [rsp + 0x20], xmm1
vmovdqa xmmword [rsp + 0x10], xmm1
vmovdqa xmmword [rsp + 0x60], xmm7
vmovdqa xmmword [rsp + 0x80], xmm8
vmovdqa xmm11, xmm2
vmovdqa xmm14, xmm2
vmovdqa xmm10, xmm2
vmovdqa xmmword [rsp + 0x30], xmm0
vmovdqa xmm9, xmm0
vmovdqa xmm12, xmm0
nop
vpaddd xmm1, xmm9, xmmword [rsp + 0x20]
vmovdqa xmmword [rsp + 0x20], xmm1
vpxor xmm8, xmm8, xmm1
vpshuflw xmm8, xmm8, 0xb1
vmovdqa xmm1, xmm12
vpshufhw xmm12, xmm8, 0xb1
vpaddd xmm8, xmm10, xmm12
vmovdqa xmmword [rsp], xmm8
vpxor xmm9, xmm8, xmm9
vpsrld xmm10, xmm9, 0x14
vpslld xmm9, xmm9, 0xc
vpor xmm13, xmm9, xmm10
vpaddd xmm9, xmm1, xmm4
vpxor xmm7, xmm9, xmm7
vpshuflw xmm7, xmm7, 0xb1
vpshufhw xmm7, xmm7, 0xb1
vpaddd xmm4, xmm14, xmm7
vmovdqa xmmword [rsp + 0x70], xmm4
vpxor xmm10, xmm4, xmm1
vpsrld xmm14, xmm10, 0x14
vpslld xmm10, xmm10, 0xc
vpor xmm8, xmm10, xmm14
vmovdqa xmm1, xmmword [rsp + 0x30]
vpaddd xmm10, xmm1, xmm3
vpxor xmm6, xmm10, xmm6
vpshuflw xmm6, xmm6, 0xb1
vpshufhw xmm14, xmm6, 0xb1
vpaddd xmm11, xmm11, xmm14
vpxor xmm6, xmm11, xmm1
vpsrld xmm15, xmm6, 0x14
vpslld xmm6, xmm6, 0xc
vpor xmm4, xmm15, xmm6
vpaddd xmm3, xmm0, xmmword [rsp + 0x10]
vpxor xmm5, xmm3, xmm5
vpshuflw xmm5, xmm5, 0xb1
vmovdqa xmm1, xmm0
vpshufhw xmm0, xmm5, 0xb1
vpaddd xmm2, xmm2, xmm0
vpxor xmm5, xmm2, xmm1
vpsrld xmm6, xmm5, 0x14
vpslld xmm5, xmm5, 0xc
vpor xmm1, xmm5, xmm6
vpaddd xmm5, xmm13, xmmword [rsp + 0x20]
vmovdqa xmm15, xmmword [0x140108900]
vpshufb xmm6, xmm12, xmm15
vpshufb xmm12, xmm5, xmm15
vpxor xmm6, xmm12, xmm6
vpaddd xmm9, xmm8, xmm9
vmovdqa xmmword [rsp + 0x10], xmm9
vpshufb xmm7, xmm7, xmm15
vpshufb xmm9, xmm9, xmm15
vpxor xmm7, xmm9, xmm7
vpaddd xmm9, xmm10, xmm4
vpshufb xmm10, xmm14, xmm15
vpshufb xmm12, xmm9, xmm15
vpxor xmm10, xmm12, xmm10
vpaddd xmm3, xmm1, xmm3
vmovdqa xmmword [rsp + 0x20], xmm3
vpshufb xmm0, xmm0, xmm15
vpshufb xmm12, xmm3, xmm15
vpxor xmm14, xmm12, xmm0
vpaddd xmm0, xmm6, xmmword [rsp]
vmovdqa xmmword [rsp], xmm0
vpxor xmm0, xmm13, xmm0
vpsrld xmm12, xmm0, 0x19
vpslld xmm0, xmm0, 7
vpor xmm0, xmm12, xmm0
vpaddd xmm15, xmm7, xmmword [rsp + 0x70]
vpxor xmm8, xmm15, xmm8
vpsrld xmm12, xmm8, 0x19
vpslld xmm8, xmm8, 7
vpor xmm3, xmm8, xmm12
vpaddd xmm12, xmm11, xmm10
vpxor xmm4, xmm12, xmm4
vpsrld xmm11, xmm4, 0x19
vpslld xmm4, xmm4, 7
vpor xmm4, xmm11, xmm4
vpaddd xmm13, xmm14, xmm2
vpxor xmm1, xmm13, xmm1
vpsrld xmm2, xmm1, 0x19
vpslld xmm1, xmm1, 7
vpor xmm1, xmm1, xmm2
vpshufd xmm2, xmm0, 0x39
vpaddd xmm8, xmm2, xmm5
vpshuflw xmm5, xmm8, 0xb1
vpshufhw xmm5, xmm5, 0xb1
vmovdqa xmm0, xmmword [0x140108d80]
vpshufb xmm11, xmm6, xmm0
vpxor xmm5, xmm11, xmm5
vpshufd xmm11, xmm3, 0x39
vpaddd xmm3, xmm11, xmmword [rsp + 0x10]
vmovdqa xmmword [rsp + 0x30], xmm3
vpshuflw xmm6, xmm3, 0xb1
vpshufhw xmm6, xmm6, 0xb1
vpshufb xmm7, xmm7, xmm0
vpxor xmm6, xmm7, xmm6
vpshufd xmm4, xmm4, 0x39
vpaddd xmm3, xmm9, xmm4
vmovdqa xmmword [rsp + 0x10], xmm3
vpshuflw xmm7, xmm3, 0xb1
vpshufhw xmm7, xmm7, 0xb1
vpshufb xmm9, xmm10, xmm0
vpxor xmm9, xmm9, xmm7
vpshufd xmm1, xmm1, 0x39
vpaddd xmm7, xmm1, xmmword [rsp + 0x20]
vpshuflw xmm3, xmm7, 0xb1
vpshufhw xmm3, xmm3, 0xb1
vpshufb xmm10, xmm14, xmm0
vpxor xmm10, xmm10, xmm3
vpshufd xmm3, xmmword [rsp], 0x4e
vpaddd xmm3, xmm3, xmm5
vpxor xmm2, xmm3, xmm2
vpsrld xmm14, xmm2, 0x14
vpslld xmm2, xmm2, 0xc
vpor xmm2, xmm14, xmm2
vpshufd xmm14, xmm15, 0x4e
vpaddd xmm14, xmm14, xmm6
vpxor xmm11, xmm14, xmm11
vpsrld xmm0, xmm11, 0x14
vpslld xmm11, xmm11, 0xc
vpor xmm0, xmm11, xmm0
vpshufd xmm11, xmm12, 0x4e
vpaddd xmm12, xmm11, xmm9
vpxor xmm4, xmm12, xmm4
vpsrld xmm11, xmm4, 0x14
vpslld xmm4, xmm4, 0xc
vpor xmm4, xmm11, xmm4
vpshufd xmm11, xmm13, 0x4e
vpaddd xmm11, xmm11, xmm10
vmovdqa xmmword [rsp], xmm11
vpxor xmm1, xmm11, xmm1
vpsrld xmm13, xmm1, 0x14
vpslld xmm1, xmm1, 0xc
vpor xmm11, xmm13, xmm1
vpaddd xmm1, xmm8, xmm2
vmovdqa xmmword [rsp + 0x20], xmm1
vpxor xmm1, xmm1, xmm5
vpshufb xmm15, xmm1, xmmword [0x140108900]
vpaddd xmm3, xmm15, xmm3
vpxor xmm2, xmm3, xmm2
vpsrld xmm8, xmm2, 0x19
vpslld xmm2, xmm2, 7
vpor xmm13, xmm8, xmm2
vpaddd xmm1, xmm0, xmmword [rsp + 0x30]
vpxor xmm5, xmm1, xmm6
vmovdqa xmm2, xmmword [0x140108900]
vpshufb xmm5, xmm5, xmm2
vpaddd xmm8, xmm14, xmm5
vpxor xmm0, xmm8, xmm0
vpsrld xmm14, xmm0, 0x19
vpslld xmm0, xmm0, 7
vpor xmm0, xmm14, xmm0
vpaddd xmm14, xmm4, xmmword [rsp + 0x10]
vpxor xmm6, xmm14, xmm9
vpshufb xmm6, xmm6, xmm2
vpaddd xmm9, xmm12, xmm6
vpxor xmm4, xmm9, xmm4
vpsrld xmm12, xmm4, 0x19
vpslld xmm4, xmm4, 7
vpor xmm4, xmm12, xmm4
vpaddd xmm7, xmm11, xmm7
vmovdqa xmmword [rsp + 0x10], xmm7
vpxor xmm7, xmm10, xmm7
vpshufb xmm10, xmm7, xmm2
vpaddd xmm7, xmm10, xmmword [rsp]
vpxor xmm11, xmm11, xmm7
vpsrld xmm12, xmm11, 0x19
vpslld xmm11, xmm11, 7
vpor xmm11, xmm11, xmm12
vpshufd xmm2, xmm13, 0x93
vpshufd xmm12, xmm0, 0x93
vpshufd xmm0, xmm4, 0x93
vmovdqa xmmword [rsp + 0x30], xmm0
vmovdqa xmm4, xmm1
vpshufd xmm0, xmm11, 0x93
vpshufd xmm1, xmm3, 0x4e
vmovdqa xmm3, xmm14
vpshufd xmm14, xmm8, 0x4e
vpshufd xmm11, xmm9, 0x4e
vmovdqa xmm9, xmm2
vpshufd xmm2, xmm7, 0x4e
vpshufd xmm8, xmm15, 0x39
vpshufd xmm7, xmm5, 0x39
vpshufd xmm6, xmm6, 0x39
vpshufd xmm5, xmm10, 0x39
vmovdqa xmm10, xmm1
dec eax
jne 0x140077420
mov eax, dword [0x141f38730]
add eax, dword [0x141f38734]
imul rax, rax, 0x3f22aab7
shr rax, 0x3c
imul eax, eax, 0xc599d3f7
and eax, 0x617e1de3
vmovdqa xmmword [rsp + 0xe0], xmm0
vmovdqa xmm0, xmmword [rsp + 0x80]
vpaddd xmm1, xmm8, xmm0
vmovdqa xmmword [rsp + 0xd0], xmm1
vmovdqa xmm8, xmm0
vpaddd xmm0, xmm7, xmmword [rsp + 0x60]
vmovdqa xmmword [rsp + 0xc0], xmm0
vpaddd xmm0, xmm6, xmmword [rsp + 0x50]
vmovdqa xmmword [rsp + 0xb0], xmm0
vpaddd xmm0, xmm5, xmmword [rsp + 0x40]
vmovdqa xmmword [rsp + 0xa0], xmm0
cmp eax, 0xcc4fa7fe
vmovdqa xmmword [rsp + 0x90], xmm2
vmovdqa xmmword [rsp], xmm4
vmovdqa xmmword [rsp + 0x70], xmm3
vmovdqa xmmword [rsp + 0x60], xmm11
vmovdqa xmmword [rsp + 0x50], xmm14
vmovdqa xmmword [rsp + 0x40], xmm12
vmovdqa xmmword [rsp + 0x100], xmm9
vmovdqa xmmword [rsp + 0xf0], xmm10
ja 0x1400779e9
mov eax, dword [0x141f38738]
xor edx, edx
div dword [0x141f3873c]
xor eax, 0xa52baac2
lea rdx, [r9 + 4]
vpinsrd xmm0, xmm8, edx, 0
shr rdx, 0x20
vmovdqa xmm1, xmmword [0x140108d40]
vpaddd xmm2, xmm1, xmmword [rsp + 0x10]
vpaddd xmm3, xmm1, xmmword [rsp + 0x70]
vpaddd xmm4, xmm1, xmmword [rsp]
vpaddd xmm1, xmm1, xmmword [rsp + 0x20]
vmovdqa xmm5, xmmword [rcx]
vmovdqa xmm6, xmmword [rcx + 0x10]
vpinsrd xmm0, xmm0, edx, 1
vmovdqa xmmword [rcx + 0x20], xmm0
vmovdqu xmmword [r8], xmm1
vpaddd xmm0, xmm9, xmm5
vmovdqu xmmword [r8 + 0x10], xmm0
vpaddd xmm0, xmm10, xmm6
vmovdqu xmmword [r8 + 0x20], xmm0
vmovaps xmm0, xmmword [rsp + 0xd0]
vmovups xmmword [r8 + 0x30], xmm0
vmovdqu xmmword [r8 + 0x40], xmm4
vpaddd xmm0, xmm12, xmm5
vmovdqu xmmword [r8 + 0x50], xmm0
vpaddd xmm0, xmm14, xmm6
vmovdqu xmmword [r8 + 0x60], xmm0
vmovaps xmm0, xmmword [rsp + 0xc0]
vmovups xmmword [r8 + 0x70], xmm0
vmovdqu xmmword [r8 + 0x80], xmm3
vpaddd xmm0, xmm5, xmmword [rsp + 0x30]
vmovdqu xmmword [r8 + 0x90], xmm0
vpaddd xmm0, xmm11, xmm6
vmovdqu xmmword [r8 + 0xa0], xmm0
vmovaps xmm0, xmmword [rsp + 0xb0]
vmovups xmmword [r8 + 0xb0], xmm0
vmovdqu xmmword [r8 + 0xc0], xmm2
vpaddd xmm0, xmm5, xmmword [rsp + 0xe0]
vmovdqu xmmword [r8 + 0xd0], xmm0
vpaddd xmm0, xmm6, xmmword [rsp + 0x90]
vmovdqu xmmword [r8 + 0xe0], xmm0
vmovdqa xmm0, xmmword [rsp + 0xa0]
vmovdqu xmmword [r8 + 0xf0], xmm0
vzeroupper
vmovdqa xmm10, xmmword [rsp + 0xf0]
vmovdqa xmm9, xmmword [rsp + 0x100]
vmovdqa xmm12, xmmword [rsp + 0x40]
vmovdqa xmm14, xmmword [rsp + 0x50]
vmovdqa xmm11, xmmword [rsp + 0x60]
vmovdqa xmm3, xmmword [rsp + 0x70]
vmovdqa xmm4, xmmword [rsp]
vmovdqa xmm8, xmmword [rsp + 0x80]
imul rax, rax, 0x358c19ff
shr rax, 0x3c
xor eax, 0x2ba6360f
cmp eax, 0x2758cd5c
jae 0x140077b23
vmovdqa xmm0, xmmword [0x140108d40]
vpaddd xmm1, xmm0, xmmword [rsp + 0x10]
vpaddd xmm2, xmm3, xmm0
vpaddd xmm3, xmm4, xmm0
vpaddd xmm0, xmm0, xmmword [rsp + 0x20]
vmovdqa xmm4, xmmword [rcx]
vmovdqa xmm5, xmmword [rcx + 0x10]
lea rax, [r9 + 4]
vpinsrd xmm6, xmm8, eax, 0
shr rax, 0x20
vpinsrd xmm6, xmm6, eax, 1
vmovdqa xmmword [rcx + 0x20], xmm6
vmovdqu xmmword [r8], xmm0
vpaddd xmm0, xmm9, xmm4
vmovdqu xmmword [r8 + 0x10], xmm0
vpaddd xmm0, xmm10, xmm5
vmovdqu xmmword [r8 + 0x20], xmm0
vmovaps xmm0, xmmword [rsp + 0xd0]
vmovups xmmword [r8 + 0x30], xmm0
vmovdqu xmmword [r8 + 0x40], xmm3
vpaddd xmm0, xmm12, xmm4
vmovdqu xmmword [r8 + 0x50], xmm0
vpaddd xmm0, xmm14, xmm5
vmovdqu xmmword [r8 + 0x60], xmm0
vmovaps xmm0, xmmword [rsp + 0xc0]
vmovups xmmword [r8 + 0x70], xmm0
vmovdqu xmmword [r8 + 0x80], xmm2
vpaddd xmm0, xmm4, xmmword [rsp + 0x30]
vmovdqu xmmword [r8 + 0x90], xmm0
vpaddd xmm0, xmm11, xmm5
vmovdqu xmmword [r8 + 0xa0], xmm0
vmovaps xmm0, xmmword [rsp + 0xb0]
vmovups xmmword [r8 + 0xb0], xmm0
vmovdqu xmmword [r8 + 0xc0], xmm1
vpaddd xmm0, xmm4, xmmword [rsp + 0xe0]
vmovdqu xmmword [r8 + 0xd0], xmm0
vpaddd xmm0, xmm5, xmmword [rsp + 0x90]
vmovdqu xmmword [r8 + 0xe0], xmm0
vmovdqa xmm0, xmmword [rsp + 0xa0]
vmovdqu xmmword [r8 + 0xf0], xmm0
vzeroupper
vmovdqa xmm10, xmmword [rsp + 0xf0]
vmovdqa xmm9, xmmword [rsp + 0x100]
vmovdqa xmm12, xmmword [rsp + 0x40]
vmovdqa xmm14, xmmword [rsp + 0x50]
vmovdqa xmm11, xmmword [rsp + 0x60]
vmovdqa xmm8, xmmword [rsp + 0x80]
jmp 0x140077878
vmovaps xmm6, xmmword [rsp + 0x110]
vmovaps xmm7, xmmword [rsp + 0x120]
vmovaps xmm8, xmmword [rsp + 0x130]
vmovaps xmm9, xmmword [rsp + 0x140]
vmovaps xmm10, xmmword [rsp + 0x150]
vmovaps xmm11, xmmword [rsp + 0x160]
vmovaps xmm12, xmmword [rsp + 0x170]
vmovaps xmm13, xmmword [rsp + 0x180]
vmovaps xmm14, xmmword [rsp + 0x190]
vmovaps xmm15, xmmword [rsp + 0x1a0]
add rsp, 0x1b8
ret