Function at 0x14007b8d0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
mov eax, 0xffffff53
test rcx, rcx
je 0x14007bbf2
test r9, r9
je 0x14007bbf2
mov r11d, dword [rsp + 0xc0]
mov r15d, dword [rsp + 0xb0]
mov esi, dword [rsp + 0xa8]
lea r10d, [r15 + rsi]
cmp r10d, r11d
ja 0x14007bbf2
cmp dword [rcx + 0x2c], r11d
jne 0x14007bbf2
test byte [rcx + 0x32], 1
jne 0x14007bbf0
movzx r11d, byte [rsp + 0xa0]
movzx ebx, byte [rcx + 0x30]
cmp bl, 0xff
je 0x14007b964
mov eax, 0xfffffe8e
cmp bl, r11b
jne 0x14007bbf2
cmp word [rcx + 0x24], r8w
jne 0x14007bbf2
cmp dword [rcx + 0x28], edx
je 0x14007b970
jmp 0x14007bbf2
mov byte [rcx + 0x30], r11b
mov word [rcx + 0x24], r8w
mov dword [rcx + 0x28], edx
lea r12, [rcx + 0x18]
mov rdi, qword [rcx + 0x18]
test rdi, rdi
je 0x14007ba68
mov eax, dword [rdi + 8]
mov r8d, dword [rdi + 0xc]
add r8d, eax
cmp eax, esi
seta r11b
cmp r10d, r8d
seta dl
or dl, r11b
xor r14d, r14d
cmp dl, 1
jne 0x14007b9ef
cmp r8d, esi
jae 0x14007b9ef
xor dl, 1
mov r8d, 1
mov r14, rdi
mov rdi, qword [rdi]
test rdi, rdi
je 0x14007baf9
mov eax, dword [rdi + 8]
mov r11d, dword [rdi + 0xc]
add r11d, eax
cmp eax, esi
seta bl
cmp r10d, r11d
seta bpl
or bpl, bl
movzx edx, dl
cmove edx, r8d
cmp bpl, 1
jne 0x14007b9ea
cmp r11d, esi
jb 0x14007b9b0
test dl, dl
sete dl
test dl, dl
je 0x14007bb78
test r14, r14
jne 0x14007baba
mov r14, r12
cmp r10d, eax
jae 0x14007baba
mov eax, 0xfffffe39
cmp byte [rcx + 0x31], 9
ja 0x14007bbf2
mov r14, r9
mov r13, rcx
mov ebx, r15d
lea rcx, [rbx + 0x10]
call fcn.1400455f0
test rax, rax
je 0x14007bb71
mov qword [rax], 0
mov dword [rax + 8], esi
mov dword [rax + 0xc], r15d
mov rcx, rax
add rcx, 0x10
mov rdx, r14
mov r8, rbx
mov rsi, rax
call fcn.1400d0c80
mov rcx, r13
mov qword [r13 + 0x18], rsi
mov qword [rsi], rdi
jmp 0x14007bb4c
mov rbx, r9
mov r14, rcx
mov edi, r15d
lea rcx, [rdi + 0x10]
call fcn.1400455f0
test rax, rax
je 0x14007bb56
mov qword [rax], 0
mov dword [rax + 8], esi
mov dword [rax + 0xc], r15d
mov rcx, rax
add rcx, 0x10
mov rdx, rbx
mov r8, rdi
mov rsi, rax
call fcn.1400d0c80
mov rcx, r14
mov qword [r14 + 0x18], rsi
mov dword [r14 + 0x20], r15d
inc byte [r14 + 0x31]
jmp 0x14007bb78
mov r8, rdi
mov r8, qword [r8]
test r8, r8
je 0x14007bad2
mov eax, dword [r8 + 0xc]
add eax, dword [r8 + 8]
cmp eax, r10d
jbe 0x14007babd
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r9
mov rbx, rcx
mov rdx, rdi
mov r9d, esi
call fcn.14007bc10
mov rcx, rbx
test rax, rax
cmove rax, rdi
mov qword [r14], rax
jmp 0x14007bb78
test dl, dl
jne 0x14007bb78
mov eax, 0xfffffe39
cmp byte [rcx + 0x31], 9
ja 0x14007bbf2
mov rbx, r9
mov r13, rcx
mov edi, r15d
lea rcx, [rdi + 0x10]
call fcn.1400455f0
test rax, rax
je 0x14007bb68
mov qword [rax], 0
mov dword [rax + 8], esi
mov dword [rax + 0xc], r15d
mov rcx, rax
add rcx, 0x10
mov rdx, rbx
mov r8, rdi
mov rsi, rax
call fcn.1400d0c80
mov qword [r14], rsi
mov rcx, r13
add dword [r13 + 0x20], r15d
inc byte [r13 + 0x31]
jmp 0x14007bb78
mov qword [r12], 0
mov eax, 0xfffffed1
jmp 0x14007bbf2
mov qword [r14], 0
jmp 0x14007bb75
mov qword [r12], rdi
mov rcx, r13
mov edx, dword [rcx + 0x20]
cmp edx, dword [rcx + 0x2c]
jne 0x14007bbf0
cmp byte [rcx + 0x31], 1
jne 0x14007bbf0
mov rax, qword [r12]
cmp dword [rax + 8], 0
jne 0x14007bbf0
cmp dword [rax + 0xc], edx
jne 0x14007bbf0
mov qword [rcx + 8], rax
lea rdx, [rax + 0x10]
mov qword [rcx + 0x10], rdx
or byte [rcx + 0x32], 1
mov qword [rcx + 0x18], 0
mov byte [rcx + 0x31], 0
movzx edx, byte [rcx + 0x30]
mov byte [rax + 4], dl
mov edx, dword [rcx + 0x2c]
mov r8d, edx
shr r8d, 0x10
mov byte [rax + 5], r8b
mov byte [rax + 6], dh
mov byte [rax + 7], dl
mov edx, dword [rcx + 0x28]
mov byte [rax + 8], dh
mov byte [rax + 9], dl
mov word [rax + 0xa], 0
mov byte [rax + 0xc], 0
mov ecx, dword [rcx + 0x2c]
mov edx, ecx
shr edx, 0x10
mov byte [rax + 0xd], dl
mov byte [rax + 0xe], ch
mov byte [rax + 0xf], cl
xor eax, eax
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret