Function at 0x18000f3b0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov r10d, dword [0x180045b6c]
mov r14, rdx
mov rdx, qword [0x180045b60]
inc r10d
movzx r15d, word [0x180045b18]
inc rdx
mov r13, qword [rsp + 0xb8]
mov eax, 0x1f02
mov rdi, qword [rsp + 0xc0]
xor r15w, ax
mov r12, qword [rsp + 0xb0]
lea eax, [r10 + r10*2]
mov dword [0x180045b6c], r10d
mov rsi, r9
movsxd rcx, eax
movzx eax, word [r8 + rcx*2]
mov rcx, qword [0x180045b10]
imul rax, rax, 0x1bde
dec rcx
mov qword [rsp + 0xa0], rax
movsxd rax, r10d
inc r10d
movzx eax, word [r9 + rax*2]
mov qword [0x180045b60], rdx
mov qword [0x180045b10], rcx
mov qword [rsp + 0x98], rax
movsxd rax, dword [0x180045b1c]
mov rbp, rax
inc eax
or rbp, qword [0x180045b90]
mov dword [0x180045b1c], eax
mov rax, qword [rsp + 0xc8]
movzx r11d, byte [rax + rcx*2]
mov eax, dword [r13 + 0x2ea0]
or r11, rdx
mov edx, dword [0x180045b80]
mov rcx, qword [0x180045b88]
dec edx
mov dword [0x180045b6c], r10d
mov dword [rsp + 0xc8], eax
movsxd rax, r10d
movsxd r9, dword [rdi + rax*4]
movzx eax, word [r12 + 0xeda]
mov dword [0x180045b80], edx
movzx r10d, byte [rcx + 0x2e8]
movzx ecx, byte [0x180045b27]
add r10b, dl
mov qword [rsp + 0xb8], rax
xor edx, edx
movsxd rax, dword [0x180045b78]
lea r8, [r12 + rcx*2]
movzx ecx, word [r12 + rcx*2]
mov rax, qword [r9 + rax*8]
div rcx
mov word [r8], dx
movzx eax, word [rsi]
mov rcx, qword [0x180045b60]
mov ebx, dword [0x180045b6c]
mov r9, qword [0x180045b10]
mov rdx, qword [r14 + rax*8]
or rdx, 0x2a5
add rcx, rdx
lea eax, [rbx + 4]
mov qword [0x180045b60], rcx
movsxd rdx, eax
movsxd rax, dword [rdi + 0x104]
sub rax, qword [r13 + rdx*8]
movzx edx, word [r11]
movzx r11d, r10b
movsxd r8, dword [rdi + rdx*8 + 0xc]
xor edx, edx
div r8
mov qword [0x180045ba0], rax
mov r8d, dword [r14 + r9*8]
inc r9
mov qword [0x180045b10], r9
cmp r8d, r11d
jge 0x18000f5c1
nop dword [rax + rax]
movsxd rax, ebx
mov rdx, rcx
sub rdx, rax
inc rcx
movzx eax, byte [0x180045b26]
sub rdx, r9
or eax, r8d
mov qword [0x180045b60], rcx
add rdx, 0xc0c
inc r8d
mov qword [0x180045b10], rdx
cdq
idiv dword [0x180045b7c]
mov dword [0x180045b7c], eax
movzx eax, word [rsi]
mov dword [rdi + rax*4 + 0x14], r11d
cmp r8d, r11d
jge 0x18000f5c1
mov ebx, dword [0x180045b6c]
mov rcx, qword [0x180045b60]
mov r9, qword [0x180045b10]
jmp 0x18000f560
movsxd rcx, dword [rsp + 0xc8]
mov edx, 0x1f5b
call fcn.180003090
mov r8, qword [rsp + 0xa0]
inc rbp
movsxd rcx, eax
mov qword [r13 + 0x200], rcx
movsxd rax, dword [0x180045b30]
mov r9, qword [0x180045b60]
mov rcx, qword [rsp + 0x98]
add r9, rbp
mov edi, dword [0x180045ba0]
movsxd rcx, dword [rcx + rax*4]
mov rax, qword [0x180045b40]
movzx edx, byte [rax + 0x200]
movzx eax, byte [0x180045b26]
add eax, dword [0x180045b98]
movsxd rbx, eax
movsxd rax, dword [0x180045b6c]
movzx r11d, word [r12 + rax*2]
movzx eax, word [rsi]
mov r10d, dword [r8 + rax*4]
mov dword [rsp + 0x48], r10d
mov qword [rsp + 0x40], r11
mov qword [rsp + 0x38], 0x1c11
mov qword [rsp + 0x30], 0x11b
mov qword [rsp + 0x28], rbx
movzx r8d, r15w
mov dword [rsp + 0x20], edi
call fcn.180002290
movsxd rcx, eax
mov rax, qword [0x180045b10]
mov qword [r14 + rax*8], rcx
movzx eax, word [rsi + 2]
mov rcx, qword [rsp + 0xb8]
cmp qword [rcx + rax*8 + 0xa8], 0x13aa
je 0x18000f699
movsxd rax, dword [0x180045b30]
mov eax, 0x199f
mov rbx, qword [rsp + 0x90]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret