Function at 0x1400e22a0
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]
and rsp, 0xffffffffffffffc0
vmovss xmm1, dword [rcx]
mov r14, qword [rcx + 8]
mov r10, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
mov rsi, qword [rcx + 0x20]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rsp + 0x130], ymm0
vmovups ymmword [rsp + 0x120], ymm0
vmovups ymmword [rsp + 0x100], ymm0
vmovups ymmword [rsp + 0xe0], ymm0
vmovups ymmword [rsp + 0xc0], ymm0
vmovups ymmword [rsp + 0xa0], ymm0
movsxd r8, dword [rcx + 0x28]
vmovups ymmword [rsp + 0x80], ymm0
test r8, r8
jle 0x1400e270e
mov ecx, 0xffffffff
xor r11d, r11d
vxorps xmm0, xmm0, xmm0
xor edi, edi
xor r15d, r15d
xor ebx, ebx
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x78], r14
mov qword [rsp + 0x70], r10
mov qword [rsp + 0x68], rsi
jmp 0x1400e239a
test r12d, r12d
mov ecx, dword [rsp + 0x54]
mov r8d, dword [rsp + 0x50]
jle 0x1400e24a0
movsxd rax, ecx
mov word [rsp + rax*8 + 0x18c], r12w
vmovss dword [rsp + rax*8 + 0x188], xmm2
inc ecx
mov word [rsp + rax*8 + 0x18e], r8w
vsubss xmm0, xmm0, xmm2
xor r15d, r15d
mov r8, qword [rsp + 0x58]
inc r11
cmp ebx, r8d
jge 0x1400e2586
mov r13d, ebx
movsx r8d, word [r10 + r11*2]
mov ebx, r8d
add ebx, r13d
movzx eax, word [rsi + r11*2]
test eax, eax
je 0x1400e24a0
mov dword [rsp + 0x54], ecx
mov dword [rsp + 0x50], r8d
cmp r8w, 0x11
jge 0x1400e24c0
mov dword [rsp + 0x64], ebx
mov r9, qword [r14]
movsxd r10, edi
lea r15, [rsp + r10*4]
add r15, 0xe40
lea r10, [rsp + r10*2]
add r10, 0x5c0
vxorps xmm2, xmm2, xmm2
xor r12d, r12d
mov ebx, 1
nop word cs:[rax + rax]
xor ecx, ecx
tzcnt ecx, eax
lea r8d, [rcx + r13]
movsxd r8, r8d
movzx esi, word [rdx + r8*2]
vmulss xmm3, xmm1, dword [r9 + r8*4]
mov r8d, esi
mov r14d, esi
and r14d, 0xfc
vmovss xmm4, dword [rsp + r14 + 0x80]
vsubss xmm4, xmm4, xmm3
vmovss dword [rsp + r14 + 0x80], xmm4
mov word [r10 + r12*2], si
shr r8d, 0xa
vmovss xmm4, dword [rsp + r8*4 + 0x80]
vsubss xmm4, xmm4, xmm3
vmovss dword [rsp + r8*4 + 0x80], xmm4
vmovss dword [r15 + r12*4], xmm3
vaddss xmm2, xmm3, xmm2
shlx ecx, ebx, ecx
inc r12
xor eax, ecx
jne 0x1400e2400
add edi, r12d
mov r14, qword [rsp + 0x78]
mov r10, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x54]
mov ebx, dword [rsp + 0x64]
mov r8d, dword [rsp + 0x50]
jmp 0x1400e2362
movsxd rax, ecx
test r15d, r15d
je 0x1400e255b
add word [rsp + rax*8 + 0x186], r8w
jmp 0x1400e257b
mov rax, qword [r14]
movsxd r13, r13d
movsxd r9, ebx
xor r12d, r12d
vxorps xmm3, xmm3, xmm3
vxorps xmm2, xmm2, xmm2
jmp 0x1400e24ec
inc r13
cmp r13, r9
jge 0x1400e2350
vmovss xmm4, dword [rax + r13*4]
vucomiss xmm3, xmm4
je 0x1400e24e0
movzx ecx, word [rdx + r13*2]
vmulss xmm4, xmm4, xmm1
mov r8d, ecx
movsxd rdi, edi
mov word [rsp + rdi*2 + 0x5c0], cx
and ecx, 0xfc
vmovss xmm5, dword [rsp + rcx + 0x80]
vsubss xmm5, xmm5, xmm4
vmovss dword [rsp + rcx + 0x80], xmm5
shr r8d, 0xa
vmovss xmm5, dword [rsp + r8*4 + 0x80]
vsubss xmm5, xmm5, xmm4
vmovss dword [rsp + r8*4 + 0x80], xmm5
vaddss xmm2, xmm4, xmm2
vmovss dword [rsp + rdi*4 + 0xe40], xmm4
inc edi
inc r12d
jmp 0x1400e24e0
inc ecx
mov word [rsp + rax*8 + 0x18c], 0
mov dword [rsp + rax*8 + 0x188], 0
mov word [rsp + rax*8 + 0x18e], r8w
mov r15d, 1
jmp 0x1400e2389
xor ecx, ecx
xor r9d, r9d
xor r11d, r11d
jmp 0x1400e259f
inc rcx
mov r11d, r10d
cmp r10d, r8d
jge 0x1400e270e
movsx r10d, word [rsp + rcx*8 + 0x186]
add r10d, r11d
movsx esi, word [rsp + rcx*8 + 0x184]
test esi, esi
je 0x1400e26d0
add esi, r9d
mov eax, r9d
nop word cs:[rax + rax]
mov ebx, eax
movzx edi, byte [rsp + rbx*2 + 0x5c0]
vmovss xmm1, dword [rsp + rbx*4 + 0xe40]
and edi, 0xfffffffc
vaddss xmm2, xmm1, dword [rsp + rdi + 0x80]
vmovss dword [rsp + rdi + 0x80], xmm2
movzx edi, byte [rsp + rbx*2 + 0x5c1]
and edi, 0xfffffffc
vaddss xmm1, xmm1, dword [rsp + rdi + 0x80]
vmovss dword [rsp + rdi + 0x80], xmm1
inc eax
cmp eax, esi
jb 0x1400e25d0
vmovss xmm1, dword [rsp + rcx*8 + 0x180]
vaddss xmm0, xmm1, xmm0
nop dword [rax + rax]
mov eax, r11d
movzx ebx, byte [rdx + rax*2]
movzx edi, byte [rdx + rax*2 + 1]
and ebx, 0xfffffffc
vmovss xmm2, dword [rsp + rbx + 0x80]
and edi, 0xfffffffc
vaddss xmm2, xmm2, dword [rsp + rdi + 0x80]
vsubss xmm2, xmm0, xmm2
vmovss dword [rsp + rax*4 + 0x1f40], xmm2
inc r11d
cmp r11d, r10d
jb 0x1400e2630
nop dword [rax]
mov eax, r9d
movzx r11d, byte [rsp + rax*2 + 0x5c0]
vmovss xmm2, dword [rsp + rax*4 + 0xe40]
and r11d, 0xfffffffc
vaddss xmm3, xmm2, dword [rsp + r11 + 0x80]
vmovss dword [rsp + r11 + 0x80], xmm3
movzx eax, byte [rsp + rax*2 + 0x5c1]
and eax, 0xfffffffc
vaddss xmm2, xmm2, dword [rsp + rax + 0x80]
vmovss dword [rsp + rax + 0x80], xmm2
inc r9d
cmp r9d, esi
jb 0x1400e2670
vaddss xmm0, xmm0, xmm1
mov r9d, esi
jmp 0x1400e2590
mov eax, r11d
movzx edi, byte [rdx + rax*2]
movzx esi, byte [rdx + rax*2 + 1]
and edi, 0xfffffffc
vmovss xmm1, dword [rsp + rdi + 0x80]
and esi, 0xfffffffc
vaddss xmm1, xmm1, dword [rsp + rsi + 0x80]
vsubss xmm1, xmm0, xmm1
vmovss dword [rsp + rax*4 + 0x1f40], xmm1
inc r11d
cmp r11d, r10d
jb 0x1400e26d0
jmp 0x1400e2590
mov rcx, qword [r14]
shl r8, 2
lea rdx, [rsp + 0x1f40]
vzeroupper
call fcn.1401bb6d0
nop
lea rsp, [rbp + 0x2fb8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret