Function at 0x180006ea0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r15
lea rbp, [rsp - 0x7b0]
sub rsp, 0x8b0
movdqa xmm0, xmmword [0x18038f590]
xor r13d, r13d
movdqu xmmword [rsp + 0x4f], xmm0
mov dword [rsp + 0x5f], 0x211019
mov r12d, edx
mov qword [rbp + 0x800], r13
mov r15, rcx
mov rax, qword [rbp + 0x800]
mov dil, 1
nop word [rax + rax]
mov rcx, qword [rbp + 0x800]
mov rax, qword [rbp + 0x800]
add cl, 0x65
xor cl, byte [rsp + rax + 0x50]
mov rax, qword [rbp + 0x800]
mov byte [rsp + rax + 0x50], cl
mov rax, qword [rbp + 0x800]
inc rax
mov qword [rbp + 0x800], rax
mov rax, qword [rbp + 0x800]
cmp rax, 0x12
jb 0x180006ef0
mov byte [rsp + 0x62], r13b
call fcn.1800015d0
mov rcx, qword gs:[0x58]
mov rsi, rax
mov edx, dword [0x18039b468]
mov eax, 4
mov rbx, qword [rcx + rdx*8]
add rbx, rax
mov ecx, dword [rbx]
cmp dword [0x18039d510], ecx
jle 0x180006f8f
lea rcx, [0x18039d510]
call fcn.180360f8c
cmp dword [0x18039d510], 0xffffffff
jne 0x180006f8f
mov rax, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea rcx, [0x18039d510]
mov qword [0x1803a15b8], rax
call fcn.180360f2c
mov eax, dword [rbx]
cmp dword [0x1803a1558], eax
jle 0x180006fc8
lea rcx, [0x1803a1558]
call fcn.180360f8c
cmp dword [0x1803a1558], 0xffffffff
jne 0x180006fc8
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x1803a1558]
mov qword [0x1803a1560], rax
call fcn.180360f2c
mov rcx, rsi
mov qword [rsp + 0x8f0], r14
call qword [0x1803a15b8]
mov rcx, rax
lea rdx, [rsp + 0x50]
call qword [0x1803a1560]
test rax, rax
je 0x1800072ba
lea rcx, [rbp - 0x50]
mov qword [rsp + 0x78], rcx
mov qword [rbp + 0x800], 0x602
mov qword [rbp + 0x808], 0x1fe
mov rdx, qword [rbp + 0x800]
mov rcx, qword [rbp + 0x808]
add rdx, rcx
xor ecx, ecx
mov qword [rbp + 0x800], rdx
lea rdx, [rbp - 0x50]
mov r8, qword [rbp + 0x800]
call rax
cmp qword [r15], r13
je 0x1800072b4
movdqa xmm0, xmmword [0x18038f4f0]
movdqu xmmword [rsp + 0x63], xmm0
mov qword [rbp + 0x800], r13
mov rax, qword [rbp + 0x800]
nop dword [rax + rax]
mov rcx, qword [rbp + 0x800]
mov rax, qword [rbp + 0x800]
sub cl, 0x53
xor cl, byte [rsp + rax + 0x64]
mov rax, qword [rbp + 0x800]
mov byte [rsp + rax + 0x64], cl
mov rax, qword [rbp + 0x800]
inc rax
mov qword [rbp + 0x800], rax
mov rax, qword [rbp + 0x800]
cmp rax, 0xe
jb 0x180007060
mov byte [rsp + 0x72], r13b
call fcn.180001810
mov ecx, dword [rbx]
mov rsi, rax
cmp dword [0x18039d510], ecx
jle 0x1800070e4
lea rcx, [0x18039d510]
call fcn.180360f8c
cmp dword [0x18039d510], 0xffffffff
jne 0x1800070e4
mov rcx, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x1803a15b8], rcx
lea rcx, [0x18039d510]
call fcn.180360f2c
mov eax, dword [rbx]
cmp dword [0x1803a1558], eax
jle 0x18000711d
lea rcx, [0x1803a1558]
call fcn.180360f8c
cmp dword [0x1803a1558], 0xffffffff
jne 0x18000711d
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x1803a1558]
mov qword [0x1803a1560], rax
call fcn.180360f2c
mov rcx, rsi
call qword [0x1803a15b8]
mov rcx, rax
lea rdx, [rsp + 0x64]
call qword [0x1803a1560]
mov r14, rax
test rax, rax
je 0x1800072ba
xor eax, eax
mov dword [rsp + 0x40], 0xd0dbf2a7
mov byte [rsp + 0x4e], al
mov dword [rsp + 0x44], 0xc2c3d7e2
mov dword [rsp + 0x48], 0xc2d8ddfb
mov word [rsp + 0x4c], 0xcac2
mov qword [rbp + 0x800], r13
mov rax, qword [rbp + 0x800]
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [rbp + 0x800]
mov rax, qword [rbp + 0x800]
sub cl, 0x5f
xor cl, byte [rsp + rax + 0x41]
mov rax, qword [rbp + 0x800]
mov byte [rsp + rax + 0x41], cl
mov rax, qword [rbp + 0x800]
inc rax
mov qword [rbp + 0x800], rax
mov rax, qword [rbp + 0x800]
cmp rax, 0xd
jb 0x180007180
mov byte [rsp + 0x4e], r13b
call fcn.180001810
mov edx, dword [rbx]
mov rsi, rax
cmp dword [0x18039d510], edx
jle 0x180007204
lea rcx, [0x18039d510]
call fcn.180360f8c
cmp dword [0x18039d510], 0xffffffff
jne 0x180007204
mov rdx, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea rcx, [0x18039d510]
mov qword [0x1803a15b8], rdx
call fcn.180360f2c
mov eax, dword [rbx]
cmp dword [0x1803a1558], eax
jle 0x18000723d
lea rcx, [0x1803a1558]
call fcn.180360f8c
cmp dword [0x1803a1558], 0xffffffff
jne 0x18000723d
mov rax, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [0x1803a1558]
mov qword [0x1803a1560], rax
call fcn.180360f2c
mov rcx, rsi
call qword [0x1803a15b8]
mov rcx, rax
lea rdx, [rsp + 0x41]
call qword [0x1803a1560]
mov rbx, rax
test rax, rax
je 0x1800072ba
lea rcx, [rbp - 0x50]
call r14
mov rcx, qword [r15]
mov rsi, rax
lea rax, [rbp - 0x68]
mov r9d, r12d
mov qword [rsp + 0x38], rax
mov r8d, 2
lea rax, [rbp - 0x80]
mov rdx, qword [rcx]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 6
mov qword [rsp + 0x20], r13
mov r10, qword [rdx + 0x50]
mov rdx, rsi
call r10
test eax, eax
js 0x1800072af
cmp word [rbp - 0x78], r13w
movzx edi, dil
cmove edi, r13d
mov rcx, rsi
call rbx
movzx eax, dil
jmp 0x1800072bc
xor al, al
mov r14, qword [rsp + 0x8f0]
add rsp, 0x8b0
pop r15
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret