Function at 0x18004e6f0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rdi
lea rbp, [rsp - 0x47]
sub rsp, 0xb0
mov eax, dword [rcx + 0x3b18]
lea r9, [rbp - 0x21]
mov dword [rbp + 0x1f], eax
lea r8, [rbp - 0x21]
mov dword [rbp - 0x21], eax
xor edi, edi
mov qword [rbp - 0x19], rdi
mov rbx, rcx
mov qword [rbp - 0x11], rdi
lea rcx, [rbp - 0x19]
mov qword [rbp - 9], rdi
mov qword [rbp - 0x39], 4
mov qword [rbp - 0x31], rdi
mov rdx, qword [rbp - 0x31]
mov rax, qword [rbp - 0x39]
add rdx, rax
mov qword [rbp - 0x39], rdx
xor edx, edx
mov rax, qword [rbp - 0x39]
add r9, rax
call fcn.180357a60
mov qword [rbp - 0x31], 0x1d5
lea r8, [rbx + 0x3d9c]
mov qword [rbp - 0x39], 0x2b
mov rcx, qword [rbp - 0x39]
mov rax, qword [rbp - 0x31]
add rcx, rax
mov qword [rbp - 0x39], rcx
lea rcx, [rbp - 0x19]
mov r9, qword [rbp - 0x39]
mov rdx, qword [rbp - 0x11]
mov r9d, r9d
add r9, r8
call fcn.180357a60
movzx eax, word [rbx + 0x3b30]
lea r9, [rbp + 0x77]
mov word [rbp + 0x7f], ax
lea r8, [rbp + 0x77]
mov word [rbp + 0x77], ax
mov qword [rbp - 0x31], rdi
mov qword [rbp - 0x39], 2
mov rcx, qword [rbp - 0x39]
mov rax, qword [rbp - 0x31]
add rcx, rax
mov qword [rbp - 0x39], rcx
lea rcx, [rbp - 0x19]
mov rax, qword [rbp - 0x39]
mov rdx, qword [rbp - 0x11]
add r9, rax
call fcn.180357a60
mov rcx, qword [rbx + 0x3b28]
mov rax, qword [rcx]
mov qword [rbp - 1], rax
cmp rax, rcx
je 0x18004e8c8
nop dword [rax]
movzx ecx, byte [rax + 0x68]
lea r9, [rbp + 0x67]
mov byte [rbp + 0x6f], cl
lea r8, [rbp + 0x67]
mov byte [rbp + 0x67], cl
mov qword [rbp - 0x31], 1
mov qword [rbp - 0x39], rdi
mov rcx, qword [rbp - 0x39]
mov rax, qword [rbp - 0x31]
add rcx, rax
mov qword [rbp - 0x39], rcx
lea rcx, [rbp - 0x19]
mov rax, qword [rbp - 0x39]
mov rdx, qword [rbp - 0x11]
add r9, rax
call fcn.180357a60
mov qword [rbp - 0x31], 0x51
mov qword [rbp - 0x39], 0x2f
mov rcx, qword [rbp - 0x39]
mov rax, qword [rbp - 0x31]
add rcx, rax
mov qword [rbp - 0x39], rcx
lea rcx, [rbp - 0x19]
mov r9, qword [rbp - 0x39]
mov r8, qword [rbp - 1]
mov rdx, qword [rbp - 0x11]
add r8, 0x69
mov r9d, r9d
add r9, r8
call fcn.180357a60
mov qword [rbp - 0x31], 2
mov qword [rbp - 0x39], 0xe
mov rcx, qword [rbp - 0x39]
mov rax, qword [rbp - 0x31]
add rcx, rax
mov qword [rbp - 0x39], rcx
lea rcx, [rbp - 0x19]
mov r9, qword [rbp - 0x39]
mov r8, qword [rbp - 1]
mov rdx, qword [rbp - 0x11]
add r8, 0xe9
mov r9d, r9d
add r9, r8
call fcn.180357a60
mov rax, qword [rbp - 1]
mov rax, qword [rax]
mov qword [rbp - 1], rax
cmp rax, qword [rbx + 0x3b28]
jne 0x18004e7f0
mov r8, qword [rbp - 0x11]
lea rcx, [rbp + 7]
mov rdx, qword [rbp - 0x19]
mov qword [rbp + 7], rdi
mov qword [rbp + 0xf], rdi
mov qword [rbp + 0x17], rdi
call fcn.1803579f0
mov rax, qword gs:[0x58]
mov ecx, dword [0x18039b468]
mov edx, 4
mov rbx, qword [rax + rcx*8]
add rbx, rdx
mov eax, dword [rbx]
cmp dword [0x1803a15d0], eax
jle 0x18004e97f
lea rcx, [0x1803a15d0]
call fcn.180360f8c
cmp dword [0x1803a15d0], 0xffffffff
jne 0x18004e97f
xorps xmm0, xmm0
xor r8d, r8d
xor edx, edx
movdqa xmmword [0x1803a14e0], xmm0
call fcn.180354610
lea rcx, [0x1803a14f0]
mov qword [0x1803a14e0], rax
call fcn.180001990
lea rcx, [0x18037d290]
mov qword [0x1803a1508], rdi
mov qword [0x1803a1510], 0xf
mov byte [0x1803a14f8], dil
mov byte [0x1803a1518], dil
call fcn.1803614c4
lea rcx, [0x1803a15d0]
call fcn.180360f2c
mov dword [rbp - 0x29], 0xa3a3adcf
mov word [rbp - 0x25], 0xa5
mov qword [rbp - 0x31], rdi
mov rax, qword [rbp - 0x31]
nop dword [rax]
nop dword [rax + rax]
mov rcx, qword [rbp - 0x31]
mov rax, qword [rbp - 0x31]
sub cl, 0x32
xor cl, byte [rbp + rax - 0x28]
mov rax, qword [rbp - 0x31]
mov byte [rbp + rax - 0x28], cl
mov rax, qword [rbp - 0x31]
inc rax
mov qword [rbp - 0x31], rax
mov rax, qword [rbp - 0x31]
cmp rax, 4
jb 0x18004e9a0
lea rdx, [rbp + 7]
mov byte [rbp - 0x24], dil
lea rcx, [rbp + 0x27]
call fcn.180351bf0
mov r8, rax
lea rdx, [rbp - 0x28]
lea rcx, [0x1803a14e0]
call fcn.180004ad0
mov eax, dword [rbx]
cmp dword [0x1803a15d0], eax
jle 0x18004ea6f
lea rcx, [0x1803a15d0]
call fcn.180360f8c
cmp dword [0x1803a15d0], 0xffffffff
jne 0x18004ea6f
xorps xmm0, xmm0
xor r8d, r8d
xor edx, edx
movdqa xmmword [0x1803a14e0], xmm0
call fcn.180354610
lea rcx, [0x1803a14f0]
mov qword [0x1803a14e0], rax
call fcn.180001990
lea rcx, [0x18037d290]
mov qword [0x1803a1508], rdi
mov qword [0x1803a1510], 0xf
mov byte [0x1803a14f8], dil
mov byte [0x1803a1518], dil
call fcn.1803614c4
lea rcx, [0x1803a15d0]
call fcn.180360f2c
lea rcx, [0x1803a14e0]
call fcn.180004280
mov rcx, qword [rbp + 7]
test rcx, rcx
je 0x18004eab1
mov rdx, qword [rbp + 0x17]
mov rax, rcx
sub rdx, rcx
cmp rdx, 0x1000
jb 0x18004eaac
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004eaf2
call fcn.180360d9c
mov rcx, qword [rbp - 0x19]
test rcx, rcx
je 0x18004eae7
mov rdx, qword [rbp - 9]
mov rax, rcx
sub rdx, rcx
cmp rdx, 0x1000
jb 0x18004eae2
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004eaf2
call fcn.180360d9c
add rsp, 0xb0
pop rdi
pop rbx
pop rbp
ret
call fcn.1803687c0
int3