Function at 0x1400dc520
Capabilities:
Encode data using xor
Encrypt data using rc4 prga

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r14
sub rsp, 0x78
movsxd r10, dword [rsp + 0xc0]
mov rdi, r8
mov ebp, dword [rsp + 0xc8]
mov rsi, rcx
shr rdx, 1
mov r14, r10
shr r9, 1
test ebp, ebp
je 0x1400dc870
mov qword [rax + 8], rbx
lea r11, [r9 + r9]
mov qword [rax - 0x28], r12
lea r12, [rdx + rdx]
mov qword [rax - 0x30], r13
mov qword [rax - 0x38], r15
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
lea eax, [r10 - 8]
movsxd r13, eax
lea eax, [r10 - 4]
mov r10, qword [rsp + 0xd0]
movsxd r15, eax
xor eax, eax
movaps xmmword [rsp + 0x10], xmm10
mov qword [rsp + 0xa8], r13
mov qword [rsp + 0xb8], r12
mov qword [rsp], r11
nop
dec ebp
mov rbx, rax
test r13, r13
js 0x1400dc67c
movdqa xmm7, xmmword [0x1401cf280]
lea rax, [r13 + 8]
movdqa xmm9, xmmword [0x1401cf2c0]
mov rcx, rsi
sub rcx, rdi
xorps xmm6, xmm6
shr rax, 3
xorps xmm8, xmm8
xorps xmm10, xmm10
mov rdx, rdi
lea rbx, [rax*8]
nop dword [rax]
nop word [rax + rax]
movss xmm3, dword [r10]
shufps xmm3, xmm3, 0
movdqu xmm5, xmmword [rcx + rdx]
lea rdx, [rdx + 0x10]
movaps xmm1, xmm3
movdqa xmm0, xmm5
punpcklwd xmm0, xmm6
cvtdq2ps xmm0, xmm0
divps xmm1, xmm0
movdqa xmm0, xmm5
pcmpeqw xmm5, xmm10
punpckhwd xmm0, xmm6
cvtdq2ps xmm0, xmm0
cvtps2dq xmm2, xmm1
divps xmm3, xmm0
movdqa xmm4, xmm2
pcmpgtd xmm4, xmm8
pand xmm4, xmm2
psubd xmm4, xmm7
cvtps2dq xmm1, xmm3
movdqa xmm0, xmm1
pcmpgtd xmm0, xmm8
pand xmm0, xmm1
psubd xmm0, xmm7
packssdw xmm4, xmm0
psubw xmm4, xmm9
pand xmm5, xmm4
pxor xmm5, xmm4
movdqu xmmword [rdx - 0x10], xmm5
sub rax, 1
jne 0x1400dc600
cmp rbx, r15
jg 0x1400dc7c4
lea rcx, [rbx + 1]
mov r11, r15
sub r11, rbx
lea rcx, [rdi + rcx*2]
shr r11, 2
mov r9, rsi
inc r11
sub r9, rdi
xor r12d, r12d
mov r13d, 0xffff
lea rbx, [rbx + r11*4]
nop dword [rax]
movzx eax, word [r9 + rcx - 2]
test ax, ax
je 0x1400dc6e6
movss xmm1, dword [r10]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
cvtss2si r8d, xmm1
cmp r8d, r13d
jbe 0x1400dc6ea
test r8d, r8d
mov eax, r12d
cmovg ax, r13w
movzx r8d, ax
jmp 0x1400dc6ea
movzx r8d, r12w
movzx eax, word [r9 + rcx]
test ax, ax
je 0x1400dc71c
movss xmm1, dword [r10]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
cvtss2si edx, xmm1
cmp edx, r13d
jbe 0x1400dc720
test edx, edx
mov eax, r12d
cmovg ax, r13w
movzx edx, ax
jmp 0x1400dc720
movzx edx, r12w
mov word [rcx - 2], r8w
mov word [rcx], dx
movzx eax, word [r9 + rcx + 2]
test ax, ax
je 0x1400dc75e
movss xmm1, dword [r10]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
cvtss2si r8d, xmm1
cmp r8d, r13d
jbe 0x1400dc762
test r8d, r8d
mov eax, r12d
cmovg ax, r13w
movzx r8d, ax
jmp 0x1400dc762
movzx r8d, r12w
movzx eax, word [r9 + rcx + 4]
test ax, ax
je 0x1400dc795
movss xmm1, dword [r10]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
cvtss2si edx, xmm1
cmp edx, r13d
jbe 0x1400dc799
test edx, edx
mov eax, r12d
cmovg ax, r13w
movzx edx, ax
jmp 0x1400dc799
movzx edx, r12w
mov word [rcx + 2], r8w
mov word [rcx + 4], dx
add rcx, 8
sub r11, 1
jne 0x1400dc6b0
mov r13, qword [rsp + 0xa8]
mov r12, qword [rsp + 0xb8]
mov r11, qword [rsp]
cmp rbx, r14
jge 0x1400dc82a
mov r9, rsi
lea rcx, [rdi + rbx*2]
sub r9, rdi
mov r8, r14
sub r8, rbx
mov r13d, 0xffff
nop
movzx eax, word [r9 + rcx]
test ax, ax
je 0x1400dc813
movss xmm1, dword [r10]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
cvtss2si edx, xmm1
cmp edx, r13d
ja 0x1400dc808
movzx eax, dx
jmp 0x1400dc815
xor eax, eax
test edx, edx
cmovg ax, r13w
jmp 0x1400dc815
xor eax, eax
mov word [rcx], ax
add rcx, 2
sub r8, 1
jne 0x1400dc7e0
mov r13, qword [rsp + 0xa8]
add rsi, r12
add rdi, r11
mov eax, 0
test ebp, ebp
jne 0x1400dc5b0
movaps xmm10, xmmword [rsp + 0x10]
movaps xmm9, xmmword [rsp + 0x20]
movaps xmm8, xmmword [rsp + 0x30]
movaps xmm7, xmmword [rsp + 0x40]
movaps xmm6, xmmword [rsp + 0x50]
mov r15, qword [rsp + 0x60]
mov r13, qword [rsp + 0x68]
mov r12, qword [rsp + 0x70]
mov rbx, qword [rsp + 0xa0]
add rsp, 0x78
pop r14
pop rdi
pop rsi
pop rbp
ret