Function at 0x140003c90
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x260
mov rax, qword [rcx + 0xdef8]
mov r15, qword [rcx + 0x110]
mov r12, qword [rcx + 0x168]
mov qword [rsp + 0x40], rax
xor eax, eax
lea r14, [rsp + 0x60]
mov esi, eax
mov edi, eax
mov ebx, eax
mov r13d, eax
lea rax, [rcx + 0xd2f8]
sub r14, r8
sub r8, rcx
mov qword [rsp + 0x28], rax
lea rax, [rcx + 0x170]
mov rbp, rcx
lea rcx, [r8 - 0xd0f8]
mov dword [rsp + 0x2b8], 1
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], 3
mov qword [rsp + 0x58], rcx
nop dword [rax]
nop word [rax + rax]
add r13, qword [rax]
lea rcx, [rsp + 0x60]
xor edx, edx
mov r8d, 0x200
call sub.MSVCR120.dll_memset
mov r8, qword [rsp + 0x28]
mov rcx, rdi
mov rax, r13
mov qword [r8 + 0x600], rdi
mov qword [r8], rsi
sub rax, rbx
cmp rax, rdi
cmovl rcx, rax
sub rdi, rcx
mov rdx, rcx
mov qword [rsp + 0x20], rcx
test rcx, rcx
jle 0x140003d95
xor r9d, r9d
nop word [rax + rax]
mov rax, qword [r12 + rbx*8]
dec rcx
inc rbx
mov word [r15 + rax*4 + 2], r9w
test rcx, rcx
jg 0x140003d80
cmp rbx, r13
jge 0x140003fb6
movsxd rax, dword [rsp + 0x2b8]
mov rcx, qword [rsp + 0x2a8]
lea r14, [rbp + 0xd058]
sar rax, 1
lea rax, [rcx + rax*4]
mov qword [rsp + 0x50], rax
movsxd rdx, dword [rax]
mov rcx, r14
mov rdx, qword [rbp + rdx*8 + 0xd078]
call fcn.14000b9b0
mov rdx, qword [rsp + 0x40]
inc rsi
movsxd rdi, eax
mov byte [rsi + rdx - 1], dil
cmp rdi, 0xf
jae 0x140003ee0
mov r9d, dword [r14]
mov r8d, dword [r14 + 0x18]
lea rax, [0x140000000]
movzx r11d, byte [rax + rdi + 0xd28a8]
test r11d, r11d
jne 0x140003e15
xor r8d, r8d
mov r9d, r8d
jmp 0x140003ea5
cmp r8d, r11d
jge 0x140003e83
mov rdx, qword [r14 + 8]
mov r10, qword [r14 + 0x10]
cmp r8d, 0x18
jg 0x140003e4d
mov ecx, 0x20
sub ecx, r8d
cmp rdx, r10
jae 0x140003e4d
movzx eax, byte [rdx]
sub ecx, 8
add r8d, 8
shl eax, cl
inc rdx
or r9d, eax
cmp r8d, 0x18
jle 0x140003e30
mov qword [r14 + 8], rdx
cmp r11d, r8d
jle 0x140003e7a
cmp rdx, r10
jb 0x140003e6b
mov dword [r14 + 0x1c], 1
mov r8d, 0x40000000
jmp 0x140003e7a
movzx edx, byte [rdx]
movzx ecx, r8b
and ecx, 7
shr edx, cl
or r9d, edx
mov rdx, qword [rsp + 0x40]
mov dword [r14 + 0x18], r8d
lea eax, [r9 + r9]
lea ecx, [r11 - 1]
sub r8d, r11d
shl eax, cl
mov ecx, 0x20
mov dword [r14 + 0x18], r8d
sub ecx, r11d
mov dword [r14], eax
shr r9d, cl
xor r8d, r8d
mov byte [rsi + rdx], r9b
inc rsi
test edi, edi
jne 0x140003ebd
mov eax, r9d
sar eax, 8
inc rsi
mov byte [rsi + rdx - 1], al
cmp edi, 0xc
mov ecx, r8d
mov eax, r8d
setl cl
neg ecx
and ecx, 0x15
cmp edi, 2
setl al
neg eax
and eax, 0xfffffff3
add ecx, eax
shl r9d, cl
jmp 0x140003ee6
xor r8d, r8d
mov r9d, r8d
lea rax, [0x140000000]
mov edx, dword [rax + rdi*4 + 0xd26f0]
add edx, r9d
mov edi, edx
sar rdi, 8
and edi, 0xfff
test edx, edx
jne 0x140003f13
movabs rdi, 0x7fffffffffffffff
jmp 0x140003f18
test rdi, rdi
je 0x140003f67
mov rdx, qword [rsp + 0x20]
mov ecx, r8d
mov rax, r13
sub rax, rbx
cmp rax, rdi
setl cl
neg ecx
movsxd rax, ecx
mov rcx, r13
sub rcx, rdi
sub rcx, rbx
and rax, rcx
add rax, rdi
add rdx, rax
sub rdi, rax
mov qword [rsp + 0x20], rdx
test rax, rax
jle 0x140003f96
mov rcx, qword [r12 + rbx*8]
dec rax
inc rbx
mov word [r15 + rcx*4 + 2], r8w
test rax, rax
jg 0x140003f50
jmp 0x140003f96
movzx eax, dl
mov ecx, edx
and ecx, 0x100000
neg ecx
xor ecx, edx
sar ecx, 0x15
test dl, dl
mov rdx, qword [rsp + 0x20]
cmovne ecx, r8d
inc qword [rsp + rax*8 + 0x60]
mov rax, qword [r12 + rbx*8]
mov word [r15 + rax*4 + 2], cx
inc rbx
mov rax, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x2a0]
cmp rbx, r13
jl 0x140003dc1
mov r14, qword [rsp + 0x30]
mov r8, qword [rsp + 0x28]
add qword [rsp + 0x258], rdx
mov ecx, VarI4FromDisp
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rsp + rcx*8 + 0x60]
dec rcx
add qword [rsp + rcx*8 + 0x60], rax
test rcx, rcx
jg 0x140003fd0
mov rcx, qword [rsp + 0x58]
mov edx, reloc.OLEAUT32.dll_VarI4FromDisp
add rcx, r8
nop
mov rax, qword [r14 + rcx - 8]
lea rcx, [rcx - 8]
dec rdx
sub qword [rcx], rax
test rdx, rdx
jg 0x140003ff0
mov rax, qword [rsp + 0x48]
inc dword [rsp + 0x2b8]
add r8, 0x200
sub r14, 0x200
add rax, 8
dec qword [rsp + 0x38]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x28], r8
mov qword [rsp + 0x30], r14
jne 0x140003d30
mov rbx, qword [rsp + 0x2b0]
mov dword [rbp + 0xdf08], esi
mov rax, rdi
add rsp, 0x260
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret