Function at 0x18006f060
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r14
mov eax, 0x27d0
call fcn.1800943f0
sub rsp, rax
mov r10, qword [rcx]
xor r14d, r14d
movaps xmmword [rsp + 0x27c0], xmm7
mov r9d, r14d
movaps xmmword [rsp + 0x27b0], xmm8
movzx r8d, byte [r10]
test r8b, r8b
je 0x18006f0d8
nop word [rax + rax]
movzx edx, r8b
lea r10, [r10 + 1]
sub r8b, 0x41
cmp r8b, 0x19
movzx r8d, byte [r10]
lea eax, [rdx + 0x20]
movzx ecx, al
cmova ecx, edx
movsx eax, cl
add eax, r9d
imul r9d, eax, 0x401
mov eax, r9d
shr eax, 6
xor r9d, eax
test r8b, r8b
jne 0x18006f0a0
lea eax, [r9 + r9*8]
mov qword [rsp + 0x2810], r15
mov ecx, eax
shr ecx, 0xb
xor ecx, eax
imul ebp, ecx, 0x8001
call fcn.180005620
mov dword [rax + 8], r14d
mov dword [rax + 0x18], r14d
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebp
inc dword [rax + 8]
call fcn.180005620
movabs rsi, 0x98a4eb5d89a0c952
mov rcx, rax
mov rdx, rsi
call fcn.18004cf90
call fcn.180005620
mov rcx, qword [rax]
cmp dword [rcx], r14d
jne 0x18006f21f
movabs r15, 0x963d27a58df860ac
call fcn.180005620
mov dword [rax + 8], r14d
mov dword [rax + 0x18], r14d
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebp
inc dword [rax + 8]
call fcn.180005620
mov rdx, r15
mov rcx, rax
call fcn.18004cf90
call fcn.180005620
mov rax, qword gs:[0x20]
mov rbx, qword [rax]
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rdi, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rdi, 0x989680
jne 0x18006f1a3
imul rax, rax, 0x64
jmp 0x18006f1c1
cqo
idiv rdi
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rdi
add rax, rcx
add rax, 0x4c4b40
cmp byte [rbx + 0x20], r14b
jne 0x18006f1d1
mov byte [rbx + 0x20], 1
mov qword [rbx + 0x18], rax
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_SwitchToFiber]
call fcn.180005620
mov dword [rax + 8], r14d
mov dword [rax + 0x18], r14d
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebp
inc dword [rax + 8]
call fcn.180005620
mov rdx, rsi
mov rcx, rax
call fcn.18004cf90
call fcn.180005620
mov rcx, qword [rax]
cmp dword [rcx], r14d
je 0x18006f145
call fcn.180005620
mov dword [rax + 8], r14d
mov dword [rax + 0x18], r14d
call fcn.180005620
movabs rdi, 0xd80958fc74e988a6
mov rcx, rax
mov rdx, rdi
call fcn.18004cf90
call fcn.180005620
mov rcx, qword [rax]
mov ebx, dword [rcx]
call fcn.180005620
mov dword [rax + 8], r14d
mov dword [rax + 0x18], r14d
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
inc dword [rax + 8]
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 1
inc dword [rax + 8]
call fcn.180005620
movabs rdx, 0x3fef770d40960d5a
mov rcx, rax
call fcn.18004cf90
call fcn.180005620
mov rcx, qword [rax]
movups xmm7, xmmword [rcx]
movsd xmm8, qword [rcx + 0x10]
call fcn.180005620
mov dword [rax + 8], r14d
mov dword [rax + 0x18], r14d
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebp
inc dword [rax + 8]
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
movss dword [rcx + rdx*8], xmm7
inc dword [rax + 8]
call fcn.180005620
shufps xmm7, xmm7, 0xaa
addss xmm7, dword [0x1800e2f40]
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
movss dword [rcx + rdx*8], xmm7
inc dword [rax + 8]
call fcn.180005620
addss xmm8, dword [0x1800e2f40]
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
movss dword [rcx + rdx*8], xmm8
inc dword [rax + 8]
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], r14d
inc dword [rax + 8]
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 1
inc dword [rax + 8]
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], r14d
inc dword [rax + 8]
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], r14d
inc dword [rax + 8]
call fcn.180005620
movabs rdx, 0xaf35d0d2583051b0
mov rcx, rax
call fcn.18004cf90
call fcn.180005620
movaps xmm8, xmmword [rsp + 0x27b0]
movaps xmm7, xmmword [rsp + 0x27c0]
mov rcx, qword [rax]
mov rax, qword [0x180135a80]
mov esi, dword [rcx]
cmp byte [rax + 0x70], r14b
je 0x18006f3e7
call fcn.180005620
mov dword [rax + 8], r14d
mov dword [rax + 0x18], r14d
call fcn.180005620
mov rdx, rdi
mov rcx, rax
call fcn.18004cf90
call fcn.180005620
mov r8d, 0xffffffff
mov edx, esi
mov rcx, qword [rax]
mov ecx, dword [rcx]
call fcn.18006e330
mov rax, qword [0x180135a80]
cmp byte [rax + 0x72], r14b
je 0x18006f418
mov rcx, qword [0x18011bac8]
lea rax, vtable.std::_Func_impl_no_alloc_class__void___cdecl_Base::MaxTuning_int_::_2::_lambda_1___void___.0
mov qword [rsp + 0x30], rax
lea rdx, [rsp + 0x30]
lea rax, [rsp + 0x30]
mov dword [rsp + 0x38], esi
mov qword [rsp + 0x68], rax
call fcn.18000c8e0
mov rax, qword gs:[0x20]
mov rcx, qword [rax]
mov byte [rcx + 0x20], r14b
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_SwitchToFiber]
call fcn.180005620
mov dword [rax + 8], r14d
mov dword [rax + 0x18], r14d
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebp
inc dword [rax + 8]
call fcn.180005620
movabs rdx, 0xe532f5d78798daab
mov rcx, rax
call fcn.18004cf90
call fcn.180005620
mov rax, qword [0x18011bac0]
mov rcx, qword [rax + 0x110]
cmp byte [rcx], r14b
je 0x18006f487
mov ecx, esi
call fcn.1800077b0
call fcn.180005620
mov dword [rax + 8], r14d
mov dword [rax + 0x18], r14d
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebp
inc dword [rax + 8]
call fcn.180005620
movabs rdx, 0xb215aac32d25d019
mov rcx, rax
call fcn.18004cf90
call fcn.180005620
mov rcx, qword [rax]
mov rbx, qword [rcx]
call fcn.180005620
mov dword [rax + 8], r14d
mov dword [rax + 0x18], r14d
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebp
inc dword [rax + 8]
call fcn.180005620
movabs rdx, 0xdedf1c8bd47c2200
mov rcx, rax
call fcn.18004cf90
call fcn.180005620
mov r9, rbx
lea r8, str.:__s__:__i
mov edx, 7
mov rcx, qword [rax]
mov eax, dword [rcx]
lea rcx, [rsp + 0x90]
mov dword [rsp + 0x20], eax
call fcn.180007040
mov rax, qword [0x180136030]
cmp rax, qword [0x180136038]
je 0x18006f55b
mov r8d, 0x2720
lea rdx, [rsp + 0x90]
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
add qword [0x180136030], 0x2720
jmp 0x18006f56b
lea r8, [rsp + 0x90]
mov rdx, rax
call fcn.18000aa20
mov rax, qword [0x180135a80]
cmp byte [rax + 0x71], r14b
je 0x18006f7a6
mov qword [rsp + 0x2808], r12
mov ebp, 5
movabs r12, 0x44a0870b7e92d7c0
movabs r15, 0x9b1e824ffbb7027a
nop dword [rax]
call fcn.180005620
mov dword [rax + 8], r14d
mov dword [rax + 0x18], r14d
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], esi
inc dword [rax + 8]
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], r14d
inc dword [rax + 8]
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], r14d
inc dword [rax + 8]
call fcn.180005620
mov rdx, r12
mov rcx, rax
call fcn.18004cf90
call fcn.180005620
mov rax, qword gs:[0x20]
mov rbx, qword [rax]
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rdi, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rdi, 0x989680
jne 0x18006f624
imul rax, rax, 0x64
jmp 0x18006f642
cqo
idiv rdi
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rdi
add rax, rcx
add rax, 0x5f5e100
cmp byte [rbx + 0x20], r14b
jne 0x18006f652
mov byte [rbx + 0x20], 1
mov qword [rbx + 0x18], rax
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_SwitchToFiber]
call fcn.180005620
mov dword [rax + 8], r14d
mov dword [rax + 0x18], r14d
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], esi
inc dword [rax + 8]
call fcn.180005620
mov rdx, r15
mov rcx, rax
call fcn.18004cf90
call fcn.180005620
mov rax, qword gs:[0x20]
mov rbx, qword [rax]
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rdi, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rdi, 0x989680
jne 0x18006f6be
imul rax, rax, 0x64
jmp 0x18006f6dc
cqo
idiv rdi
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rdi
add rax, rcx
add rax, 0x5f5e100
cmp byte [rbx + 0x20], r14b
jne 0x18006f6ec
mov byte [rbx + 0x20], 1
mov qword [rbx + 0x18], rax
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_SwitchToFiber]
call fcn.180005620
mov dword [rax + 8], r14d
mov dword [rax + 0x18], r14d
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], esi
inc dword [rax + 8]
call fcn.180005620
mov rdx, r15
mov rcx, rax
call fcn.18004cf90
call fcn.180005620
mov rax, qword gs:[0x20]
mov rbx, qword [rax]
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rdi, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rdi, 0x989680
jne 0x18006f758
imul rax, rax, 0x64
jmp 0x18006f776
cqo
idiv rdi
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rdi
add rax, rcx
add rax, 0x5f5e100
cmp byte [rbx + 0x20], r14b
jne 0x18006f786
mov byte [rbx + 0x20], 1
mov qword [rbx + 0x18], rax
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_SwitchToFiber]
sub rbp, 1
jne 0x18006f5a0
mov r12, qword [rsp + 0x2808]
mov r15, qword [rsp + 0x2810]
add rsp, 0x27d0
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret
add rcx, 8
jmp 0x18006f060