Function at 0x1402b58b0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rsi
push rdi
sub rsp, 0x138
mov rsi, rcx
mov rdi, qword [rcx + 0x18]
mov eax, dword [0x140613890]
mov ecx, dword [0x1406161d0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 0x26838]
jg 0x1402b5b08
cmp rdi, qword [0x140613880]
jae 0x1402b58f5
xor eax, eax
jmp 0x1402b5ad0
mov eax, dword [0x140613890]
mov ecx, dword [0x1406161d0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 0x26838]
jg 0x1402b5bb6
mov r8, qword [0x140613880]
cmp qword [rsi + 0x20], 0x10
jb 0x1402b592e
mov rax, qword [rsi + 8]
jmp 0x1402b5932
lea rax, [rsi + 8]
mov rdi, 0xffffffffffffffff
test r8, r8
je 0x1402b5a9d
mov rcx, qword [rsi + 0x18]
test rcx, rcx
je 0x1402b5a9d
cmp qword [0x140613888], 0x10
jb 0x1402b5962
mov rdx, qword [0x140613870]
jmp 0x1402b5969
lea rdx, [0x140613870]
xorps xmm0, xmm0
movaps xmmword [rsp + 0x120], xmm0
movaps xmmword [rsp + 0x110], xmm0
movaps xmmword [rsp + 0x100], xmm0
movaps xmmword [rsp + 0xf0], xmm0
movaps xmmword [rsp + 0xe0], xmm0
movaps xmmword [rsp + 0xd0], xmm0
movaps xmmword [rsp + 0xc0], xmm0
movaps xmmword [rsp + 0xb0], xmm0
movaps xmmword [rsp + 0xa0], xmm0
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x30], xmm0
mov r10, r8
mov r9, rdx
and r10, 7
je 0x1402b5a06
lea r9, [rdx + 1]
dec r10
movzx r11d, byte [r9 - 1]
mov byte [rsp + r11 + 0x30], 1
sub r10, 1
jb 0x1402b5a06
inc r9
jmp 0x1402b59f0
cmp r8, 8
jb 0x1402b5a70
add rdx, r8
nop
movzx r8d, byte [r9]
mov byte [rsp + r8 + 0x30], 1
movzx r8d, byte [r9 + 1]
mov byte [rsp + r8 + 0x30], 1
movzx r8d, byte [r9 + 2]
mov byte [rsp + r8 + 0x30], 1
movzx r8d, byte [r9 + 3]
mov byte [rsp + r8 + 0x30], 1
movzx r8d, byte [r9 + 4]
mov byte [rsp + r8 + 0x30], 1
movzx r8d, byte [r9 + 5]
mov byte [rsp + r8 + 0x30], 1
movzx r8d, byte [r9 + 6]
mov byte [rsp + r8 + 0x30], 1
movzx r8d, byte [r9 + 7]
mov byte [rsp + r8 + 0x30], 1
add r9, 8
cmp r9, rdx
jne 0x1402b5a10
add rcx, qword [0x1405c6be8]
movabs rdx, 0xf587a609cf2a9833
add rdx, rcx
movzx r8d, byte [rax + rdx]
cmp byte [rsp + r8 + 0x30], 0
je 0x1402b5ada
add rdx, rax
mov r8, rdx
sub r8, rax
mov rdi, r8
mov eax, dword [0x140613890]
mov ecx, dword [0x1406161d0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 0x26838]
jg 0x1402b5c80
add rdi, qword [0x140613880]
cmp rdi, qword [rsi + 0x18]
sete al
add rsp, 0x138
pop rdi
pop rsi
ret
add rcx, rax
movabs r8, 0xf587a609cf2a9832
add r8, rcx
test rdx, rdx
je 0x1402b5a9d
nop
movzx ecx, byte [r8]
cmp byte [rsp + rcx + 0x30], 0
jne 0x1402b5a97
dec r8
dec rdx
test rdx, rdx
jne 0x1402b5af0
jmp 0x1402b5a9d
mov dword [rsp + 0x28], 0x30444f19
mov dword [rsp + 0x20], 0x790a6c13
lea rdx, [0x140613890]
mov ecx, 1
xor r8d, r8d
xor r9d, r9d
call fcn.1402b6bd0
cmp dword [0x140613890], 0xffffffff
jne 0x1402b58e5
mov qword [0x140613888], 0xf
mov qword [0x140613880], 1
movzx eax, byte [0x1405c6bf4]
add al, 0xcd
mov byte [0x140613870], al
mov byte [0x140613871], 0
lea rax, [0x1404ca498]
mov qword [0x140613868], rax
lea rcx, [0x1402b61b0]
mov edx, 0x243c7059
mov r8d, 0xf35f354a
call fcn.14015eaf0
mov dword [rsp + 0x28], 0x30444f19
mov dword [rsp + 0x20], 0x790a6c13
lea rdx, [0x140613890]
xor ecx, ecx
xor r8d, r8d
xor r9d, r9d
call fcn.1402b6bd0
jmp 0x1402b58e5
mov dword [rsp + 0x28], 0x30444f19
mov dword [rsp + 0x20], 0x790a6c13
lea rdx, [0x140613890]
mov ecx, 1
xor r8d, r8d
xor r9d, r9d
call fcn.1402b6bd0
cmp dword [0x140613890], 0xffffffff
jne 0x1402b591a
mov qword [0x140613888], 0xf
mov qword [0x140613880], 1
mov word [0x140613870], 0x5c
lea rax, [0x1404ca498]
mov qword [0x140613868], rax
lea rcx, [0x1402b61b0]
mov edx, 0x243c7059
mov r8d, 0xf35f354a
call fcn.14015eaf0
mov eax, dword [0x1405c6bf0]
lea ecx, [rax - 0x29d3419b]
movabs r9, 0xf587a609cf2a9834
add r9, qword [0x1405c6be8]
lea edx, [rax + 0x4f372a78]
mov r8d, eax
xor r8d, 0x6710d7e
and eax, 0x6710d7e
lea eax, [r8 + rax*2]
mov dword [rsp + 0x20], edx
mov dword [rsp + 0x28], eax
lea rdx, [0x140613890]
mov r8d, ecx
call fcn.1402b6bd0
jmp 0x1402b591a
mov dword [rsp + 0x28], 0x30444f19
mov dword [rsp + 0x20], 0x790a6c13
lea rdx, [0x140613890]
mov ecx, 1
xor r8d, r8d
xor r9d, r9d
call fcn.1402b6bd0
mov eax, 0xd62cbe64
add eax, dword [0x1405c6bf0]
cmp dword [0x140613890], eax
jne 0x1402b5ac2
movabs rax, 0xf587a609cf2a9843
add rax, qword [0x1405c6be8]
mov qword [0x140613888], rax
mov qword [0x140613880], 1
mov word [0x140613870], 0x5c
lea rax, [0x1404ca498]
mov qword [0x140613868], rax
lea rcx, [0x1402b61b0]
mov edx, 0x243c7059
mov r8d, 0xf35f354a
call fcn.14015eaf0
mov dword [rsp + 0x28], 0x30444f19
mov dword [rsp + 0x20], 0x790a6c13
lea rdx, [0x140613890]
xor ecx, ecx
xor r8d, r8d
xor r9d, r9d
call fcn.1402b6bd0
jmp 0x1402b5ac2