Function at 0x18002341c
Capabilities:
Encode data using xor
Encrypt data using rc4 prga

Disassembly:
mov rcx, qword [rdx + 0x60]
mov r9d, r13d
mov rax, rcx
cmp word [rcx], r13w
je 0x180023262
lea rax, [rax + 2]
add r9d, esi
cmp word [rax], r13w
jne 0x180023255
lea rax, [rsp + 0x38]
mov r8d, r13d
lea rax, [rax + 2]
add r8d, esi
cmp word [rax], r13w
jne 0x18002326a
cmp r9d, r8d
jne 0x1800232db
lea r11, [rsp + 0x38]
mov r10d, r13d
sub r11, rcx
movzx r8d, word [rcx]
mov rax, rcx
mov r9d, r13d
int 0x66
test r8d, r8d
je 0x1800232ec
lea rax, [rax + 2]
add r9d, esi
cmp word [rax], r13w
jne 0x180023297
cmp r10d, r9d
jae 0x1800232ec
movzx r9d, word [r11 + rcx]
lea eax, [r8 - 0x41]
cmp ax, 0x19
ja 0x1800232bd
add r8w, 0x20
lea eax, [r9 - 0x41]
cmp ax, 0x19
ja 0x1800232cc
add r9w, 0x20
cmp r8w, r9w
jne 0x1800232db
add r10d, esi
add rcx, 2
jmp 0x180023287
mov rdx, qword [rdx]
cmp rdx, rbx
jne 0x180023245
mov rbx, r13
jmp 0x1800232f6
mov rbx, qword [rdx + 0x30]
jmp 0x1800232f6
mov edx, 0xe3142
mov rcx, rbx
call fcn.1800236f4
mov edx, 0xd5786
mov rcx, rbx
mov rdi, rax
call fcn.1800236f4
mov edx, 0x348bfa
mov rcx, rbx
mov qword [rbp - 0x69], rax
call fcn.1800236f4
mov r15d, 0x3000
mov r12d, 0x11a00
mov r9d, 4
xor ecx, ecx
mov r8d, r15d
mov edx, r12d
mov qword [rbp - 0x71], rax
call rdi
movsx r8d, byte [rbp - 0x59]
mov r10d, r13d
mov r14, rax
mov eax, 0x92f11385
imul r8d
movsx eax, byte [rbp - 0x36]
add edx, r8d
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, r8d, 0x156
mov r8d, 0x66666667
imul edx, eax
imul eax, edx, 0xe
movsxd rbx, eax
mov eax, r8d
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, r8d
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, r8d
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, r8d
imul edx
mov eax, r8d
sar edx, 1
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul edx
mov eax, r8d
sar edx, 1
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul edx
mov ecx, edx
sar ecx, 1
mov eax, ecx
shr eax, 0x1f
add ecx, eax
mov eax, 0xbfa02fe9
imul ecx
add edx, ecx
sar edx, 8
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx rax, byte [rbp - 0x59]
movsxd rcx, edx
imul r9, rax, 0xd7c
imul rax, rax, 0xd7c
add byte [rcx - 0x45], cl
add byte [rax + 0x1800a], al
add byte [rax], al
sub r11, rax
add r9, rcx
sub r11, rcx
add r9, r14
sub r11, r14
movsxd rcx, r10d
movabs rax, 0xf0f0f0f0f0f0f0f1
add r10d, esi
mul rcx
shr rdx, 4
imul rax, rdx, 0x11
sub rcx, rax
sub rcx, rbx
mov al, byte [rsp + rcx + 0x20]
xor al, byte [r11 + r9]
mov byte [r9], al
add r9, rsi
cmp r10d, r12d
jb 0x180023416
movsxd rax, dword [r14 + 0x3c]
movsx r9d, byte [rbp - 0x51]
mov r8d, r15d
mov edx, dword [rax + r14 + 0x50]
shl r9d, 3
xor ecx, ecx
call rdi
mov rbx, rax
test rax, rax
je 0x1800236db
movsxd rdi, dword [r14 + 0x3c]
mov r12, rax
mov r8d, r13d
add rdi, r14
sub r12, qword [rdi + 0x30]
mov r9d, dword [rdi + 0x54]
movzx r10d, word [rdi + 0x14]
mov qword [rbp + 0x77], r12
mov qword [rdi + 0x30], rax
test r9, r9
je 0x1800234b2
mov rdx, r14
mov rcx, rax
sub rdx, rax
mov al, byte [rdx + rcx]
add r8d, esi
mov byte [rcx], al
movsxd rax, r8d
add rcx, rsi
cmp rax, r9
jb 0x18002349f
mov rax, qword [rdi + 0xb0]
mov rcx, qword [rdi + 0x90]
mov r15, r13
mov esi, r13d
mov qword [rbp + 0x7f], rax
jg 0x180023531
cmp r13d, dword [rdi + 6]
jae 0x1800236db
lea r9, [r10 + 0x24]
mov r12d, esi
add r9, rdi