Function at 0x1800f1f30
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov byte [rsp + 0x18], r8b
mov qword [rsp + 8], rcx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x4a0
vmovaps xmmword [rsp + 0x490], xmm6
mov r12, rdx
mov r14, rcx
xor r15d, r15d
lea r9, [rcx + 0x60]
mov rdx, qword [r9 + 0x10]
movabs rsi, 0x7fffffffffffffff
mov rax, rsi
sub rax, rdx
cmp rax, 1
jb 0x1800f46c5
cmp qword [r9 + 0x18], 0xf
jbe 0x1800f1f8a
mov r9, qword [r9]
mov qword [rsp + 0x30], 1
lea rax, [0x180200ca8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rsp + 0x350]
call fcn.1800f8990
nop
mov rdx, r12
cmp qword [r12 + 0x18], 0xf
jbe 0x1800f1fc1
mov rdx, qword [r12]
mov r8, qword [r12 + 0x10]
lea rcx, [rsp + 0x350]
call fcn.1800a57a0
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0xc0], xmm0
mov qword [rsp + 0xd0], r15
mov qword [rsp + 0xd8], r15
vmovups ymm0, ymmword [rax]
vmovups ymmword [rsp + 0xc0], ymm0
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rbx, [r14 + 0x80]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f2020
mov rdx, qword [rbx]
mov r8, qword [rbx + 0x10]
lea rcx, [rsp + 0xc0]
vzeroupper
call fcn.1800a57a0
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0xa0], xmm0
mov qword [rsp + 0xb0], r15
mov qword [rsp + 0xb8], r15
vmovups ymm0, ymmword [rax]
vmovups ymmword [rsp + 0xa0], ymm0
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rax, [rsp + 0xa0]
cmp qword [rsp + 0xb8], 0xf
cmova rax, qword [rsp + 0xa0]
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x128], rax
vzeroupper
call fcn.180185da4
vmovups xmm0, xmmword [rsp + 0x120]
vmovdqa xmmword [rsp + 0x160], xmm0
lea r8, [rsp + 0x160]
mov edx, eax
lea rcx, [rsp + 0x278]
call fcn.1800e88b0
nop
lea rcx, [rsp + 0x278]
call fcn.1800e9180
movzx edi, al
lea rcx, [rsp + 0x278]
call fcn.1800f6250
nop
mov rdx, qword [rsp + 0xb8]
cmp rdx, 0xf
jbe 0x1800f2135
inc rdx
mov rcx, qword [rsp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800f2130
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800f2130
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180184c4c
mov qword [rsp + 0xb0], r15
mov qword [rsp + 0xb8], 0xf
mov byte [rsp + 0xa0], 0
mov rdx, qword [rsp + 0xd8]
cmp rdx, 0xf
jbe 0x1800f2197
inc rdx
mov rcx, qword [rsp + 0xc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800f2192
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800f2192
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180184c4c
mov qword [rsp + 0xd0], r15
mov qword [rsp + 0xd8], 0xf
mov byte [rsp + 0xc0], 0
lea rcx, [rsp + 0x350]
call fcn.180091b30
test dil, dil
je 0x1800f46a7
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0xf0], xmm0
mov qword [rsp + 0x100], r15
mov qword [rsp + 0x108], 0xf
mov byte [rsp + 0xf0], 0
mov ecx, 0x20
call fcn.180184d74
mov qword [rsp + 0x4f8], rax
mov rcx, rax
call fcn.1800f87e0
nop
mov qword [rsp + 0x110], rax
mov cl, 1
call qword [sym.imp.MSVCP140.dll_private:_static_class_std::locale::_Locimp____ptr64___cdecl_std::locale::_Init_bool_]
mov qword [rsp + 0x128], rax
lea r9, [r14 + 0x40]
mov rcx, qword [r9 + 0x10]
mov rax, rsi
sub rax, rcx
cmp rax, 9
jb 0x1800f46cb
cmp qword [r9 + 0x18], 0xf
jbe 0x1800f2247
mov r9, qword [r9]
mov qword [rsp + 0x30], 9
lea rax, str.Visuals_
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x278]
call fcn.1800f8990
nop
mov rdx, r12
cmp qword [r12 + 0x18], 0xf
jbe 0x1800f227e
mov rdx, qword [r12]
mov r8, qword [r12 + 0x10]
lea rcx, [rsp + 0x278]
call fcn.1800a57a0
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0xc0], xmm0
xor r14d, r14d
mov qword [rsp + 0xd0], r14
mov qword [rsp + 0xd8], r14
vmovups ymm0, ymmword [rax]
vmovups ymmword [rsp + 0xc0], ymm0
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], r14b
mov r8, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f22da
mov rbx, qword [rbx]
mov rdx, rbx
lea rcx, [rsp + 0xc0]
vzeroupper
call fcn.1800a57a0
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0xa0], xmm0
mov qword [rsp + 0xb0], r14
mov qword [rsp + 0xb8], r14
vmovups ymm0, ymmword [rax]
vmovups ymmword [rsp + 0xa0], ymm0
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rsp + 0x120]
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0xa0]
vzeroupper
call fcn.1800f7320
nop
mov rdx, qword [rsp + 0xb8]
cmp rdx, 0xf
jbe 0x1800f238d
inc rdx
mov rcx, qword [rsp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800f2388
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800f2388
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180184c4c
mov qword [rsp + 0xb0], r14
mov qword [rsp + 0xb8], 0xf
mov byte [rsp + 0xa0], 0
mov rdx, qword [rsp + 0xd8]
cmp rdx, 0xf
jbe 0x1800f23ef
inc rdx
mov rcx, qword [rsp + 0xc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800f23ea
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800f23ea
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180184c4c
mov qword [rsp + 0xd0], r14
mov qword [rsp + 0xd8], 0xf
mov byte [rsp + 0xc0], 0
lea rcx, [rsp + 0x278]
call fcn.180091b30
nop
mov rcx, qword [rsp + 0x128]
test rcx, rcx
je 0x1800f2442
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x1800f2442
mov rcx, qword [rax]
mov r8, qword [rcx]
mov edx, 1
mov rcx, rax
call r8
mov r15, qword [0x18022d990]
mov rax, qword [0x18022d998]
mov qword [rsp + 0x270], rax
mov qword [rsp + 0x4f8], r15
cmp r15, rax
je 0x1800f4553
mov r13, qword [r15]
mov eax, dword [r13 + 0x28]
and al, 3
cmp al, 1
jne 0x1800f4542
lea rcx, [0x180231820]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800f2822
lea rcx, [0x180231820]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
cmovne rcx, r14
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x1e8], xmm0
mov qword [rsp + 0x1f8], 7
mov qword [rsp + 0x200], 0xf
mov rax, qword [0x1801f6cf8]
mov dword [rsp + 0x1e8], eax
movzx eax, word [0x1801f6cfc]
mov word [rsp + 0x1ec], ax
movzx eax, byte [0x1801f6cfe]
mov byte [rsp + 0x1ee], al
mov byte [rsp + 0x1ef], 0
movzx eax, byte [rcx + 0x30]
mov byte [rsp + 0x208], al
lea rcx, [0x180231820]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rdi, r13
cmp rax, qword [r13]
cmovne rdi, r14
lea rcx, [rdi + 0x38]
call fcn.1800abee0
lea rsi, [rsp + 0x210]
lea rbx, [rsp + 0x1e8]
nop dword [rax]
cmp rbx, rsi
je 0x1800f255f
mov r8, rbx
lea rdx, [rsp + 0x450]
lea rcx, [rdi + 0x38]
call fcn.1800fb210
add rbx, 0x28
jmp 0x1800f2540
lea r9, [fcn.180090db0]
mov edx, 0x28
lea r8d, [rdx - 0x27]
lea rcx, [rsp + 0x1e8]
call fcn.180185154
lea rdx, [r13 + 8]
cmp qword [rdx + 0x18], 0xf
jbe 0x1800f258a
mov rdx, qword [rdx]
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r14
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x1800f25a5
lea rcx, [rsp + 0x40]
call fcn.180093c20
mov byte [rsp + 0x60], 0x2e
lea rax, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rax, qword [rsp + 0x40]
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x70]
call fcn.1800917a0
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x90], al
lea rdx, [rsp + 0x70]
cmp qword [rsp + 0x88], 0xf
cmova rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x68]
sub rax, rcx
add rax, rdx
mov qword [rsp + 0x98], rax
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0xf0]
call fcn.1800f97e0
mov rsi, rax
test rax, rax
jne 0x1800f2644
mov rsi, r14
lea rcx, [rsp + 0x70]
call fcn.180091b30
nop
lea rcx, [rsp + 0x40]
call fcn.180091b30
test rsi, rsi
je 0x1800f4542
mov r8, qword [rsi + 0x20]
lea rdx, [r8 + 0x11]
mov rax, r8
test rdx, rdx
cmove rax, r14
mov rax, qword [rax + 8]
mov rcx, qword [rax + 0x68]
lea rbx, [rcx - 0x60]
test rcx, rcx
cmove rbx, r14
test rdx, rdx
cmovne r14, r8
mov r14, qword [r14 + 8]
mov rdi, qword [0x1801f6cf8]
xor r15d, r15d
nop dword [rax]
cmp rbx, r14
je 0x1800f4537
mov r8, qword [rbx + 0x10]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f26ba
mov rdx, qword [rbx]
movabs r9, 0xcbf29ce484222325
mov rcx, r15
test r8, r8
je 0x1800f26ed
nop dword [rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
movabs rax, 0x100000001b3
imul r9, rax
inc rcx
cmp rcx, r8
jb 0x1800f26d0
mov r8, rbx
lea rdx, [rsp + 0x440]
lea rcx, [0x180230590]
call fcn.180095560
cmp qword [rax + 8], 0
je 0x1800f2734
lea rcx, [0x180231820]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
cmovne rcx, r15
test byte [rcx + 0x28], 4
je 0x1800f27bf
mov rdi, qword [0x1801f6cf8]
mov r15, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f2741
mov r15, qword [rbx]
test dil, dil
jne 0x1800f274e
mov r9d, 0x811c9dc5
jmp 0x1800f276c
movsx eax, dil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x1801f6cf9]
call fcn.1800e1f90
mov r9d, eax
mov rcx, 0xffffffffffffffff
mov r8d, 0x811c9dc5
nop dword [rax]
inc rcx
cmp byte [r15 + rcx], 0
jne 0x1800f2780
xor eax, eax
mov edx, eax
test rcx, rcx
je 0x1800f27b7
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rdx + r15]
xor eax, r8d
imul r8d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x1800f27a0
xor r15d, r15d
cmp r8d, r9d
jne 0x1800f280e
lea rcx, [0x180231820]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
cmovne rcx, r15
add rcx, 0x38
mov r8, rbx
lea rdx, [rsp + 0x430]
call fcn.1800e6db0
mov r9, qword [rax]
add r9, 0x30
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f27ff
mov r8, qword [rbx]
mov rdx, rsi
call fcn.1800eb0b0
mov rdi, qword [0x1801f6cf8]
mov rax, qword [rbx + 0x68]
lea rbx, [rax - 0x60]
test rax, rax
cmove rbx, r15
jmp 0x1800f26a0
lea rcx, [0x180231660]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800f2bd0
lea rcx, [0x180231660]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
cmovne rcx, r14
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x210], xmm0
mov qword [rsp + 0x220], 7
mov qword [rsp + 0x228], 0xf
mov rax, qword [0x1801f6cf8]
mov dword [rsp + 0x210], eax
movzx eax, word [0x1801f6cfc]
mov word [rsp + 0x214], ax
movzx eax, byte [0x1801f6cfe]
mov byte [rsp + 0x216], al
mov byte [rsp + 0x217], 0
mov eax, dword [rcx + 0x30]
mov dword [rsp + 0x230], eax
lea rcx, [0x180231660]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rdi, r13
cmp rax, qword [r13]
cmovne rdi, r14
lea rcx, [rdi + 0x38]
call fcn.1800abee0
lea rsi, [rsp + 0x238]
lea rbx, [rsp + 0x210]
cmp rbx, rsi
je 0x1800f2903
mov r8, rbx
lea rdx, [rsp + 0x420]
lea rcx, [rdi + 0x38]
call fcn.1800faf90
add rbx, 0x28
jmp 0x1800f28e4
lea r9, [fcn.180090db0]
mov edx, 0x28
lea r8d, [rdx - 0x27]
lea rcx, [rsp + 0x210]
call fcn.180185154
lea rdx, [r13 + 8]
cmp qword [rdx + 0x18], 0xf
jbe 0x1800f292e
mov rdx, qword [rdx]
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r14
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x1800f2950
lea rcx, [rsp + 0x40]
call fcn.180093c20
mov byte [rsp + 0x60], 0x2e
lea rax, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rax, qword [rsp + 0x40]
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x70]
call fcn.1800917a0
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x90], al
lea rdx, [rsp + 0x70]
cmp qword [rsp + 0x88], 0xf
cmova rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x68]
sub rax, rcx
add rax, rdx
mov qword [rsp + 0x98], rax
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0xf0]
call fcn.1800f97e0
mov rsi, rax
test rax, rax
jne 0x1800f29ef
mov rsi, r14
lea rcx, [rsp + 0x70]
call fcn.180091b30
nop
lea rcx, [rsp + 0x40]
call fcn.180091b30
test rsi, rsi
je 0x1800f4542
mov r8, qword [rsi + 0x20]
lea rdx, [r8 + 0x11]
mov rax, r8
test rdx, rdx
cmove rax, r14
mov rax, qword [rax + 8]
mov rcx, qword [rax + 0x68]
lea rbx, [rcx - 0x60]
test rcx, rcx
cmove rbx, r14
test rdx, rdx
cmovne r14, r8
mov r14, qword [r14 + 8]
mov rdi, qword [0x1801f6cf8]
xor eax, eax
cmp rbx, r14
je 0x1800f4537
mov r8, qword [rbx + 0x10]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f2a60
mov rdx, qword [rbx]
movabs r9, 0xcbf29ce484222325
mov rcx, rax
test r8, r8
je 0x1800f2a8f
movzx eax, byte [rcx + rdx]
xor r9, rax
movabs rax, 0x100000001b3
imul r9, rax
inc rcx
cmp rcx, r8
jb 0x1800f2a72
mov r8, rbx
lea rdx, [rsp + 0x410]
lea rcx, [0x180230590]
call fcn.180095560
cmp qword [rax + 8], 0
je 0x1800f2add
lea rcx, [0x180231660]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
mov eax, 0
cmovne rcx, rax
test byte [rcx + 0x28], 4
je 0x1800f2b63
mov rdi, qword [0x1801f6cf8]
jmp 0x1800f2adf
xor eax, eax
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f2aec
mov r8, qword [rbx]
mov rcx, 0xffffffffffffffff
mov r15d, 0x811c9dc5
nop dword [rax]
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1800f2b00
mov rdx, rax
test rcx, rcx
je 0x1800f2b37
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rdx + r8]
xor eax, r15d
imul r15d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x1800f2b20
test dil, dil
jne 0x1800f2b43
mov eax, 0x811c9dc5
jmp 0x1800f2b5e
movsx eax, dil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x1801f6cf9]
call fcn.1800e1f90
cmp r15d, eax
jne 0x1800f2bb7
lea rcx, [0x180231660]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
mov eax, 0
cmovne rcx, rax
add rcx, 0x38
mov r8, rbx
lea rdx, [rsp + 0x460]
call fcn.1800e68a0
mov r9, qword [rax]
add r9, 0x30
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f2ba8
mov r8, qword [rbx]
mov rdx, rsi
call fcn.1800eb150
mov rdi, qword [0x1801f6cf8]
mov rax, qword [rbx + 0x68]
lea rbx, [rax - 0x60]
test rax, rax
mov eax, 0
cmove rbx, rax
jmp 0x1800f2a46
lea rcx, [0x180231648]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800f2f80
lea rcx, [0x180231648]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
cmovne rcx, r14
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x1c0], xmm0
mov qword [rsp + 0x1d0], 7
mov qword [rsp + 0x1d8], 0xf
mov rax, qword [0x1801f6cf8]
mov dword [rsp + 0x1c0], eax
movzx eax, word [0x1801f6cfc]
mov word [rsp + 0x1c4], ax
movzx eax, byte [0x1801f6cfe]
mov byte [rsp + 0x1c6], al
mov byte [rsp + 0x1c7], 0
vmovss xmm0, dword [rcx + 0x30]
vmovss dword [rsp + 0x1e0], xmm0
lea rcx, [0x180231648]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rdi, r13
cmp rax, qword [r13]
cmovne rdi, r14
lea rcx, [rdi + 0x38]
call fcn.1800abee0
lea rsi, [rsp + 0x1e8]
lea rbx, [rsp + 0x1c0]
cmp rbx, rsi
je 0x1800f2cb5
mov r8, rbx
lea rdx, [rsp + 0x470]
lea rcx, [rdi + 0x38]
call fcn.1800faf90
add rbx, 0x28
jmp 0x1800f2c96
lea r9, [fcn.180090db0]
mov edx, 0x28
lea r8d, [rdx - 0x27]
lea rcx, [rsp + 0x1c0]
call fcn.180185154
lea rdx, [r13 + 8]
cmp qword [rdx + 0x18], 0xf
jbe 0x1800f2ce0
mov rdx, qword [rdx]
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r14
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x1800f2d00
lea rcx, [rsp + 0x40]
call fcn.180093c20
mov byte [rsp + 0x60], 0x2e
lea rax, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rax, qword [rsp + 0x40]
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x70]
call fcn.1800917a0
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x90], al
lea rdx, [rsp + 0x70]
cmp qword [rsp + 0x88], 0xf
cmova rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x68]
sub rax, rcx
add rax, rdx
mov qword [rsp + 0x98], rax
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0xf0]
call fcn.1800f97e0
mov rsi, rax
test rax, rax
jne 0x1800f2d9f
mov rsi, r14
lea rcx, [rsp + 0x70]
call fcn.180091b30
nop
lea rcx, [rsp + 0x40]
call fcn.180091b30
test rsi, rsi
je 0x1800f4542
mov r8, qword [rsi + 0x20]
lea rdx, [r8 + 0x11]
mov rax, r8
test rdx, rdx
cmove rax, r14
mov rax, qword [rax + 8]
mov rcx, qword [rax + 0x68]
lea rbx, [rcx - 0x60]
test rcx, rcx
cmove rbx, r14
test rdx, rdx
cmovne r14, r8
mov r14, qword [r14 + 8]
mov rdi, qword [0x1801f6cf8]
xor eax, eax
cmp rbx, r14
je 0x1800f4537
mov r8, qword [rbx + 0x10]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f2e10
mov rdx, qword [rbx]
movabs r9, 0xcbf29ce484222325
mov rcx, rax
test r8, r8
je 0x1800f2e3f
movzx eax, byte [rdx + rcx]
xor r9, rax
movabs rax, 0x100000001b3
imul r9, rax
inc rcx
cmp rcx, r8
jb 0x1800f2e22
mov r8, rbx
lea rdx, [rsp + 0x480]
lea rcx, [0x180230590]
call fcn.180095560
cmp qword [rax + 8], 0
je 0x1800f2e8d
lea rcx, [0x180231648]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
mov eax, 0
cmovne rcx, rax
test byte [rcx + 0x28], 4
je 0x1800f2f13
mov rdi, qword [0x1801f6cf8]
jmp 0x1800f2e8f
xor eax, eax
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f2e9c
mov r8, qword [rbx]
mov rcx, 0xffffffffffffffff
mov r15d, 0x811c9dc5
nop dword [rax]
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1800f2eb0
mov rdx, rax
test rcx, rcx
je 0x1800f2ee7
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rdx + r8]
xor eax, r15d
imul r15d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x1800f2ed0
test dil, dil
jne 0x1800f2ef3
mov eax, 0x811c9dc5
jmp 0x1800f2f0e
movsx eax, dil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x1801f6cf9]
call fcn.1800e1f90
cmp r15d, eax
jne 0x1800f2f67
lea rcx, [0x180231648]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
mov eax, 0
cmovne rcx, rax
add rcx, 0x38
mov r8, rbx
lea rdx, [rsp + 0x370]
call fcn.1800e68a0
mov r9, qword [rax]
add r9, 0x30
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f2f58
mov r8, qword [rbx]
mov rdx, rsi
call fcn.1800eb2a0
mov rdi, qword [0x1801f6cf8]
mov rax, qword [rbx + 0x68]
lea rbx, [rax - 0x60]
test rax, rax
mov eax, 0
cmove rbx, rax
jmp 0x1800f2df6
lea rcx, [0x180231838]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800f3330
lea rcx, [0x180231838]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
cmovne rcx, r14
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x198], xmm0
mov qword [rsp + 0x1a8], 7
mov qword [rsp + 0x1b0], 0xf
mov rax, qword [0x1801f6cf8]
mov dword [rsp + 0x198], eax
movzx eax, word [0x1801f6cfc]
mov word [rsp + 0x19c], ax
movzx eax, byte [0x1801f6cfe]
mov byte [rsp + 0x19e], al
mov byte [rsp + 0x19f], 0
mov rax, qword [rcx + 0x30]
mov qword [rsp + 0x1b8], rax
lea rcx, [0x180231838]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rdi, r13
cmp rax, qword [r13]
cmovne rdi, r14
lea rcx, [rdi + 0x40]
call fcn.1800abee0
lea rsi, [rsp + 0x1c0]
lea rbx, [rsp + 0x198]
cmp rbx, rsi
je 0x1800f3063
mov r8, rbx
lea rdx, [rsp + 0x380]
lea rcx, [rdi + 0x40]
call fcn.1800fa800
add rbx, 0x28
jmp 0x1800f3044
lea r9, [fcn.180090db0]
mov edx, 0x28
lea r8d, [rdx - 0x27]
lea rcx, [rsp + 0x198]
call fcn.180185154
lea rdx, [r13 + 8]
cmp qword [rdx + 0x18], 0xf
jbe 0x1800f308e
mov rdx, qword [rdx]
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r14
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x1800f30b0
lea rcx, [rsp + 0x40]
call fcn.180093c20
mov byte [rsp + 0x60], 0x2e
lea rax, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rax, qword [rsp + 0x40]
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x70]
call fcn.1800917a0
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x90], al
lea rdx, [rsp + 0x70]
cmp qword [rsp + 0x88], 0xf
cmova rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x68]
sub rax, rcx
add rax, rdx
mov qword [rsp + 0x98], rax
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0xf0]
call fcn.1800f97e0
mov rsi, rax
test rax, rax
jne 0x1800f314f
mov rsi, r14
lea rcx, [rsp + 0x70]
call fcn.180091b30
nop
lea rcx, [rsp + 0x40]
call fcn.180091b30
test rsi, rsi
je 0x1800f4542
mov r8, qword [rsi + 0x20]
lea rdx, [r8 + 0x11]
mov rax, r8
test rdx, rdx
cmove rax, r14
mov rax, qword [rax + 8]
mov rcx, qword [rax + 0x68]
lea rbx, [rcx - 0x60]
test rcx, rcx
cmove rbx, r14
test rdx, rdx
cmovne r14, r8
mov r14, qword [r14 + 8]
mov rdi, qword [0x1801f6cf8]
xor eax, eax
cmp rbx, r14
je 0x1800f4537
mov r8, qword [rbx + 0x10]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f31c0
mov rdx, qword [rbx]
movabs r9, 0xcbf29ce484222325
mov rcx, rax
test r8, r8
je 0x1800f31ef
movzx eax, byte [rcx + rdx]
xor r9, rax
movabs rax, 0x100000001b3
imul r9, rax
inc rcx
cmp rcx, r8
jb 0x1800f31d2
mov r8, rbx
lea rdx, [rsp + 0x390]
lea rcx, [0x180230590]
call fcn.180095560
cmp qword [rax + 8], 0
je 0x1800f323d
lea rcx, [0x180231838]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
mov eax, 0
cmovne rcx, rax
test byte [rcx + 0x28], 4
je 0x1800f32c3
mov rdi, qword [0x1801f6cf8]
jmp 0x1800f323f
xor eax, eax
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f324c
mov r8, qword [rbx]
mov rcx, 0xffffffffffffffff
mov r15d, 0x811c9dc5
nop dword [rax]
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1800f3260
mov rdx, rax
test rcx, rcx
je 0x1800f3297
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rdx + r8]
xor eax, r15d
imul r15d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x1800f3280
test dil, dil
jne 0x1800f32a3
mov eax, 0x811c9dc5
jmp 0x1800f32be
movsx eax, dil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x1801f6cf9]
call fcn.1800e1f90
cmp r15d, eax
jne 0x1800f3317
lea rcx, [0x180231838]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
mov eax, 0
cmovne rcx, rax
add rcx, 0x40
mov r8, rbx
lea rdx, [rsp + 0x3a0]
call fcn.1800e6390
mov r9, qword [rax]
add r9, 0x30
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f3308
mov r8, qword [rbx]
mov rdx, rsi
call fcn.1800eb400
mov rdi, qword [0x1801f6cf8]
mov rax, qword [rbx + 0x68]
lea rbx, [rax - 0x60]
test rax, rax
mov eax, 0
cmove rbx, rax
jmp 0x1800f31a6
lea rcx, [0x180231ab0]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800f36f0
lea rcx, [0x180231ab0]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
cmovne rcx, r14
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x170], xmm0
mov qword [rsp + 0x180], 7
mov qword [rsp + 0x188], 0xf
mov rax, qword [0x1801f6cf8]
mov dword [rsp + 0x170], eax
movzx eax, word [0x1801f6cfc]
mov word [rsp + 0x174], ax
movzx eax, byte [0x1801f6cfe]
mov byte [rsp + 0x176], al
mov byte [rsp + 0x177], 0
vmovss xmm0, dword [rcx + 0x30]
vmovss dword [rsp + 0x190], xmm0
vmovss xmm1, dword [rcx + 0x34]
vmovss dword [rsp + 0x194], xmm1
lea rcx, [0x180231ab0]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rdi, r13
cmp rax, qword [r13]
cmovne rdi, r14
lea rcx, [rdi + 0x40]
call fcn.1800abee0
lea rsi, [rsp + 0x198]
lea rbx, [rsp + 0x170]
cmp rbx, rsi
je 0x1800f3423
mov r8, rbx
lea rdx, [rsp + 0x3b0]
lea rcx, [rdi + 0x40]
call fcn.1800fa580
add rbx, 0x28
jmp 0x1800f3404
lea r9, [fcn.180090db0]
mov edx, 0x28
lea r8d, [rdx - 0x27]
lea rcx, [rsp + 0x170]
call fcn.180185154
lea rdx, [r13 + 8]
cmp qword [rdx + 0x18], 0xf
jbe 0x1800f344e
mov rdx, qword [rdx]
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r14
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x1800f3470
lea rcx, [rsp + 0x40]
call fcn.180093c20
mov byte [rsp + 0x60], 0x2e
lea rax, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rax, qword [rsp + 0x40]
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x70]
call fcn.1800917a0
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x90], al
lea rdx, [rsp + 0x70]
cmp qword [rsp + 0x88], 0xf
cmova rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x68]
sub rax, rcx
add rax, rdx
mov qword [rsp + 0x98], rax
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0xf0]
call fcn.1800f97e0
mov rsi, rax
test rax, rax
jne 0x1800f350f
mov rsi, r14
lea rcx, [rsp + 0x70]
call fcn.180091b30
nop
lea rcx, [rsp + 0x40]
call fcn.180091b30
test rsi, rsi
je 0x1800f4542
mov r8, qword [rsi + 0x20]
lea rdx, [r8 + 0x11]
mov rax, r8
test rdx, rdx
cmove rax, r14
mov rax, qword [rax + 8]
mov rcx, qword [rax + 0x68]
lea rbx, [rcx - 0x60]
test rcx, rcx
cmove rbx, r14
test rdx, rdx
cmovne r14, r8
mov r14, qword [r14 + 8]
mov rdi, qword [0x1801f6cf8]
xor eax, eax
cmp rbx, r14
je 0x1800f4537
mov r8, qword [rbx + 0x10]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f3580
mov rdx, qword [rbx]
movabs r9, 0xcbf29ce484222325
mov rcx, rax
test r8, r8
je 0x1800f35af
movzx eax, byte [rdx + rcx]
xor r9, rax
movabs rax, 0x100000001b3
imul r9, rax
inc rcx
cmp rcx, r8
jb 0x1800f3592
mov r8, rbx
lea rdx, [rsp + 0x3c0]
lea rcx, [0x180230590]
call fcn.180095560
cmp qword [rax + 8], 0
je 0x1800f35fd
lea rcx, [0x180231ab0]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
mov eax, 0
cmovne rcx, rax
test byte [rcx + 0x28], 4
je 0x1800f3683
mov rdi, qword [0x1801f6cf8]
jmp 0x1800f35ff
xor eax, eax
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f360c
mov r8, qword [rbx]
mov rcx, 0xffffffffffffffff
mov r15d, 0x811c9dc5
nop dword [rax]
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1800f3620
mov rdx, rax
test rcx, rcx
je 0x1800f3657
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rdx + r8]
xor eax, r15d
imul r15d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x1800f3640
test dil, dil
jne 0x1800f3663
mov eax, 0x811c9dc5
jmp 0x1800f367e
movsx eax, dil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x1801f6cf9]
call fcn.1800e1f90
cmp r15d, eax
jne 0x1800f36d7
lea rcx, [0x180231ab0]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
mov eax, 0
cmovne rcx, rax
add rcx, 0x40
mov r8, rbx
lea rdx, [rsp + 0x3d0]
call fcn.1800e5610
mov r9, qword [rax]
add r9, 0x30
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f36c8
mov r8, qword [rbx]
mov rdx, rsi
call fcn.1800eb710
mov rdi, qword [0x1801f6cf8]
mov rax, qword [rbx + 0x68]
lea rbx, [rax - 0x60]
test rax, rax
mov eax, 0
cmove rbx, rax
jmp 0x1800f3566
lea rcx, [0x1802317c8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800f3ab0
lea rcx, [0x1802317c8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rdx, r13
cmp rax, qword [r13]
cmovne rdx, r14
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x310], xmm0
mov qword [rsp + 0x320], 7
mov qword [rsp + 0x328], 0xf
mov rax, qword [0x1801f6cf8]
mov dword [rsp + 0x310], eax
movzx eax, word [0x1801f6cfc]
mov word [rsp + 0x314], ax
movzx eax, byte [0x1801f6cfe]
mov byte [rsp + 0x316], al
mov byte [rsp + 0x317], 0
add rdx, 0x30
lea rcx, [rsp + 0x330]
call fcn.1800917a0
nop
lea rcx, [0x1802317c8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rdi, r13
cmp rax, qword [r13]
cmovne rdi, r14
lea rcx, [rdi + 0x70]
call fcn.1800ac160
lea rsi, [rsp + 0x350]
lea rbx, [rsp + 0x310]
nop word [rax + rax]
cmp rbx, rsi
je 0x1800f37df
mov r8, rbx
lea rdx, [rsp + 0x3e0]
lea rcx, [rdi + 0x70]
call fcn.1800fb490
add rbx, 0x40
jmp 0x1800f37c0
lea r9, [0x1800ae6f0]
mov edx, 0x40
lea r8d, [rdx - 0x3f]
lea rcx, [rsp + 0x310]
call fcn.180185154
lea rdx, [r13 + 8]
cmp qword [rdx + 0x18], 0xf
jbe 0x1800f380a
mov rdx, qword [rdx]
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r14
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x1800f3825
lea rcx, [rsp + 0x40]
call fcn.180093c20
mov byte [rsp + 0x60], 0x2e
lea rax, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rax, qword [rsp + 0x40]
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x70]
call fcn.1800917a0
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x90], al
lea rdx, [rsp + 0x70]
cmp qword [rsp + 0x88], 0xf
cmova rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x68]
sub rax, rcx
add rax, rdx
mov qword [rsp + 0x98], rax
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0xf0]
call fcn.1800f97e0
mov rsi, rax
test rax, rax
jne 0x1800f38c4
mov rsi, r14
lea rcx, [rsp + 0x70]
call fcn.180091b30
nop
lea rcx, [rsp + 0x40]
call fcn.180091b30
test rsi, rsi
je 0x1800f4542
mov r8, qword [rsi + 0x20]
lea rdx, [r8 + 0x11]
mov rax, r8
test rdx, rdx
cmove rax, r14
mov rax, qword [rax + 8]
mov rcx, qword [rax + 0x68]
lea rbx, [rcx - 0x60]
test rcx, rcx
cmove rbx, r14
test rdx, rdx
cmovne r14, r8
mov r14, qword [r14 + 8]
mov rdi, qword [0x1801f6cf8]
xor eax, eax
nop dword [rax + rax]
cmp rbx, r14
je 0x1800f4537
mov r8, qword [rbx + 0x10]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f393a
mov rdx, qword [rbx]
movabs r9, 0xcbf29ce484222325
mov rcx, rax
test r8, r8
je 0x1800f396d
nop dword [rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
movabs rax, 0x100000001b3
imul r9, rax
inc rcx
cmp rcx, r8
jb 0x1800f3950
mov r8, rbx
lea rdx, [rsp + 0x3f0]
lea rcx, [0x180230590]
call fcn.180095560
cmp qword [rax + 8], 0
je 0x1800f39bb
lea rcx, [0x1802317c8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
mov eax, 0
cmovne rcx, rax
test byte [rcx + 0x28], 4
je 0x1800f3a43
mov rdi, qword [0x1801f6cf8]
jmp 0x1800f39bd
xor eax, eax
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f39ca
mov r8, qword [rbx]
mov rcx, 0xffffffffffffffff
mov r15d, 0x811c9dc5
nop word [rax + rax]
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1800f39e0
mov rdx, rax
test rcx, rcx
je 0x1800f3a17
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rdx + r8]
xor eax, r15d
imul r15d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x1800f3a00
test dil, dil
jne 0x1800f3a23
mov eax, 0x811c9dc5
jmp 0x1800f3a3e
movsx eax, dil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x1801f6cf9]
call fcn.1800e1f90
cmp r15d, eax
jne 0x1800f3a97
lea rcx, [0x1802317c8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
mov eax, 0
cmovne rcx, rax
add rcx, 0x70
mov r8, rbx
lea rdx, [rsp + 0x400]
call fcn.1800e7030
mov r9, qword [rax]
add r9, 0x30
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f3a88
mov r8, qword [rbx]
mov rdx, rsi
call fcn.1800eba30
mov rdi, qword [0x1801f6cf8]
mov rax, qword [rbx + 0x68]
lea rbx, [rax - 0x60]
test rax, rax
mov eax, 0
cmove rbx, rax
jmp 0x1800f3920
lea rcx, [0x1802316a8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800f3e68
lea rcx, [0x1802316a8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rdx, r13
cmp rax, qword [r13]
cmovne rdx, r14
add rdx, 0x30
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x2a8], xmm0
mov qword [rsp + 0x2b8], 7
mov qword [rsp + 0x2c0], 0xf
mov rax, qword [0x1801f6cf8]
mov dword [rsp + 0x2a8], eax
movzx eax, word [0x1801f6cfc]
mov word [rsp + 0x2ac], ax
movzx eax, byte [0x1801f6cfe]
mov byte [rsp + 0x2ae], al
mov byte [rsp + 0x2af], 0
lea rcx, [rsp + 0x2c8]
call fcn.1800f88d0
nop
lea rcx, [0x1802316a8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rdi, r13
cmp rax, qword [r13]
cmovne rdi, r14
lea rcx, [rdi + 0x60]
call fcn.1800ac080
lea rsi, [rsp + 0x2e0]
lea rbx, [rsp + 0x2a8]
nop word [rax + rax]
cmp rbx, rsi
je 0x1800f3b9f
mov r8, rbx
lea rdx, [rsp + 0x350]
lea rcx, [rdi + 0x60]
call fcn.1800fad00
add rbx, 0x38
jmp 0x1800f3b80
lea r9, [0x1800ae6d0]
mov edx, 0x38
lea r8d, [rdx - 0x37]
lea rcx, [rsp + 0x2a8]
call fcn.180185154
lea rdx, [r13 + 8]
cmp qword [rdx + 0x18], 0xf
jbe 0x1800f3bca
mov rdx, qword [rdx]
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r14
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x1800f3be5
lea rcx, [rsp + 0x40]
call fcn.180093c20
mov byte [rsp + 0x60], 0x2e
lea rax, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rax, qword [rsp + 0x40]
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x70]
call fcn.1800917a0
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x90], al
lea rdx, [rsp + 0x98]
lea rcx, [rsp + 0x70]
call fcn.180091640
lea rdx, [rsp + 0x120]
lea rcx, [rsp + 0x40]
call fcn.180091640
mov rcx, qword [rsp + 0x68]
sub rcx, qword [rax]
add qword [rsp + 0x98], rcx
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0xf0]
call fcn.1800f97e0
mov rsi, rax
test rax, rax
jne 0x1800f3c80
mov rsi, r14
lea rcx, [rsp + 0x70]
call fcn.180091b30
nop
lea rcx, [rsp + 0x40]
call fcn.180091b30
test rsi, rsi
je 0x1800f4542
lea rdx, [rsp + 0x130]
mov rcx, rsi
call fcn.1800f6690
lea rdx, [rsp + 0x298]
mov rcx, rsi
call fcn.1800f66c0
mov rdi, qword [0x1801f6cf8]
mov rbx, qword [rsp + 0x130]
mov r14, qword [rsp + 0x298]
xor eax, eax
cmp rbx, r14
je 0x1800f4537
mov r8, qword [rbx + 0x10]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f3cf1
mov rdx, qword [rbx]
movabs r9, 0xcbf29ce484222325
mov rcx, rax
test r8, r8
je 0x1800f3d20
movzx eax, byte [rcx + rdx]
xor r9, rax
movabs rax, 0x100000001b3
imul r9, rax
inc rcx
cmp rcx, r8
jb 0x1800f3d03
mov r8, rbx
lea rdx, [rsp + 0x278]
lea rcx, [0x180230590]
call fcn.180095560
cmp qword [rax + 8], 0
je 0x1800f3d6e
lea rcx, [0x1802316a8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
mov eax, 0
cmovne rcx, rax
test byte [rcx + 0x28], 4
je 0x1800f3df3
mov rdi, qword [0x1801f6cf8]
jmp 0x1800f3d70
xor eax, eax
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f3d7d
mov r8, qword [rbx]
mov rcx, 0xffffffffffffffff
mov r15d, 0x811c9dc5
nop word [rax + rax]
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1800f3d90
mov rdx, rax
test rcx, rcx
je 0x1800f3dc7
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rdx + r8]
xor eax, r15d
imul r15d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x1800f3db0
test dil, dil
jne 0x1800f3dd3
mov eax, 0x811c9dc5
jmp 0x1800f3dee
movsx eax, dil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x1801f6cf9]
call fcn.1800e1f90
cmp r15d, eax
jne 0x1800f3e47
lea rcx, [0x1802316a8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
mov eax, 0
cmovne rcx, rax
add rcx, 0x60
mov r8, rbx
lea rdx, [rsp + 0xc0]
call fcn.1800e6100
mov r9, qword [rax]
add r9, 0x30
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f3e38
mov r8, qword [rbx]
mov rdx, rsi
call fcn.1800ebb90
mov rdi, qword [0x1801f6cf8]
mov rax, qword [rbx + 0x68]
lea rbx, [rax - 0x60]
test rax, rax
mov eax, 0
cmove rbx, rax
mov qword [rsp + 0x130], rbx
jmp 0x1800f3cd7
lea rcx, [0x180231758]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800f4060
mov rcx, r13
call fcn.1800e4e00
lea r8, [rax + 0x30]
lea rcx, [rsp + 0x40]
call fcn.1800f7560
nop
lea rax, [rsp + 0x40]
mov qword [rsp + 0x300], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x308], rax
vmovups xmm0, xmmword [rsp + 0x300]
vmovdqa xmmword [rsp + 0xe0], xmm0
mov rcx, r13
call fcn.1800e4e00
lea rcx, [rax + 0x38]
lea rdx, [rsp + 0xe0]
call fcn.1800f5d30
nop
lea r9, [fcn.180090db0]
mov edx, 0x28
lea r8d, [rdx - 0x27]
lea rcx, [rsp + 0x40]
call fcn.180185154
lea rcx, [r13 + 8]
call fcn.18006c500
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.1800f64b0
nop
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x2a0]
lea rcx, [rsp + 0xf0]
call fcn.1800f67a0
nop
lea rcx, [rsp + 0x70]
call fcn.180091b30
mov rdi, qword [rsp + 0x2a0]
test rdi, rdi
je 0x1800f4542
lea rdx, [rsp + 0x138]
mov rcx, rdi
call fcn.1800f6690
lea rdx, [rsp + 0x238]
mov rcx, rdi
call fcn.1800f66c0
mov rbx, qword [rsp + 0x138]
mov rsi, qword [rsp + 0x238]
cmp rbx, rsi
je 0x1800f4542
mov r8, qword [rbx + 0x10]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800f3f8d
mov rdx, qword [rbx]
movabs r9, 0xcbf29ce484222325
mov rcx, r14
test r8, r8
je 0x1800f3fbd
nop
movzx eax, byte [rcx + rdx]
xor r9, rax
movabs rax, 0x100000001b3
imul r9, rax
inc rcx
cmp rcx, r8
jb 0x1800f3fa0
mov r8, rbx
lea rdx, [rsp + 0xa0]
lea rcx, [0x180230590]
call fcn.180095560
cmp qword [rax + 8], 0
je 0x1800f3fe9
mov rcx, r13
call fcn.1800e4e00
test byte [rax + 0x28], 4
je 0x1800f4015
mov rcx, rbx
call fcn.18006c500
mov rcx, rax
call fcn.1800e1fb0
mov r14d, eax
mov edx, 0x811c9dc5
lea rcx, [0x1801f6cf8]
call fcn.1800e1f90
cmp r14d, eax
jne 0x1800f4041
xor r14d, r14d
mov rcx, r13
call fcn.1800e4e00
lea rcx, [rax + 0x38]
mov rdx, rbx
call fcn.1800e4c60
mov r9, rax
mov rcx, rbx
call fcn.18006c500
mov r8, rax
mov rdx, rdi
call fcn.1800ebfa0
jmp 0x1800f4044
xor r14d, r14d
mov rax, qword [rbx + 0x68]
lea rbx, [rax - 0x60]
test rax, rax
cmove rbx, r14
mov qword [rsp + 0x138], rbx
jmp 0x1800f3f73
lea rcx, [0x180231678]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800f41fa
mov rcx, r13
call fcn.1800e4e30
lea r8, [rax + 0x30]
lea rcx, [rsp + 0x40]
call fcn.1800f75b0
nop
lea rax, [rsp + 0x40]
mov qword [rsp + 0x2f0], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x2f8], rax
vmovups xmm0, xmmword [rsp + 0x2f0]
vmovdqa xmmword [rsp + 0xe0], xmm0
mov rcx, r13
call fcn.1800e4e30
lea rcx, [rax + 0x40]
lea rdx, [rsp + 0xe0]
call fcn.1800f5c10
nop
lea r9, [fcn.180090db0]
mov edx, 0x28
lea r8d, [rdx - 0x27]
lea rcx, [rsp + 0x40]
call fcn.180185154
lea rcx, [r13 + 8]
call fcn.18006c500
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.1800f64b0
nop
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x240]
lea rcx, [rsp + 0xf0]
call fcn.1800f67a0
nop
lea rcx, [rsp + 0x70]
call fcn.180091b30
mov rdi, qword [rsp + 0x240]
test rdi, rdi
je 0x1800f4542
lea rdx, [rsp + 0x140]
mov rcx, rdi
call fcn.1800f6690
lea rdx, [rsp + 0x248]
mov rcx, rdi
call fcn.1800f66c0
mov rsi, qword [rsp + 0x248]
mov rbx, qword [rsp + 0x140]
cmp rbx, rsi
je 0x1800f453f
mov rdx, rbx
lea rcx, [0x180230590]
call fcn.1800e4ec0
test al, al
je 0x1800f4195
mov rcx, r13
call fcn.1800e4e30
test byte [rax + 0x28], 4
je 0x1800f41be
mov rcx, rbx
call fcn.18006c500
mov rcx, rax
call fcn.1800e1fb0
mov r14d, eax
mov edx, 0x811c9dc5
lea rcx, [0x1801f6cf8]
call fcn.1800e1f90
cmp r14d, eax
jne 0x1800f41e8
mov rcx, r13
call fcn.1800e4e30
lea rcx, [rax + 0x40]
mov rdx, rbx
call fcn.1800e4be0
mov r9, rax
mov rcx, rbx
call fcn.18006c500
mov r8, rax
mov rdx, rdi
call fcn.1800ec0a0
lea rcx, [rsp + 0x140]
call fcn.1800f5520
jmp 0x1800f4163
lea rcx, [0x180231628]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800f4397
mov rcx, r13
call fcn.1800e4e60
lea r8, [rax + 0x30]
lea rcx, [rsp + 0x40]
call fcn.1800f75b0
nop
lea rax, [rsp + 0x40]
mov qword [rsp + 0x2e0], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x2e8], rax
vmovups xmm0, xmmword [rsp + 0x2e0]
vmovdqa xmmword [rsp + 0xe0], xmm0
mov rcx, r13
call fcn.1800e4e60
lea rcx, [rax + 0x40]
lea rdx, [rsp + 0xe0]
call fcn.1800f5c10
nop
lea r9, [fcn.180090db0]
mov edx, 0x28
lea r8d, [rdx - 0x27]
lea rcx, [rsp + 0x40]
call fcn.180185154
lea rcx, [r13 + 8]
call fcn.18006c500
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.1800f64b0
nop
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x250]
lea rcx, [rsp + 0xf0]
call fcn.1800f67a0
nop
lea rcx, [rsp + 0x70]
call fcn.180091b30
mov rdi, qword [rsp + 0x250]
test rdi, rdi
je 0x1800f4542
lea rdx, [rsp + 0x148]
mov rcx, rdi
call fcn.1800f6690
lea rdx, [rsp + 0x258]
mov rcx, rdi
call fcn.1800f66c0
mov rsi, qword [rsp + 0x258]
nop dword [rax]
mov rbx, qword [rsp + 0x148]
cmp rbx, rsi
je 0x1800f453f
mov rdx, rbx
lea rcx, [0x180230590]
call fcn.1800e4ec0
test al, al
je 0x1800f4332
mov rcx, r13
call fcn.1800e4e60
test byte [rax + 0x28], 4
je 0x1800f435b
mov rcx, rbx
call fcn.18006c500
mov rcx, rax
call fcn.1800e1fb0
mov r14d, eax
mov edx, 0x811c9dc5
lea rcx, [0x1801f6cf8]
call fcn.1800e1f90
cmp r14d, eax
jne 0x1800f4385
mov rcx, r13
call fcn.1800e4e60
lea rcx, [rax + 0x40]
mov rdx, rbx
call fcn.1800e4ca0
mov r9, rax
mov rcx, rbx
call fcn.18006c500
mov r8, rax
mov rdx, rdi
call fcn.1800ec300
lea rcx, [rsp + 0x148]
call fcn.1800f5520
jmp 0x1800f4300
lea rcx, [0x1802317a0]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800f4542
mov rcx, r13
call fcn.1800e4e90
lea r8, [rax + 0x30]
lea rcx, [rsp + 0x70]
call fcn.1800f7710
nop
lea rax, [rsp + 0x70]
mov qword [rsp + 0x160], rax
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x168], rax
vmovups xmm0, xmmword [rsp + 0x160]
vmovdqa xmmword [rsp + 0xe0], xmm0
mov rcx, r13
call fcn.1800e4e90
lea rcx, [rax + 0x50]
lea rdx, [rsp + 0xe0]
call fcn.1800f5c70
nop
lea r9, [fcn.180090db0]
mov edx, 0x30
lea r8d, [rdx - 0x2f]
lea rcx, [rsp + 0x70]
call fcn.180185154
lea rcx, [r13 + 8]
call fcn.18006c500
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.1800f64b0
nop
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x260]
lea rcx, [rsp + 0xf0]
call fcn.1800f67a0
nop
lea rcx, [rsp + 0x70]
call fcn.180091b30
mov rdi, qword [rsp + 0x260]
test rdi, rdi
je 0x1800f4542
lea rdx, [rsp + 0x150]
mov rcx, rdi
call fcn.1800f6690
lea rdx, [rsp + 0x268]
mov rcx, rdi
call fcn.1800f66c0
mov rsi, qword [rsp + 0x268]
nop dword [rax]
mov rbx, qword [rsp + 0x150]
cmp rbx, rsi
je 0x1800f453f
mov rdx, rbx
lea rcx, [0x180230590]
call fcn.1800e4ec0
test al, al
je 0x1800f44d2
mov rcx, r13
call fcn.1800e4e90
test byte [rax + 0x28], 4
je 0x1800f44fb
mov rcx, rbx
call fcn.18006c500
mov rcx, rax
call fcn.1800e1fb0
mov r14d, eax
mov edx, 0x811c9dc5
lea rcx, [0x1801f6cf8]
call fcn.1800e1f90
cmp r14d, eax
jne 0x1800f4525
mov rcx, r13
call fcn.1800e4e90
lea rcx, [rax + 0x50]
mov rdx, rbx
call fcn.1800e4c00
mov r9, rax
mov rcx, rbx
call fcn.18006c500
mov r8, rax
mov rdx, rdi
call fcn.1800ec5e0
lea rcx, [rsp + 0x150]
call fcn.1800f5520
jmp 0x1800f44a0
mov r15, qword [rsp + 0x4f8]
xor r14d, r14d
add r15, 8
mov rax, qword [rsp + 0x270]
jmp 0x1800f2458
vmovss xmm1, dword [0x18020a348]
call fcn.18017f4a0
mov rcx, qword [rsp + 0x4e0]
add rcx, 0x20
cmp rcx, r12
je 0x1800f458a
mov rdx, r12
cmp qword [r12 + 0x18], 0xf
jbe 0x1800f4580
mov rdx, qword [r12]
mov r8, qword [r12 + 0x10]
call fcn.180091b90
vmovss xmm6, dword [0x18023af34]
mov dword [rsp + 0x4f0], 0xffffffff
mov rax, qword [r12 + 0x10]
movabs rsi, 0x7fffffffffffffff
sub rsi, rax
cmp rsi, 0xe
jb 0x1800f46d1
cmp qword [r12 + 0x18], 0xf
jbe 0x1800f45c5
mov r12, qword [r12]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], 0xe
lea r9, str.Visual_config
lea rcx, [rsp + 0xc0]
call fcn.1800f8990
nop
mov r8d, 7
lea rdx, str._loaded
lea rcx, [rsp + 0xc0]
call fcn.1800a57a0
vmovups ymm0, ymmword [rax]
vmovups ymmword [rsp + 0xa0], ymm0
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
vmovaps xmm3, xmm6
mov r8d, dword [rsp + 0x4f0]
lea rdx, [rsp + 0xa0]
vzeroupper
call fcn.18015fa10
nop
mov rdx, qword [rsp + 0xb8]
cmp rdx, 0xf
jbe 0x1800f4687
inc rdx
mov rcx, qword [rsp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800f4681
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800f4681
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180184c4c
nop
lea rcx, [rsp + 0xc0]
call fcn.180091b30
nop
lea rcx, [rsp + 0xf0]
call fcn.1800f65d0
nop
mov al, 1
jmp 0x1800f46a9
xor al, al
vmovaps xmm6, xmmword [rsp + 0x490]
add rsp, 0x4a0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
call fcn.18006c3e0
nop
call fcn.18006c3e0
nop
call fcn.18006c3e0
int3