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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x3038
lea rbp, [rsp + 0x80]
vmovups xmmword [rbp + 0x2fa0], xmm9
vmovups xmmword [rbp + 0x2f90], xmm8
vmovups xmmword [rbp + 0x2f80], xmm7
vmovups xmmword [rbp + 0x2f70], xmm6
and rsp, 0xffffffffffffffc0
mov rax, rcx
vmovss xmm1, dword [rcx]
mov rcx, qword [rcx + 8]
mov rcx, qword [rcx]
mov rsi, qword [rax + 0x10]
mov rdx, qword [rax + 0x18]
mov r14, qword [rax + 0x20]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rsp + 0xf0], ymm0
vmovups ymmword [rsp + 0xe0], ymm0
vmovups ymmword [rsp + 0xc0], ymm0
vmovups ymmword [rsp + 0xa0], ymm0
vmovups ymmword [rsp + 0x80], ymm0
vmovups ymmword [rsp + 0x60], ymm0
movsxd r8, dword [rax + 0x28]
vmovups ymmword [rsp + 0x40], ymm0
test r8, r8
jle 0x1400e224b
mov dword [rsp + 0x28], 0xffffffff
xor r11d, r11d
vxorps xmm0, xmm0, xmm0
xor edi, edi
xor r15d, r15d
xor ebx, ebx
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x138], rsi
mov qword [rsp + 0x130], r14
jmp 0x1400e1d38
test r12d, r12d
jle 0x1400e1e20
mov r9d, dword [rsp + 0x28]
movsxd rax, r9d
mov word [rsp + rax*8 + 0x14c], r12w
vmovss dword [rsp + rax*8 + 0x148], xmm2
inc r9d
mov dword [rsp + 0x28], r9d
mov r9d, dword [rsp + 0x2c]
mov word [rsp + rax*8 + 0x14e], r9w
vsubss xmm0, xmm0, xmm2
xor eax, eax
cmp r9w, 1
sete al
sub edi, eax
xor r15d, r15d
inc r11
cmp ebx, r8d
jge 0x1400e1f1c
mov r13d, ebx
movsx eax, word [rsi + r11*2]
mov ebx, eax
add ebx, r13d
movzx r9d, word [r14 + r11*2]
test r9d, r9d
mov dword [rsp + 0x2c], eax
je 0x1400e1e20
cmp ax, 0x11
jge 0x1400e1e50
mov dword [rsp + 0x3c], ebx
movsxd r10, edi
lea r8, [rsp + r10*4]
add r8, 0x1f00
lea r15, [rsp + r10*2]
add r15, 0x580
vxorps xmm2, xmm2, xmm2
xor r12d, r12d
mov ebx, 1
nop word [rax + rax]
xor r10d, r10d
tzcnt r10d, r9d
lea eax, [r10 + r13]
cdqe
vmulss xmm3, xmm1, dword [rcx + rax*4]
movzx r14d, word [rdx + rax*2]
vmovss dword [rcx + rax*4], xmm3
mov eax, r14d
mov esi, r14d
and esi, 0xfc
vmovss xmm4, dword [rsp + rsi + 0x40]
vsubss xmm4, xmm4, xmm3
vmovss dword [rsp + rsi + 0x40], xmm4
mov word [r15 + r12*2], r14w
shr eax, 0xa
vmovss xmm4, dword [rsp + rax*4 + 0x40]
vsubss xmm4, xmm4, xmm3
vmovss dword [rsp + rax*4 + 0x40], xmm4
vmovss dword [r8 + r12*4], xmm3
vaddss xmm2, xmm3, xmm2
shlx eax, ebx, r10d
inc r12
xor r9d, eax
jne 0x1400e1d90
add edi, r12d
mov r8, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x138]
mov r14, qword [rsp + 0x130]
mov ebx, dword [rsp + 0x3c]
jmp 0x1400e1ce9
test r15d, r15d
je 0x1400e1ede
movsxd rax, dword [rsp + 0x28]
mov r9d, dword [rsp + 0x2c]
add word [rsp + rax*8 + 0x146], r9w
jmp 0x1400e1f11
movsxd r13, r13d
movsxd r9, ebx
xor r12d, r12d
vxorps xmm3, xmm3, xmm3
vxorps xmm2, xmm2, xmm2
jmp 0x1400e1e7c
inc r13
cmp r13, r9
jge 0x1400e1ce0
vmovss xmm4, dword [rcx + r13*4]
vucomiss xmm3, xmm4
je 0x1400e1e70
movzx eax, word [rdx + r13*2]
vmulss xmm4, xmm4, xmm1
mov r10d, eax
movsxd rdi, edi
mov word [rsp + rdi*2 + 0x580], ax
and eax, 0xfc
vmovss xmm5, dword [rsp + rax + 0x40]
vsubss xmm5, xmm5, xmm4
vmovss dword [rsp + rax + 0x40], xmm5
shr r10d, 0xa
vmovss xmm5, dword [rsp + r10*4 + 0x40]
vsubss xmm5, xmm5, xmm4
vmovss dword [rsp + r10*4 + 0x40], xmm5
vaddss xmm2, xmm4, xmm2
vmovss dword [rsp + rdi*4 + 0x1f00], xmm4
inc edi
inc r12d
jmp 0x1400e1e70
mov r9d, dword [rsp + 0x28]
movsxd rax, r9d
inc r9d
mov dword [rsp + 0x28], r9d
mov word [rsp + rax*8 + 0x14c], 0
mov dword [rsp + rax*8 + 0x148], 0
mov r9d, dword [rsp + 0x2c]
mov word [rsp + rax*8 + 0x14e], r9w
mov r15d, 1
jmp 0x1400e1d2c
xor eax, eax
vmovss xmm1, dword [0x140221da0]
xor r10d, r10d
xor r9d, r9d
jmp 0x1400e1f97
movsxd r11, esi
vmovss xmm2, dword [r15]
movzx edi, byte [rdx + r11*2]
and edi, 0xfffffffc
vmovss xmm3, dword [rsp + rdi + 0x40]
movzx esi, byte [rdx + r11*2 + 1]
and esi, 0xfffffffc
vaddss xmm4, xmm2, xmm3
vsubss xmm5, xmm0, dword [rsp + rsi + 0x40]
vsubss xmm4, xmm5, xmm4
vmovss dword [rsp + r11*4 + 0xe00], xmm4
vaddss xmm2, xmm2, xmm2
vaddss xmm3, xmm3, xmm2
vmovss dword [rsp + rdi + 0x40], xmm3
vaddss xmm3, xmm2, dword [rsp + rsi + 0x40]
vmovss dword [rsp + rsi + 0x40], xmm3
vaddss xmm0, xmm2, xmm0
mov r11d, r10d
inc rax
mov r10d, r11d
cmp r9d, r8d
jge 0x1400e224b
mov esi, r9d
movsx edi, word [rsp + rax*8 + 0x146]
lea r9d, [rsi + rdi]
movsx r11d, word [rsp + rax*8 + 0x144]
test r11d, r11d
je 0x1400e2130
lea r15, [rsp + rax*8]
add r15, 0x140
cmp di, 2
jl 0x1400e1f30
cmp di, 3
jne 0x1400e2169
movsxd r13, esi
movzx esi, byte [rdx + r13*2]
movzx ebx, byte [rdx + r13*2 + 1]
movzx r14d, byte [rdx + r13*2 + 2]
mov r8, r15
movzx r15d, byte [rdx + r13*2 + 3]
movzx r12d, byte [rdx + r13*2 + 4]
vmovss xmm2, dword [rcx + r13*4]
and esi, 0xfffffffc
vaddss xmm3, xmm2, dword [rsp + rsi + 0x40]
movzx edi, byte [rdx + r13*2 + 5]
vmovss dword [rsp + rsi + 0x40], xmm3
and ebx, 0xfffffffc
vaddss xmm3, xmm2, dword [rsp + rbx + 0x40]
vmovss dword [rsp + rbx + 0x40], xmm3
vmovss xmm3, dword [rcx + r13*4 + 4]
and r14d, 0xfffffffc
vaddss xmm4, xmm3, dword [rsp + r14 + 0x40]
vmovss dword [rsp + r14 + 0x40], xmm4
and r15d, 0xfffffffc
vaddss xmm4, xmm3, dword [rsp + r15 + 0x40]
vmovss dword [rsp + r15 + 0x40], xmm4
vmovss xmm4, dword [rcx + r13*4 + 8]
and r12d, 0xfffffffc
vaddss xmm5, xmm4, dword [rsp + r12 + 0x40]
vmovss dword [rsp + r12 + 0x40], xmm5
and edi, 0xfffffffc
vaddss xmm5, xmm4, dword [rsp + rdi + 0x40]
vmovss dword [rsp + rdi + 0x40], xmm5
vmovss xmm6, dword [r8]
vmovss xmm7, dword [rsp + rsi + 0x40]
vaddss xmm8, xmm7, dword [rsp + rbx + 0x40]
vaddss xmm9, xmm6, xmm0
vsubss xmm8, xmm9, xmm8
vmovss dword [rsp + r13*4 + 0xe00], xmm8
vmovss xmm8, dword [rsp + r14 + 0x40]
vaddss xmm8, xmm8, dword [rsp + r15 + 0x40]
vsubss xmm8, xmm9, xmm8
vmovss dword [rsp + r13*4 + 0xe04], xmm8
vaddss xmm5, xmm5, dword [rsp + r12 + 0x40]
vsubss xmm5, xmm9, xmm5
vmovss dword [rsp + r13*4 + 0xe08], xmm5
vaddss xmm5, xmm7, xmm2
vmovss dword [rsp + rsi + 0x40], xmm5
vaddss xmm2, xmm2, dword [rsp + rbx + 0x40]
vmovss dword [rsp + rbx + 0x40], xmm2
vaddss xmm2, xmm3, dword [rsp + r14 + 0x40]
vmovss dword [rsp + r14 + 0x40], xmm2
mov r8, qword [rsp + 0x30]
vaddss xmm2, xmm3, dword [rsp + r15 + 0x40]
vmovss dword [rsp + r15 + 0x40], xmm2
vaddss xmm2, xmm4, dword [rsp + r12 + 0x40]
vmovss dword [rsp + r12 + 0x40], xmm2
vaddss xmm2, xmm4, dword [rsp + rdi + 0x40]
vmovss dword [rsp + rdi + 0x40], xmm2
vfmadd231ss xmm0, xmm6, xmm1
add r11d, r10d
jmp 0x1400e1f88
mov ebx, esi
movzx r11d, byte [rdx + rbx*2]
movzx edi, byte [rdx + rbx*2 + 1]
and r11d, 0xfffffffc
vmovss xmm2, dword [rsp + r11 + 0x40]
and edi, 0xfffffffc
vaddss xmm2, xmm2, dword [rsp + rdi + 0x40]
vsubss xmm2, xmm0, xmm2
vmovss dword [rsp + rbx*4 + 0xe00], xmm2
inc esi
cmp esi, r9d
jb 0x1400e2130
jmp 0x1400e1f85
add r11d, r10d
mov edi, r10d
nop
mov ebx, edi
movzx r14d, byte [rsp + rbx*2 + 0x580]
vmovss xmm2, dword [rsp + rbx*4 + 0x1f00]
and r14d, 0xfffffffc
vaddss xmm3, xmm2, dword [rsp + r14 + 0x40]
vmovss dword [rsp + r14 + 0x40], xmm3
movzx ebx, byte [rsp + rbx*2 + 0x581]
and ebx, 0xfffffffc
vaddss xmm2, xmm2, dword [rsp + rbx + 0x40]
vmovss dword [rsp + rbx + 0x40], xmm2
inc edi
cmp edi, r11d
jb 0x1400e2170
vmovss xmm2, dword [r15]
vaddss xmm0, xmm2, xmm0
nop dword [rax]
mov r8d, esi
movzx edi, byte [rdx + r8*2]
movzx ebx, byte [rdx + r8*2 + 1]
and edi, 0xfffffffc
vmovss xmm3, dword [rsp + rdi + 0x40]
and ebx, 0xfffffffc
vaddss xmm3, xmm3, dword [rsp + rbx + 0x40]
vsubss xmm3, xmm0, xmm3
vmovss dword [rsp + r8*4 + 0xe00], xmm3
inc esi
cmp esi, r9d
jb 0x1400e21c0
mov r8, qword [rsp + 0x30]
nop word [rax + rax]
mov edi, r10d
movzx esi, byte [rsp + rdi*2 + 0x580]
vmovss xmm3, dword [rsp + rdi*4 + 0x1f00]
and esi, 0xfffffffc
vaddss xmm4, xmm3, dword [rsp + rsi + 0x40]
vmovss dword [rsp + rsi + 0x40], xmm4
movzx esi, byte [rsp + rdi*2 + 0x581]
and esi, 0xfffffffc
vaddss xmm3, xmm3, dword [rsp + rsi + 0x40]
vmovss dword [rsp + rsi + 0x40], xmm3
inc r10d
cmp r10d, r11d
jb 0x1400e2200
vaddss xmm0, xmm0, xmm2
jmp 0x1400e1f88
shl r8, 2
lea rdx, [rsp + 0xe00]
vzeroupper
call fcn.1401bb6d0
vmovups xmm6, xmmword [rbp + 0x2f70]
vmovups xmm7, xmmword [rbp + 0x2f80]
vmovups xmm8, xmmword [rbp + 0x2f90]
vmovups xmm9, xmmword [rbp + 0x2fa0]
lea rsp, [rbp + 0x2fb8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret