Function at 0x1800ecf80
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, 0x490
movaps xmmword [rsp + 0x480], 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 0x1800ef6ba
cmp qword [r9 + 0x18], 0xf
jbe 0x1800ecfd9
mov r9, qword [r9]
mov qword [rsp + 0x30], 1
lea rax, [0x1801fa0bc]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rsp + 0x340]
call fcn.1800f3b00
nop
mov rdx, r12
cmp qword [r12 + 0x18], 0xf
jbe 0x1800ed010
mov rdx, qword [r12]
mov r8, qword [r12 + 0x10]
lea rcx, [rsp + 0x340]
call fcn.1800a0bd0
xorps xmm0, xmm0
movups xmmword [rsp + 0xc0], xmm0
mov qword [rsp + 0xd0], r15
mov qword [rsp + 0xd8], r15
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0xc0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0xd0], xmm1
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 0x1800ed077
mov rdx, qword [rbx]
mov r8, qword [rbx + 0x10]
lea rcx, [rsp + 0xc0]
call fcn.1800a0bd0
xorps xmm0, xmm0
movups xmmword [rsp + 0xa0], xmm0
mov qword [rsp + 0xb0], r15
mov qword [rsp + 0xb8], r15
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0xa0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0xb0], xmm1
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 + 0xf0], rax
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0xf8], rax
call fcn.180180a14
movaps xmm0, xmmword [rsp + 0xf0]
movdqa xmmword [rsp + 0x150], xmm0
lea r8, [rsp + 0x150]
mov edx, eax
lea rcx, [rsp + 0x268]
call fcn.1800e39d0
nop
lea rcx, [rsp + 0x268]
call fcn.1800e4290
movzx edi, al
lea rcx, [rsp + 0x268]
call fcn.1800f13b0
nop
mov rdx, qword [rsp + 0xb8]
cmp rdx, 0xf
jbe 0x1800ed18d
inc rdx
mov rcx, qword [rsp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800ed188
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800ed188
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18017f7ac
mov qword [rsp + 0xb0], r15
mov qword [rsp + 0xb8], 0xf
mov byte [rsp + 0xa0], 0
mov rdx, qword [rsp + 0xd8]
cmp rdx, 0xf
jbe 0x1800ed1ef
inc rdx
mov rcx, qword [rsp + 0xc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800ed1ea
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800ed1ea
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18017f7ac
mov qword [rsp + 0xd0], r15
mov qword [rsp + 0xd8], 0xf
mov byte [rsp + 0xc0], 0
lea rcx, [rsp + 0x340]
call fcn.18008f640
test dil, dil
je 0x1800ef69d
xorps xmm0, xmm0
movups xmmword [rsp + 0x100], xmm0
mov qword [rsp + 0x110], r15
mov qword [rsp + 0x118], 0xf
mov byte [rsp + 0x100], 0
mov ecx, 0x20
call fcn.18017f8d4
mov qword [rsp + 0x4e8], rax
mov rcx, rax
call fcn.1800f3950
nop
mov qword [rsp + 0x120], 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 + 0xf8], rax
lea r9, [r14 + 0x40]
mov rcx, qword [r9 + 0x10]
mov rax, rsi
sub rax, rcx
cmp rax, 9
jb 0x1800ef6c0
cmp qword [r9 + 0x18], 0xf
jbe 0x1800ed29d
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 + 0x268]
call fcn.1800f3b00
nop
mov rdx, r12
cmp qword [r12 + 0x18], 0xf
jbe 0x1800ed2d4
mov rdx, qword [r12]
mov r8, qword [r12 + 0x10]
lea rcx, [rsp + 0x268]
call fcn.1800a0bd0
xorps xmm0, xmm0
movups xmmword [rsp + 0xc0], xmm0
xor r14d, r14d
mov qword [rsp + 0xd0], r14
mov qword [rsp + 0xd8], r14
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0xc0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0xd0], xmm1
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 0x1800ed338
mov rbx, qword [rbx]
mov rdx, rbx
lea rcx, [rsp + 0xc0]
call fcn.1800a0bd0
xorps xmm0, xmm0
movups xmmword [rsp + 0xa0], xmm0
mov qword [rsp + 0xb0], r14
mov qword [rsp + 0xb8], r14
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0xa0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0xb0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rsp + 0xf0]
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0xa0]
call fcn.1800f24a0
nop
mov rdx, qword [rsp + 0xb8]
cmp rdx, 0xf
jbe 0x1800ed3ed
inc rdx
mov rcx, qword [rsp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800ed3e8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800ed3e8
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18017f7ac
mov qword [rsp + 0xb0], r14
mov qword [rsp + 0xb8], 0xf
mov byte [rsp + 0xa0], 0
mov rdx, qword [rsp + 0xd8]
cmp rdx, 0xf
jbe 0x1800ed44f
inc rdx
mov rcx, qword [rsp + 0xc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800ed44a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800ed44a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18017f7ac
mov qword [rsp + 0xd0], r14
mov qword [rsp + 0xd8], 0xf
mov byte [rsp + 0xc0], 0
lea rcx, [rsp + 0x268]
call fcn.18008f640
nop
mov rcx, qword [rsp + 0xf8]
test rcx, rcx
je 0x1800ed4a2
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x1800ed4a2
mov rcx, qword [rax]
mov r8, qword [rcx]
mov edx, 1
mov rcx, rax
call r8
mov r15, qword [0x180225990]
mov rax, qword [0x180225998]
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0x4e8], r15
cmp r15, rax
je 0x1800ef543
mov r13, qword [r15]
mov eax, dword [r13 + 0x28]
and al, 3
cmp al, 1
jne 0x1800ef532
lea rcx, [0x180229790]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800ed882
lea rcx, [0x180229790]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
cmovne rcx, r14
xorps xmm0, xmm0
movups xmmword [rsp + 0x1d8], xmm0
mov qword [rsp + 0x1e8], 7
mov qword [rsp + 0x1f0], 0xf
mov rax, qword [0x1801f1c68]
mov dword [rsp + 0x1d8], eax
movzx eax, word [0x1801f1c6c]
mov word [rsp + 0x1dc], ax
movzx eax, byte [0x1801f1c6e]
mov byte [rsp + 0x1de], al
mov byte [rsp + 0x1df], 0
movzx eax, byte [rcx + 0x30]
mov byte [rsp + 0x1f8], al
lea rcx, [0x180229790]
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.1800a4780
lea rsi, [rsp + 0x200]
lea rbx, [rsp + 0x1d8]
nop dword [rax + rax]
cmp rbx, rsi
je 0x1800ed5bf
mov r8, rbx
lea rdx, [rsp + 0x440]
lea rcx, [rdi + 0x38]
call fcn.1800f6430
add rbx, 0x28
jmp 0x1800ed5a0
lea r9, [fcn.18008e910]
mov edx, 0x28
mov r8d, 1
lea rcx, [rsp + 0x1d8]
call fcn.18017fcb4
lea rdx, [r13 + 8]
cmp qword [rdx + 0x18], 0xf
jbe 0x1800ed5ec
mov rdx, qword [rdx]
xorps xmm0, xmm0
movups 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 0x1800ed605
lea rcx, [rsp + 0x40]
call fcn.1800916b0
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.18008f2b0
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x90], al
lea rcx, [rsp + 0x70]
cmp qword [rsp + 0x88], 0xf
cmova rcx, qword [rsp + 0x70]
lea rax, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rax, qword [rsp + 0x40]
sub rcx, rax
add rcx, qword [rsp + 0x68]
mov qword [rsp + 0x98], rcx
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x100]
call fcn.1800f4950
mov rsi, rax
test rax, rax
jne 0x1800ed6a1
mov rsi, r14
lea rcx, [rsp + 0x70]
call fcn.18008f640
nop
lea rcx, [rsp + 0x40]
call fcn.18008f640
test rsi, rsi
je 0x1800ef532
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 [0x1801f1c68]
xor r15d, r15d
nop dword [rax]
cmp rbx, r14
je 0x1800ef527
mov r8, qword [rbx + 0x10]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800ed71a
mov rdx, qword [rbx]
movabs r9, 0xcbf29ce484222325
mov rcx, r15
test r8, r8
je 0x1800ed74d
nop dword [rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
movabs rax, 0x100000001b3
imul r9, rax
inc rcx
cmp rcx, r8
jb 0x1800ed730
mov r8, rbx
lea rdx, [rsp + 0x430]
lea rcx, [0x180228550]
call fcn.180092ff0
cmp qword [rax + 8], 0
je 0x1800ed794
lea rcx, [0x180229790]
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 0x1800ed81f
mov rdi, qword [0x1801f1c68]
mov r15, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800ed7a1
mov r15, qword [rbx]
test dil, dil
jne 0x1800ed7ae
mov r9d, 0x811c9dc5
jmp 0x1800ed7cc
movsx eax, dil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x1801f1c69]
call fcn.1800dd4d0
mov r9d, eax
mov rcx, 0xffffffffffffffff
mov r8d, 0x811c9dc5
nop dword [rax]
inc rcx
cmp byte [r15 + rcx], 0
jne 0x1800ed7e0
xor eax, eax
mov edx, eax
test rcx, rcx
je 0x1800ed817
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 0x1800ed800
xor r15d, r15d
cmp r8d, r9d
jne 0x1800ed86e
lea rcx, [0x180229790]
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 + 0x420]
call fcn.1800e22c0
mov r9, qword [rax]
add r9, 0x30
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800ed85f
mov r8, qword [rbx]
mov rdx, rsi
call fcn.1800e6170
mov rdi, qword [0x1801f1c68]
mov rax, qword [rbx + 0x68]
lea rbx, [rax - 0x60]
test rax, rax
cmove rbx, r15
jmp 0x1800ed700
lea rcx, [0x1802295f8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800edc30
lea rcx, [0x1802295f8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
cmovne rcx, r14
xorps xmm0, xmm0
movups xmmword [rsp + 0x200], xmm0
mov qword [rsp + 0x210], 7
mov qword [rsp + 0x218], 0xf
mov rax, qword [0x1801f1c68]
mov dword [rsp + 0x200], eax
movzx eax, word [0x1801f1c6c]
mov word [rsp + 0x204], ax
movzx eax, byte [0x1801f1c6e]
mov byte [rsp + 0x206], al
mov byte [rsp + 0x207], 0
mov eax, dword [rcx + 0x30]
mov dword [rsp + 0x220], eax
lea rcx, [0x1802295f8]
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.1800a4780
lea rsi, [rsp + 0x228]
lea rbx, [rsp + 0x200]
cmp rbx, rsi
je 0x1800ed961
mov r8, rbx
lea rdx, [rsp + 0x410]
lea rcx, [rdi + 0x38]
call fcn.1800f61b0
add rbx, 0x28
jmp 0x1800ed942
lea r9, [fcn.18008e910]
mov edx, 0x28
mov r8d, 1
lea rcx, [rsp + 0x200]
call fcn.18017fcb4
lea rdx, [r13 + 8]
cmp qword [rdx + 0x18], 0xf
jbe 0x1800ed98e
mov rdx, qword [rdx]
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r14
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x1800ed9b0
lea rcx, [rsp + 0x40]
call fcn.1800916b0
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.18008f2b0
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 + 0x100]
call fcn.1800f4950
mov rsi, rax
test rax, rax
jne 0x1800eda4f
mov rsi, r14
lea rcx, [rsp + 0x70]
call fcn.18008f640
nop
lea rcx, [rsp + 0x40]
call fcn.18008f640
test rsi, rsi
je 0x1800ef532
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 [0x1801f1c68]
xor eax, eax
cmp rbx, r14
je 0x1800ef527
mov r8, qword [rbx + 0x10]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800edac0
mov rdx, qword [rbx]
movabs r9, 0xcbf29ce484222325
mov rcx, rax
test r8, r8
je 0x1800edaef
movzx eax, byte [rcx + rdx]
xor r9, rax
movabs rax, 0x100000001b3
imul r9, rax
inc rcx
cmp rcx, r8
jb 0x1800edad2
mov r8, rbx
lea rdx, [rsp + 0x400]
lea rcx, [0x180228550]
call fcn.180092ff0
cmp qword [rax + 8], 0
je 0x1800edb3d
lea rcx, [0x1802295f8]
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 0x1800edbc3
mov rdi, qword [0x1801f1c68]
jmp 0x1800edb3f
xor eax, eax
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800edb4c
mov r8, qword [rbx]
mov rcx, 0xffffffffffffffff
mov r15d, 0x811c9dc5
nop dword [rax]
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1800edb60
mov rdx, rax
test rcx, rcx
je 0x1800edb97
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [r8 + rdx]
xor eax, r15d
imul r15d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x1800edb80
test dil, dil
jne 0x1800edba3
mov eax, 0x811c9dc5
jmp 0x1800edbbe
movsx eax, dil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x1801f1c69]
call fcn.1800dd4d0
cmp r15d, eax
jne 0x1800edc17
lea rcx, [0x1802295f8]
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 + 0x450]
call fcn.1800e1db0
mov r9, qword [rax]
add r9, 0x30
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800edc08
mov r8, qword [rbx]
mov rdx, rsi
call fcn.1800e6210
mov rdi, qword [0x1801f1c68]
mov rax, qword [rbx + 0x68]
lea rbx, [rax - 0x60]
test rax, rax
mov eax, 0
cmove rbx, rax
jmp 0x1800edaa6
lea rcx, [0x1802295e0]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800edfe0
lea rcx, [0x1802295e0]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
cmovne rcx, r14
xorps xmm0, xmm0
movups xmmword [rsp + 0x1b0], xmm0
mov qword [rsp + 0x1c0], 7
mov qword [rsp + 0x1c8], 0xf
mov rax, qword [0x1801f1c68]
mov dword [rsp + 0x1b0], eax
movzx eax, word [0x1801f1c6c]
mov word [rsp + 0x1b4], ax
movzx eax, byte [0x1801f1c6e]
mov byte [rsp + 0x1b6], al
mov byte [rsp + 0x1b7], 0
movss xmm0, dword [rcx + 0x30]
movss dword [rsp + 0x1d0], xmm0
lea rcx, [0x1802295e0]
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.1800a4780
lea rsi, [rsp + 0x1d8]
lea rbx, [rsp + 0x1b0]
cmp rbx, rsi
je 0x1800edd13
mov r8, rbx
lea rdx, [rsp + 0x460]
lea rcx, [rdi + 0x38]
call fcn.1800f61b0
add rbx, 0x28
jmp 0x1800edcf4
lea r9, [fcn.18008e910]
mov edx, 0x28
mov r8d, 1
lea rcx, [rsp + 0x1b0]
call fcn.18017fcb4
lea rdx, [r13 + 8]
cmp qword [rdx + 0x18], 0xf
jbe 0x1800edd40
mov rdx, qword [rdx]
xorps xmm0, xmm0
movups 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 0x1800edd60
lea rcx, [rsp + 0x40]
call fcn.1800916b0
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.18008f2b0
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x90], al
lea rcx, [rsp + 0x70]
cmp qword [rsp + 0x88], 0xf
cmova rcx, qword [rsp + 0x70]
lea rax, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rax, qword [rsp + 0x40]
sub rcx, rax
add rcx, qword [rsp + 0x68]
mov qword [rsp + 0x98], rcx
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x100]
call fcn.1800f4950
mov rsi, rax
test rax, rax
jne 0x1800eddfc
mov rsi, r14
lea rcx, [rsp + 0x70]
call fcn.18008f640
nop
lea rcx, [rsp + 0x40]
call fcn.18008f640
test rsi, rsi
je 0x1800ef532
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 [0x1801f1c68]
xor eax, eax
cmp rbx, r14
je 0x1800ef527
mov r8, qword [rbx + 0x10]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800ede6d
mov rdx, qword [rbx]
movabs r9, 0xcbf29ce484222325
mov rcx, rax
test r8, r8
je 0x1800ede9d
nop
movzx eax, byte [rdx + rcx]
xor r9, rax
movabs rax, 0x100000001b3
imul r9, rax
inc rcx
cmp rcx, r8
jb 0x1800ede80
mov r8, rbx
lea rdx, [rsp + 0x470]
lea rcx, [0x180228550]
call fcn.180092ff0
cmp qword [rax + 8], 0
je 0x1800edeeb
lea rcx, [0x1802295e0]
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 0x1800edf73
mov rdi, qword [0x1801f1c68]
jmp 0x1800edeed
xor eax, eax
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800edefa
mov r8, qword [rbx]
mov rcx, 0xffffffffffffffff
mov r15d, 0x811c9dc5
nop word [rax + rax]
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1800edf10
mov rdx, rax
test rcx, rcx
je 0x1800edf47
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [r8 + rdx]
xor eax, r15d
imul r15d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x1800edf30
test dil, dil
jne 0x1800edf53
mov eax, 0x811c9dc5
jmp 0x1800edf6e
movsx eax, dil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x1801f1c69]
call fcn.1800dd4d0
cmp r15d, eax
jne 0x1800edfc7
lea rcx, [0x1802295e0]
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 + 0x360]
call fcn.1800e1db0
mov r9, qword [rax]
add r9, 0x30
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800edfb8
mov r8, qword [rbx]
mov rdx, rsi
call fcn.1800e6360
mov rdi, qword [0x1801f1c68]
mov rax, qword [rbx + 0x68]
lea rbx, [rax - 0x60]
test rax, rax
mov eax, 0
cmove rbx, rax
jmp 0x1800ede53
lea rcx, [0x1802297a8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800ee390
lea rcx, [0x1802297a8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
cmovne rcx, r14
xorps xmm0, xmm0
movups xmmword [rsp + 0x188], xmm0
mov qword [rsp + 0x198], 7
mov qword [rsp + 0x1a0], 0xf
mov rax, qword [0x1801f1c68]
mov dword [rsp + 0x188], eax
movzx eax, word [0x1801f1c6c]
mov word [rsp + 0x18c], ax
movzx eax, byte [0x1801f1c6e]
mov byte [rsp + 0x18e], al
mov byte [rsp + 0x18f], 0
mov rax, qword [rcx + 0x30]
mov qword [rsp + 0x1a8], rax
lea rcx, [0x1802297a8]
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.1800a4780
lea rsi, [rsp + 0x1b0]
lea rbx, [rsp + 0x188]
cmp rbx, rsi
je 0x1800ee0c1
mov r8, rbx
lea rdx, [rsp + 0x370]
lea rcx, [rdi + 0x40]
call fcn.1800f5a20
add rbx, 0x28
jmp 0x1800ee0a2
lea r9, [fcn.18008e910]
mov edx, 0x28
mov r8d, 1
lea rcx, [rsp + 0x188]
call fcn.18017fcb4
lea rdx, [r13 + 8]
cmp qword [rdx + 0x18], 0xf
jbe 0x1800ee0ee
mov rdx, qword [rdx]
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r14
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x1800ee110
lea rcx, [rsp + 0x40]
call fcn.1800916b0
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.18008f2b0
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 + 0x100]
call fcn.1800f4950
mov rsi, rax
test rax, rax
jne 0x1800ee1af
mov rsi, r14
lea rcx, [rsp + 0x70]
call fcn.18008f640
nop
lea rcx, [rsp + 0x40]
call fcn.18008f640
test rsi, rsi
je 0x1800ef532
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 [0x1801f1c68]
xor eax, eax
cmp rbx, r14
je 0x1800ef527
mov r8, qword [rbx + 0x10]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800ee220
mov rdx, qword [rbx]
movabs r9, 0xcbf29ce484222325
mov rcx, rax
test r8, r8
je 0x1800ee24f
movzx eax, byte [rdx + rcx]
xor r9, rax
movabs rax, 0x100000001b3
imul r9, rax
inc rcx
cmp rcx, r8
jb 0x1800ee232
mov r8, rbx
lea rdx, [rsp + 0x380]
lea rcx, [0x180228550]
call fcn.180092ff0
cmp qword [rax + 8], 0
je 0x1800ee29d
lea rcx, [0x1802297a8]
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 0x1800ee323
mov rdi, qword [0x1801f1c68]
jmp 0x1800ee29f
xor eax, eax
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800ee2ac
mov r8, qword [rbx]
mov rcx, 0xffffffffffffffff
mov r15d, 0x811c9dc5
nop dword [rax]
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1800ee2c0
mov rdx, rax
test rcx, rcx
je 0x1800ee2f7
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [r8 + rdx]
xor eax, r15d
imul r15d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x1800ee2e0
test dil, dil
jne 0x1800ee303
mov eax, 0x811c9dc5
jmp 0x1800ee31e
movsx eax, dil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x1801f1c69]
call fcn.1800dd4d0
cmp r15d, eax
jne 0x1800ee377
lea rcx, [0x1802297a8]
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 + 0x390]
call fcn.1800e18b0
mov r9, qword [rax]
add r9, 0x30
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800ee368
mov r8, qword [rbx]
mov rdx, rsi
call fcn.1800e64b0
mov rdi, qword [0x1801f1c68]
mov rax, qword [rbx + 0x68]
lea rbx, [rax - 0x60]
test rax, rax
mov eax, 0
cmove rbx, rax
jmp 0x1800ee206
lea rcx, [0x180229a70]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800ee750
lea rcx, [0x180229a70]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r13
cmp rax, qword [r13]
cmovne rcx, r14
xorps xmm0, xmm0
movups xmmword [rsp + 0x160], xmm0
mov qword [rsp + 0x170], 7
mov qword [rsp + 0x178], 0xf
mov rax, qword [0x1801f1c68]
mov dword [rsp + 0x160], eax
movzx eax, word [0x1801f1c6c]
mov word [rsp + 0x164], ax
movzx eax, byte [0x1801f1c6e]
mov byte [rsp + 0x166], al
mov byte [rsp + 0x167], 0
movss xmm0, dword [rcx + 0x30]
movss dword [rsp + 0x180], xmm0
movss xmm1, dword [rcx + 0x34]
movss dword [rsp + 0x184], xmm1
lea rcx, [0x180229a70]
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.1800a4780
lea rsi, [rsp + 0x188]
lea rbx, [rsp + 0x160]
cmp rbx, rsi
je 0x1800ee481
mov r8, rbx
lea rdx, [rsp + 0x3a0]
lea rcx, [rdi + 0x40]
call fcn.1800f57a0
add rbx, 0x28
jmp 0x1800ee462
lea r9, [fcn.18008e910]
mov edx, 0x28
mov r8d, 1
lea rcx, [rsp + 0x160]
call fcn.18017fcb4
lea rdx, [r13 + 8]
cmp qword [rdx + 0x18], 0xf
jbe 0x1800ee4ae
mov rdx, qword [rdx]
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r14
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x1800ee4d0
lea rcx, [rsp + 0x40]
call fcn.1800916b0
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.18008f2b0
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 + 0x100]
call fcn.1800f4950
mov rsi, rax
test rax, rax
jne 0x1800ee56f
mov rsi, r14
lea rcx, [rsp + 0x70]
call fcn.18008f640
nop
lea rcx, [rsp + 0x40]
call fcn.18008f640
test rsi, rsi
je 0x1800ef532
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 [0x1801f1c68]
xor eax, eax
cmp rbx, r14
je 0x1800ef527
mov r8, qword [rbx + 0x10]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800ee5e0
mov rdx, qword [rbx]
movabs r9, 0xcbf29ce484222325
mov rcx, rax
test r8, r8
je 0x1800ee60f
movzx eax, byte [rdx + rcx]
xor r9, rax
movabs rax, 0x100000001b3
imul r9, rax
inc rcx
cmp rcx, r8
jb 0x1800ee5f2
mov r8, rbx
lea rdx, [rsp + 0x3b0]
lea rcx, [0x180228550]
call fcn.180092ff0
cmp qword [rax + 8], 0
je 0x1800ee65d
lea rcx, [0x180229a70]
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 0x1800ee6e3
mov rdi, qword [0x1801f1c68]
jmp 0x1800ee65f
xor eax, eax
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800ee66c
mov r8, qword [rbx]
mov rcx, 0xffffffffffffffff
mov r15d, 0x811c9dc5
nop dword [rax]
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1800ee680
mov rdx, rax
test rcx, rcx
je 0x1800ee6b7
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [r8 + rdx]
xor eax, r15d
imul r15d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x1800ee6a0
test dil, dil
jne 0x1800ee6c3
mov eax, 0x811c9dc5
jmp 0x1800ee6de
movsx eax, dil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x1801f1c69]
call fcn.1800dd4d0
cmp r15d, eax
jne 0x1800ee737
lea rcx, [0x180229a70]
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 + 0x3c0]
call fcn.1800e0b50
mov r9, qword [rax]
add r9, 0x30
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800ee728
mov r8, qword [rbx]
mov rdx, rsi
call fcn.1800e67b0
mov rdi, qword [0x1801f1c68]
mov rax, qword [rbx + 0x68]
lea rbx, [rax - 0x60]
test rax, rax
mov eax, 0
cmove rbx, rax
jmp 0x1800ee5c6
lea rcx, [0x180229738]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800eeb00
lea rcx, [0x180229738]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rdx, r13
cmp rax, qword [r13]
cmovne rdx, r14
xorps xmm0, xmm0
movups xmmword [rsp + 0x300], xmm0
mov qword [rsp + 0x310], 7
mov qword [rsp + 0x318], 0xf
mov rax, qword [0x1801f1c68]
mov dword [rsp + 0x300], eax
movzx eax, word [0x1801f1c6c]
mov word [rsp + 0x304], ax
movzx eax, byte [0x1801f1c6e]
mov byte [rsp + 0x306], al
mov byte [rsp + 0x307], 0
add rdx, 0x30
lea rcx, [rsp + 0x320]
call fcn.18008f2b0
nop
lea rcx, [0x180229738]
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.1800a4a00
lea rsi, [rsp + 0x340]
lea rbx, [rsp + 0x300]
cmp rbx, rsi
je 0x1800ee837
mov r8, rbx
lea rdx, [rsp + 0x3d0]
lea rcx, [rdi + 0x70]
call fcn.1800f66b0
add rbx, 0x40
jmp 0x1800ee818
lea r9, [0x1800a56e0]
mov edx, 0x40
mov r8d, 1
lea rcx, [rsp + 0x300]
call fcn.18017fcb4
lea rdx, [r13 + 8]
cmp qword [rdx + 0x18], 0xf
jbe 0x1800ee864
mov rdx, qword [rdx]
xorps xmm0, xmm0
movups 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 0x1800ee880
lea rcx, [rsp + 0x40]
call fcn.1800916b0
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.18008f2b0
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 + 0x100]
call fcn.1800f4950
mov rsi, rax
test rax, rax
jne 0x1800ee91f
mov rsi, r14
lea rcx, [rsp + 0x70]
call fcn.18008f640
nop
lea rcx, [rsp + 0x40]
call fcn.18008f640
test rsi, rsi
je 0x1800ef532
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 [0x1801f1c68]
xor eax, eax
cmp rbx, r14
je 0x1800ef527
mov r8, qword [rbx + 0x10]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800ee990
mov rdx, qword [rbx]
movabs r9, 0xcbf29ce484222325
mov rcx, rax
test r8, r8
je 0x1800ee9bf
movzx eax, byte [rdx + rcx]
xor r9, rax
movabs rax, 0x100000001b3
imul r9, rax
inc rcx
cmp rcx, r8
jb 0x1800ee9a2
mov r8, rbx
lea rdx, [rsp + 0x3e0]
lea rcx, [0x180228550]
call fcn.180092ff0
cmp qword [rax + 8], 0
je 0x1800eea0d
lea rcx, [0x180229738]
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 0x1800eea93
mov rdi, qword [0x1801f1c68]
jmp 0x1800eea0f
xor eax, eax
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800eea1c
mov r8, qword [rbx]
mov rcx, 0xffffffffffffffff
mov r15d, 0x811c9dc5
nop dword [rax]
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1800eea30
mov rdx, rax
test rcx, rcx
je 0x1800eea67
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 0x1800eea50
test dil, dil
jne 0x1800eea73
mov eax, 0x811c9dc5
jmp 0x1800eea8e
movsx eax, dil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x1801f1c69]
call fcn.1800dd4d0
cmp r15d, eax
jne 0x1800eeae7
lea rcx, [0x180229738]
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 + 0x3f0]
call fcn.1800e2540
mov r9, qword [rax]
add r9, 0x30
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800eead8
mov r8, qword [rbx]
mov rdx, rsi
call fcn.1800e6ac0
mov rdi, qword [0x1801f1c68]
mov rax, qword [rbx + 0x68]
lea rbx, [rax - 0x60]
test rax, rax
mov eax, 0
cmove rbx, rax
jmp 0x1800ee976
lea rcx, [0x180229638]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800eee58
mov rcx, r13
call fcn.1800e0310
lea rdx, [rax + 0x30]
xorps xmm0, xmm0
movups xmmword [rsp + 0x298], xmm0
mov qword [rsp + 0x2a8], 7
mov qword [rsp + 0x2b0], 0xf
mov rax, qword [0x1801f1c68]
mov dword [rsp + 0x298], eax
movzx eax, word [0x1801f1c6c]
mov word [rsp + 0x29c], ax
movzx eax, byte [0x1801f1c6e]
mov byte [rsp + 0x29e], al
mov byte [rsp + 0x29f], 0
lea rcx, [rsp + 0x2b8]
call fcn.1800f3a40
nop
lea rcx, [0x180229638]
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.1800a4920
lea rsi, [rsp + 0x2d0]
lea rbx, [rsp + 0x298]
cmp rbx, rsi
je 0x1800eebd7
mov r8, rbx
lea rdx, [rsp + 0x340]
lea rcx, [rdi + 0x60]
call fcn.1800f5f20
add rbx, 0x38
jmp 0x1800eebb8
lea r9, [0x1800a56c0]
mov edx, 0x38
mov r8d, 1
lea rcx, [rsp + 0x298]
call fcn.18017fcb4
lea rdx, [r13 + 8]
cmp qword [rdx + 0x18], 0xf
jbe 0x1800eec04
mov rdx, qword [rdx]
xorps xmm0, xmm0
movups 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 0x1800eec20
lea rcx, [rsp + 0x40]
call fcn.1800916b0
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 r8, [rsp + 0x40]
lea rdx, [rsp + 0x288]
lea rcx, [rsp + 0x100]
call fcn.1800f1910
nop
lea rcx, [rsp + 0x40]
call fcn.18008f640
mov rsi, qword [rsp + 0x288]
test rsi, rsi
je 0x1800ef532
lea rdx, [rsp + 0x128]
mov rcx, rsi
call fcn.1800f1800
lea rdx, [rsp + 0x290]
mov rcx, rsi
call fcn.1800f1830
mov rdi, qword [0x1801f1c68]
mov rbx, qword [rsp + 0x128]
mov r14, qword [rsp + 0x290]
xor eax, eax
nop
cmp rbx, r14
je 0x1800ef527
mov r8, qword [rbx + 0x10]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800eecda
mov rdx, qword [rbx]
movabs r9, 0xcbf29ce484222325
mov rcx, rax
test r8, r8
je 0x1800eed0d
nop dword [rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
movabs rax, 0x100000001b3
imul r9, rax
inc rcx
cmp rcx, r8
jb 0x1800eecf0
mov r8, rbx
lea rdx, [rsp + 0x268]
lea rcx, [0x180228550]
call fcn.180092ff0
cmp qword [rax + 8], 0
je 0x1800eed5b
lea rcx, [0x180229638]
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 0x1800eede3
mov rdi, qword [0x1801f1c68]
jmp 0x1800eed5d
xor eax, eax
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800eed6a
mov r8, qword [rbx]
mov rcx, 0xffffffffffffffff
mov r15d, 0x811c9dc5
nop word [rax + rax]
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1800eed80
mov rdx, rax
test rcx, rcx
je 0x1800eedb7
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 0x1800eeda0
test dil, dil
jne 0x1800eedc3
mov eax, 0x811c9dc5
jmp 0x1800eedde
movsx eax, dil
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
lea rcx, [0x1801f1c69]
call fcn.1800dd4d0
cmp r15d, eax
jne 0x1800eee37
lea rcx, [0x180229638]
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.1800e1630
mov r9, qword [rax]
add r9, 0x30
mov r8, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800eee28
mov r8, qword [rbx]
mov rdx, rsi
call fcn.1800e6c20
mov rdi, qword [0x1801f1c68]
mov rax, qword [rbx + 0x68]
lea rbx, [rax - 0x60]
test rax, rax
mov eax, 0
cmove rbx, rax
mov qword [rsp + 0x128], rbx
jmp 0x1800eecc0
lea rcx, [0x1802296e8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800ef050
mov rcx, r13
call fcn.1800e0340
lea r8, [rax + 0x30]
lea rcx, [rsp + 0x40]
call fcn.1800f26f0
nop
lea rax, [rsp + 0x40]
mov qword [rsp + 0x2f0], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x2f8], rax
movaps xmm0, xmmword [rsp + 0x2f0]
movdqa xmmword [rsp + 0xe0], xmm0
mov rcx, r13
call fcn.1800e0340
lea rcx, [rax + 0x38]
lea rdx, [rsp + 0xe0]
call fcn.1800f0ea0
nop
lea r9, [fcn.18008e910]
mov edx, 0x28
mov r8d, 1
lea rcx, [rsp + 0x40]
call fcn.18017fcb4
lea rcx, [r13 + 8]
call fcn.18006a7b0
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.1800f1610
nop
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x228]
lea rcx, [rsp + 0x100]
call fcn.1800f1910
nop
lea rcx, [rsp + 0x70]
call fcn.18008f640
mov rdi, qword [rsp + 0x228]
test rdi, rdi
je 0x1800ef532
lea rdx, [rsp + 0x130]
mov rcx, rdi
call fcn.1800f1800
lea rdx, [rsp + 0x230]
mov rcx, rdi
call fcn.1800f1830
mov rbx, qword [rsp + 0x130]
mov rsi, qword [rsp + 0x230]
cmp rbx, rsi
je 0x1800ef532
mov r8, qword [rbx + 0x10]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1800eef7e
mov rdx, qword [rbx]
movabs r9, 0xcbf29ce484222325
mov rcx, r14
test r8, r8
je 0x1800eefad
movzx eax, byte [rdx + rcx]
xor r9, rax
movabs rax, 0x100000001b3
imul r9, rax
inc rcx
cmp rcx, r8
jb 0x1800eef90
mov r8, rbx
lea rdx, [rsp + 0xa0]
lea rcx, [0x180228550]
call fcn.180092ff0
cmp qword [rax + 8], 0
je 0x1800eefd9
mov rcx, r13
call fcn.1800e0340
test byte [rax + 0x28], 4
je 0x1800ef005
mov rcx, rbx
call fcn.18006a7b0
mov rcx, rax
call fcn.1800dd4f0
mov r14d, eax
mov edx, 0x811c9dc5
lea rcx, [0x1801f1c68]
call fcn.1800dd4d0
cmp r14d, eax
jne 0x1800ef031
xor r14d, r14d
mov rcx, r13
call fcn.1800e0340
lea rcx, [rax + 0x38]
mov rdx, rbx
call fcn.1800e01a0
mov r9, rax
mov rcx, rbx
call fcn.18006a7b0
mov r8, rax
mov rdx, rdi
call fcn.1800e7030
jmp 0x1800ef034
xor r14d, r14d
mov rax, qword [rbx + 0x68]
lea rbx, [rax - 0x60]
test rax, rax
cmove rbx, r14
mov qword [rsp + 0x130], rbx
jmp 0x1800eef64
lea rcx, [0x180229610]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800ef1eb
mov rcx, r13
call fcn.1800e0370
lea r8, [rax + 0x30]
lea rcx, [rsp + 0x40]
call fcn.1800f2740
nop
lea rax, [rsp + 0x40]
mov qword [rsp + 0x2e0], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x2e8], rax
movaps xmm0, xmmword [rsp + 0x2e0]
movdqa xmmword [rsp + 0xe0], xmm0
mov rcx, r13
call fcn.1800e0370
lea rcx, [rax + 0x40]
lea rdx, [rsp + 0xe0]
call fcn.1800f0d80
nop
lea r9, [fcn.18008e910]
mov edx, 0x28
mov r8d, 1
lea rcx, [rsp + 0x40]
call fcn.18017fcb4
lea rcx, [r13 + 8]
call fcn.18006a7b0
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.1800f1610
nop
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x238]
lea rcx, [rsp + 0x100]
call fcn.1800f1910
nop
lea rcx, [rsp + 0x70]
call fcn.18008f640
mov rdi, qword [rsp + 0x238]
test rdi, rdi
je 0x1800ef532
lea rdx, [rsp + 0x138]
mov rcx, rdi
call fcn.1800f1800
lea rdx, [rsp + 0x240]
mov rcx, rdi
call fcn.1800f1830
mov rsi, qword [rsp + 0x240]
mov rbx, qword [rsp + 0x138]
cmp rbx, rsi
je 0x1800ef52f
mov rdx, rbx
lea rcx, [0x180228550]
call fcn.1800e0400
test al, al
je 0x1800ef186
mov rcx, r13
call fcn.1800e0370
test byte [rax + 0x28], 4
je 0x1800ef1af
mov rcx, rbx
call fcn.18006a7b0
mov rcx, rax
call fcn.1800dd4f0
mov r14d, eax
mov edx, 0x811c9dc5
lea rcx, [0x1801f1c68]
call fcn.1800dd4d0
cmp r14d, eax
jne 0x1800ef1d9
mov rcx, r13
call fcn.1800e0370
lea rcx, [rax + 0x40]
mov rdx, rbx
call fcn.1800e0120
mov r9, rax
mov rcx, rbx
call fcn.18006a7b0
mov r8, rax
mov rdx, rdi
call fcn.1800e7120
lea rcx, [rsp + 0x138]
call fcn.1800f06a0
jmp 0x1800ef154
lea rcx, [0x1802295c0]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800ef387
mov rcx, r13
call fcn.1800e03a0
lea r8, [rax + 0x30]
lea rcx, [rsp + 0x40]
call fcn.1800f2740
nop
lea rax, [rsp + 0x40]
mov qword [rsp + 0x2d0], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x2d8], rax
movaps xmm0, xmmword [rsp + 0x2d0]
movdqa xmmword [rsp + 0xe0], xmm0
mov rcx, r13
call fcn.1800e03a0
lea rcx, [rax + 0x40]
lea rdx, [rsp + 0xe0]
call fcn.1800f0d80
nop
lea r9, [fcn.18008e910]
mov edx, 0x28
mov r8d, 1
lea rcx, [rsp + 0x40]
call fcn.18017fcb4
lea rcx, [r13 + 8]
call fcn.18006a7b0
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.1800f1610
nop
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x248]
lea rcx, [rsp + 0x100]
call fcn.1800f1910
nop
lea rcx, [rsp + 0x70]
call fcn.18008f640
mov rdi, qword [rsp + 0x248]
test rdi, rdi
je 0x1800ef532
lea rdx, [rsp + 0x140]
mov rcx, rdi
call fcn.1800f1800
lea rdx, [rsp + 0x250]
mov rcx, rdi
call fcn.1800f1830
mov rsi, qword [rsp + 0x250]
nop
mov rbx, qword [rsp + 0x140]
cmp rbx, rsi
je 0x1800ef52f
mov rdx, rbx
lea rcx, [0x180228550]
call fcn.1800e0400
test al, al
je 0x1800ef322
mov rcx, r13
call fcn.1800e03a0
test byte [rax + 0x28], 4
je 0x1800ef34b
mov rcx, rbx
call fcn.18006a7b0
mov rcx, rax
call fcn.1800dd4f0
mov r14d, eax
mov edx, 0x811c9dc5
lea rcx, [0x1801f1c68]
call fcn.1800dd4d0
cmp r14d, eax
jne 0x1800ef375
mov rcx, r13
call fcn.1800e03a0
lea rcx, [rax + 0x40]
mov rdx, rbx
call fcn.1800e01e0
mov r9, rax
mov rcx, rbx
call fcn.18006a7b0
mov r8, rax
mov rdx, rdi
call fcn.1800e7380
lea rcx, [rsp + 0x140]
call fcn.1800f06a0
jmp 0x1800ef2f0
lea rcx, [0x180229708]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r13], rax
jne 0x1800ef532
mov rcx, r13
call fcn.1800e03d0
lea r8, [rax + 0x30]
lea rcx, [rsp + 0x70]
call fcn.1800f28a0
nop
lea rax, [rsp + 0x70]
mov qword [rsp + 0x150], rax
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x158], rax
movaps xmm0, xmmword [rsp + 0x150]
movdqa xmmword [rsp + 0xe0], xmm0
mov rcx, r13
call fcn.1800e03d0
lea rcx, [rax + 0x50]
lea rdx, [rsp + 0xe0]
call fcn.1800f0de0
nop
lea r9, [fcn.18008e910]
mov edx, 0x30
mov r8d, 1
lea rcx, [rsp + 0x70]
call fcn.18017fcb4
lea rcx, [r13 + 8]
call fcn.18006a7b0
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.1800f1610
nop
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x258]
lea rcx, [rsp + 0x100]
call fcn.1800f1910
nop
lea rcx, [rsp + 0x70]
call fcn.18008f640
mov rdi, qword [rsp + 0x258]
test rdi, rdi
je 0x1800ef532
lea rdx, [rsp + 0x148]
mov rcx, rdi
call fcn.1800f1800
lea rdx, [rsp + 0x260]
mov rcx, rdi
call fcn.1800f1830
mov rsi, qword [rsp + 0x260]
nop
mov rbx, qword [rsp + 0x148]
cmp rbx, rsi
je 0x1800ef52f
mov rdx, rbx
lea rcx, [0x180228550]
call fcn.1800e0400
test al, al
je 0x1800ef4c2
mov rcx, r13
call fcn.1800e03d0
test byte [rax + 0x28], 4
je 0x1800ef4eb
mov rcx, rbx
call fcn.18006a7b0
mov rcx, rax
call fcn.1800dd4f0
mov r14d, eax
mov edx, 0x811c9dc5
lea rcx, [0x1801f1c68]
call fcn.1800dd4d0
cmp r14d, eax
jne 0x1800ef515
mov rcx, r13
call fcn.1800e03d0
lea rcx, [rax + 0x50]
mov rdx, rbx
call fcn.1800e0140
mov r9, rax
mov rcx, rbx
call fcn.18006a7b0
mov r8, rax
mov rdx, rdi
call fcn.1800e7660
lea rcx, [rsp + 0x148]
call fcn.1800f06a0
jmp 0x1800ef490
mov r15, qword [rsp + 0x4e8]
xor r14d, r14d
add r15, 8
mov rax, qword [rsp + 0xf0]
jmp 0x1800ed4b8
movss xmm1, dword [0x1802034d0]
call fcn.18017a710
mov rcx, qword [rsp + 0x4d0]
add rcx, 0x20
cmp rcx, r12
je 0x1800ef57a
mov rdx, r12
cmp qword [r12 + 0x18], 0xf
jbe 0x1800ef570
mov rdx, qword [r12]
mov r8, qword [r12 + 0x10]
call fcn.18008f6a0
movss xmm6, dword [0x180232964]
mov dword [rsp + 0x4e0], 0xffffffff
mov rax, qword [r12 + 0x10]
movabs rsi, 0x7fffffffffffffff
sub rsi, rax
cmp rsi, 0xe
jb 0x1800ef6c6
cmp qword [r12 + 0x18], 0xf
jbe 0x1800ef5b5
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.1800f3b00
nop
mov r8d, 7
lea rdx, str._loaded
lea rcx, [rsp + 0xc0]
call fcn.1800a0bd0
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0xa0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0xb0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
movaps xmm3, xmm6
mov r8d, dword [rsp + 0x4e0]
lea rdx, [rsp + 0xa0]
call fcn.18015a840
nop
mov rdx, qword [rsp + 0xb8]
cmp rdx, 0xf
jbe 0x1800ef67d
inc rdx
mov rcx, qword [rsp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800ef677
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800ef677
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18017f7ac
nop
lea rcx, [rsp + 0xc0]
call fcn.18008f640
nop
lea rcx, [rsp + 0x100]
call fcn.1800f1730
nop
mov al, 1
jmp 0x1800ef69f
xor al, al
movaps xmm6, xmmword [rsp + 0x480]
add rsp, 0x490
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
call fcn.18006a690
nop
call fcn.18006a690
nop
call fcn.18006a690
int3