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

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x88]
sub rsp, 0x188
mov r15, rdx
mov rbx, rcx
mov r12, qword [0x18023c9d0]
mov r13, qword [0x18023c9d8]
mov qword [rbp + 0xe0], r13
xor esi, esi
cmp r12, r13
je 0x1800eb9f5
movabs rbx, 0xcbf29ce484222325
movabs rdi, 0x100000001b3
nop
mov r14, qword [r12]
lea rcx, [0x180240b00]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800ea68b
lea rcx, [0x180240b00]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov r10, r14
cmp rax, qword [r14]
cmovne r10, rsi
mov r8, qword [r15 + 0x10]
mov rcx, r15
mov rbx, qword [r15 + 0x18]
cmp rbx, 0xf
jbe 0x1800ea535
mov rcx, qword [r15]
movabs r9, 0xcbf29ce484222325
mov rdx, rsi
test r8, r8
je 0x1800ea563
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800ea550
mov r8, r15
lea rdx, [rbp - 0x30]
lea rcx, [r10 + 0x38]
call fcn.18009c890
cmp qword [rax + 8], 0
je 0x1800eb9d7
mov r8, r15
cmp rbx, 0xf
jbe 0x1800ea58a
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800ea596
mov rcx, rsi
test rdx, rdx
je 0x1800ea5c5
nop dword [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, edi
imul edi, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800ea5b0
lea rcx, [0x180240b00]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rbx, r14
cmp rax, qword [r14]
cmovne rbx, rsi
mov rbx, qword [rbx + 0x40]
mov rbx, qword [rbx]
lea rcx, [0x180240b00]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
cmp rbx, qword [rcx + 0x40]
je 0x1800eb9cd
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800ea612
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800ea620
mov rcx, rsi
test rdx, rdx
je 0x1800ea657
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800ea640
cmp edi, r9d
jne 0x1800ea5e0
lea rcx, [0x180240b00]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
add rcx, 0x38
mov r8, rbx
lea rdx, [rbp - 0x80]
call fcn.1800ec170
mov rbx, qword [rax]
jmp 0x1800ea5e3
lea rcx, [0x180240940]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800ea82b
lea rcx, [0x180240940]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov r10, r14
cmp rax, qword [r14]
cmovne r10, rsi
mov r8, qword [r15 + 0x10]
mov rcx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800ea6c9
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800ea6f3
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800ea6e0
mov r8, r15
lea rdx, [rbp - 0x20]
lea rcx, [r10 + 0x38]
call fcn.18009c890
cmp qword [rax + 8], 0
je 0x1800eb9e1
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800ea71b
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800ea730
mov rcx, rsi
test rdx, rdx
je 0x1800ea765
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, edi
imul edi, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800ea750
lea rcx, [0x180240940]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rbx, r14
cmp rax, qword [r14]
cmovne rbx, rsi
mov rbx, qword [rbx + 0x40]
mov rbx, qword [rbx]
lea rcx, [0x180240940]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
cmp rbx, qword [rcx + 0x40]
je 0x1800eb9cd
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800ea7b2
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800ea7c0
mov rcx, rsi
test rdx, rdx
je 0x1800ea7f7
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800ea7e0
cmp edi, r9d
jne 0x1800ea780
lea rcx, [0x180240940]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
add rcx, 0x38
mov r8, rbx
lea rdx, [rbp - 0x78]
call fcn.1800ec170
mov rbx, qword [rax]
jmp 0x1800ea783
lea rcx, [0x180240928]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800ea9cb
lea rcx, [0x180240928]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov r10, r14
cmp rax, qword [r14]
cmovne r10, rsi
mov r8, qword [r15 + 0x10]
mov rcx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800ea869
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800ea893
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800ea880
mov r8, r15
lea rdx, [rbp - 0x10]
lea rcx, [r10 + 0x38]
call fcn.18009c890
cmp qword [rax + 8], 0
je 0x1800eb9e1
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800ea8bb
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800ea8d0
mov rcx, rsi
test rdx, rdx
je 0x1800ea905
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [r8 + rcx]
xor eax, edi
imul edi, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800ea8f0
lea rcx, [0x180240928]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rbx, r14
cmp rax, qword [r14]
cmovne rbx, rsi
mov rbx, qword [rbx + 0x40]
mov rbx, qword [rbx]
lea rcx, [0x180240928]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
cmp rbx, qword [rcx + 0x40]
je 0x1800eb9cd
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800ea952
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800ea960
mov rcx, rsi
test rdx, rdx
je 0x1800ea997
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800ea980
cmp edi, r9d
jne 0x1800ea920
lea rcx, [0x180240928]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
add rcx, 0x38
mov r8, rbx
lea rdx, [rbp - 0x70]
call fcn.1800ec170
mov rbx, qword [rax]
jmp 0x1800ea923
lea rcx, [0x180240b18]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800eab6b
lea rcx, [0x180240b18]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov r10, r14
cmp rax, qword [r14]
cmovne r10, rsi
mov r8, qword [r15 + 0x10]
mov rcx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800eaa09
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800eaa33
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800eaa20
mov r8, r15
lea rdx, [rbp]
lea rcx, [r10 + 0x40]
call fcn.18009c890
cmp qword [rax + 8], 0
je 0x1800eb9e1
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800eaa5b
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800eaa70
mov rcx, rsi
test rdx, rdx
je 0x1800eaaa5
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, edi
imul edi, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800eaa90
lea rcx, [0x180240b18]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rbx, r14
cmp rax, qword [r14]
cmovne rbx, rsi
mov rbx, qword [rbx + 0x48]
mov rbx, qword [rbx]
lea rcx, [0x180240b18]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
cmp rbx, qword [rcx + 0x48]
je 0x1800eb9cd
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800eaaf2
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800eab00
mov rcx, rsi
test rdx, rdx
je 0x1800eab37
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800eab20
cmp edi, r9d
jne 0x1800eaac0
lea rcx, [0x180240b18]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
add rcx, 0x40
mov r8, rbx
lea rdx, [rbp - 0x68]
call fcn.1800ec170
mov rbx, qword [rax]
jmp 0x1800eaac3
lea rcx, [0x180240d90]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800eadba
lea rcx, [0x180240d90]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov r10, r14
cmp rax, qword [r14]
cmovne r10, rsi
mov r8, qword [r15 + 0x10]
mov rcx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800eaba9
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800eabd3
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800eabc0
mov r8, r15
lea rdx, [rbp + 0x10]
lea rcx, [r10 + 0x40]
call fcn.18009c890
cmp qword [rax + 8], 0
je 0x1800eb9e1
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800eabfb
mov r8, qword [r15]
mov esi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800eac10
xor edi, edi
mov ecx, edi
test rdx, rdx
je 0x1800eac45
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, esi
imul esi, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800eac30
lea rcx, [0x180240d90]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rbx, r14
cmp rax, qword [r14]
cmovne rbx, rdi
mov rbx, qword [rbx + 0x48]
mov rbx, qword [rbx]
lea rcx, [0x180240d90]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rdi
cmp rbx, qword [rcx + 0x48]
je 0x1800eb9cb
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800eac92
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800eaca0
mov rcx, rdi
test rdx, rdx
je 0x1800eacd7
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [r8 + rcx]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800eacc0
cmp esi, r9d
jne 0x1800eac60
lea rcx, [0x180240d90]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov r10, r14
cmp rax, qword [r14]
cmovne r10, rdi
mov rdi, rbx
lea r8, [rbx + 0x10]
mov r9, qword [r8 + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800ead08
mov r8, qword [r8]
movabs rdx, 0xcbf29ce484222325
xor ecx, ecx
test r9, r9
je 0x1800ead4b
movabs r13, 0x100000001b3
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rcx + r8]
xor rdx, rax
imul rdx, r13
inc rcx
cmp rcx, r9
jb 0x1800ead30
mov r13, qword [rbp + 0xe0]
and rdx, qword [r10 + 0x70]
shl rdx, 4
add rdx, qword [r10 + 0x58]
mov rax, qword [rdx]
cmp qword [rdx + 8], rbx
jne 0x1800ead7c
cmp rax, rbx
jne 0x1800ead72
mov rax, qword [r10 + 0x48]
mov qword [rdx], rax
mov qword [rdx + 8], rax
jmp 0x1800ead87
mov rax, qword [rbx + 8]
mov qword [rdx + 8], rax
jmp 0x1800ead87
cmp rax, rbx
jne 0x1800ead87
mov rax, qword [rbx]
mov qword [rdx], rax
mov rbx, qword [rbx]
dec qword [r10 + 0x50]
mov rax, qword [rdi + 8]
mov qword [rax], rbx
mov rax, qword [rdi + 8]
mov qword [rbx + 8], rax
lea rcx, [rdi + 0x10]
call fcn.180098e30
mov edx, 0x38
mov rcx, rdi
call fcn.18019051c
xor edi, edi
jmp 0x1800eac63
lea rcx, [0x180240aa8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800eaf5b
lea rcx, [0x180240aa8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov r10, r14
cmp rax, qword [r14]
cmovne r10, rsi
mov r8, qword [r15 + 0x10]
mov rcx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800eadf8
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800eae23
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800eae10
mov r8, r15
lea rdx, [rbp + 0x20]
lea rcx, [r10 + 0x70]
call fcn.18009c890
cmp qword [rax + 8], 0
je 0x1800eb9e1
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800eae4b
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800eae60
mov rcx, rsi
test rdx, rdx
je 0x1800eae95
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, edi
imul edi, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800eae80
lea rcx, [0x180240aa8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rbx, r14
cmp rax, qword [r14]
cmovne rbx, rsi
mov rbx, qword [rbx + 0x78]
mov rbx, qword [rbx]
lea rcx, [0x180240aa8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
cmp rbx, qword [rcx + 0x78]
je 0x1800eb9cd
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800eaee2
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800eaef0
mov rcx, rsi
test rdx, rdx
je 0x1800eaf27
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [r8 + rcx]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800eaf10
cmp edi, r9d
jne 0x1800eaeb0
lea rcx, [0x180240aa8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
add rcx, 0x70
mov r8, rbx
lea rdx, [rbp - 0x60]
call fcn.1800ec260
mov rbx, qword [rax]
jmp 0x1800eaeb3
lea rcx, [0x180240988]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800eb0fb
lea rcx, [0x180240988]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov r10, r14
cmp rax, qword [r14]
cmovne r10, rsi
mov r8, qword [r15 + 0x10]
mov rcx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800eaf99
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800eafc3
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800eafb0
mov r8, r15
lea rdx, [rbp + 0x30]
lea rcx, [r10 + 0x60]
call fcn.18009c890
cmp qword [rax + 8], 0
je 0x1800eb9e1
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800eafeb
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800eb000
mov rcx, rsi
test rdx, rdx
je 0x1800eb035
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, edi
imul edi, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800eb020
lea rcx, [0x180240988]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rbx, r14
cmp rax, qword [r14]
cmovne rbx, rsi
mov rbx, qword [rbx + 0x68]
mov rbx, qword [rbx]
lea rcx, [0x180240988]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
cmp rbx, qword [rcx + 0x68]
je 0x1800eb9cd
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800eb082
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800eb090
mov rcx, rsi
test rdx, rdx
je 0x1800eb0c7
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800eb0b0
cmp edi, r9d
jne 0x1800eb050
lea rcx, [0x180240988]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
add rcx, 0x60
mov r8, rbx
lea rdx, [rbp - 0x58]
call fcn.1800ec360
mov rbx, qword [rax]
jmp 0x1800eb053
lea rcx, [0x180240a38]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800eb29b
lea rcx, [0x180240a38]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov r10, r14
cmp rax, qword [r14]
cmovne r10, rsi
mov r8, qword [r15 + 0x10]
mov rcx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800eb139
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800eb163
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800eb150
mov r8, r15
lea rdx, [rbp + 0x40]
lea rcx, [r10 + 0x38]
call fcn.18009c890
cmp qword [rax + 8], 0
je 0x1800eb9e1
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800eb18b
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800eb1a0
mov rcx, rsi
test rdx, rdx
je 0x1800eb1d5
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, edi
imul edi, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800eb1c0
lea rcx, [0x180240a38]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rbx, r14
cmp rax, qword [r14]
cmovne rbx, rsi
mov rbx, qword [rbx + 0x40]
mov rbx, qword [rbx]
lea rcx, [0x180240a38]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
cmp rbx, qword [rcx + 0x40]
je 0x1800eb9cd
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800eb222
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800eb230
mov rcx, rsi
test rdx, rdx
je 0x1800eb267
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800eb250
cmp edi, r9d
jne 0x1800eb1f0
lea rcx, [0x180240a38]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
add rcx, 0x38
mov r8, rbx
lea rdx, [rbp - 0x50]
call fcn.1800ec170
mov rbx, qword [rax]
jmp 0x1800eb1f3
lea rcx, [0x180240958]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800eb43b
lea rcx, [0x180240958]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov r10, r14
cmp rax, qword [r14]
cmovne r10, rsi
mov r8, qword [r15 + 0x10]
mov rcx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800eb2d9
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800eb303
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800eb2f0
mov r8, r15
lea rdx, [rbp + 0x50]
lea rcx, [r10 + 0x40]
call fcn.18009c890
cmp qword [rax + 8], 0
je 0x1800eb9e1
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800eb32b
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800eb340
mov rcx, rsi
test rdx, rdx
je 0x1800eb375
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [r8 + rcx]
xor eax, edi
imul edi, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800eb360
lea rcx, [0x180240958]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rbx, r14
cmp rax, qword [r14]
cmovne rbx, rsi
mov rbx, qword [rbx + 0x48]
mov rbx, qword [rbx]
lea rcx, [0x180240958]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
cmp rbx, qword [rcx + 0x48]
je 0x1800eb9cd
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800eb3c6
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800eb3d3
mov rcx, rsi
test rdx, rdx
je 0x1800eb407
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800eb3f0
cmp edi, r9d
jne 0x1800eb390
lea rcx, [0x180240958]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
add rcx, 0x40
mov r8, rbx
lea rdx, [rbp - 0x48]
call fcn.1800ec170
mov rbx, qword [rax]
jmp 0x1800eb393
lea rcx, [0x180240c80]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800eb68a
lea rcx, [0x180240c80]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov r10, r14
cmp rax, qword [r14]
cmovne r10, rsi
mov r8, qword [r15 + 0x10]
mov rcx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800eb47d
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800eb4a3
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800eb490
mov r8, r15
lea rdx, [rbp + 0x60]
lea rcx, [r10 + 0x48]
call fcn.18009c890
cmp qword [rax + 8], 0
je 0x1800eb9e1
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800eb4cf
mov r8, qword [r15]
mov esi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop dword [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800eb4e0
xor edi, edi
mov ecx, edi
test rdx, rdx
je 0x1800eb515
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, esi
imul esi, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800eb500
lea rcx, [0x180240c80]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rbx, r14
cmp rax, qword [r14]
cmovne rbx, rdi
mov rbx, qword [rbx + 0x50]
mov rbx, qword [rbx]
lea rcx, [0x180240c80]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rdi
cmp rbx, qword [rcx + 0x50]
je 0x1800eb9cb
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800eb566
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800eb573
mov rcx, rdi
test rdx, rdx
je 0x1800eb5a7
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800eb590
cmp esi, r9d
jne 0x1800eb530
lea rcx, [0x180240c80]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov r10, r14
cmp rax, qword [r14]
cmovne r10, rdi
mov rdi, rbx
lea r8, [rbx + 0x10]
mov r9, qword [r8 + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800eb5dc
mov r8, qword [r8]
movabs rdx, 0xcbf29ce484222325
xor ecx, ecx
test r9, r9
je 0x1800eb61b
movabs r13, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [r8 + rcx]
xor rdx, rax
imul rdx, r13
inc rcx
cmp rcx, r9
jb 0x1800eb600
mov r13, qword [rbp + 0xe0]
and rdx, qword [r10 + 0x78]
shl rdx, 4
add rdx, qword [r10 + 0x60]
mov rax, qword [rdx]
cmp qword [rdx + 8], rbx
jne 0x1800eb64c
cmp rax, rbx
jne 0x1800eb642
mov rax, qword [r10 + 0x50]
mov qword [rdx], rax
mov qword [rdx + 8], rax
jmp 0x1800eb657
mov rax, qword [rbx + 8]
mov qword [rdx + 8], rax
jmp 0x1800eb657
cmp rax, rbx
jne 0x1800eb657
mov rax, qword [rbx]
mov qword [rdx], rax
mov rbx, qword [rbx]
dec qword [r10 + 0x58]
mov rax, qword [rdi + 8]
mov qword [rax], rbx
mov rax, qword [rdi + 8]
mov qword [rbx + 8], rax
lea rcx, [rdi + 0x10]
call fcn.180098e30
mov edx, 0x40
mov rcx, rdi
call fcn.18019051c
xor edi, edi
jmp 0x1800eb533
lea rcx, [0x180240908]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800eb82b
lea rcx, [0x180240908]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov r10, r14
cmp rax, qword [r14]
cmovne r10, rsi
mov r8, qword [r15 + 0x10]
mov rcx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800eb6cc
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800eb6f3
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800eb6e0
mov r8, r15
lea rdx, [rbp + 0x70]
lea rcx, [r10 + 0x40]
call fcn.18009c890
cmp qword [rax + 8], 0
je 0x1800eb9e1
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800eb71f
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop dword [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800eb730
mov rcx, rsi
test rdx, rdx
je 0x1800eb765
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, edi
imul edi, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800eb750
lea rcx, [0x180240908]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rbx, r14
cmp rax, qword [r14]
cmovne rbx, rsi
mov rbx, qword [rbx + 0x48]
mov rbx, qword [rbx]
lea rcx, [0x180240908]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
cmp rbx, qword [rcx + 0x48]
je 0x1800eb9cd
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800eb7b6
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800eb7c3
mov rcx, rsi
test rdx, rdx
je 0x1800eb7f7
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800eb7e0
cmp edi, r9d
jne 0x1800eb780
lea rcx, [0x180240908]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
add rcx, 0x40
mov r8, rbx
lea rdx, [rbp - 0x40]
call fcn.1800ec170
mov rbx, qword [rax]
jmp 0x1800eb783
lea rcx, [0x180240a80]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800eb9e1
lea rcx, [0x180240a80]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov r10, r14
cmp rax, qword [r14]
cmovne r10, rsi
mov r8, qword [r15 + 0x10]
mov rcx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800eb86d
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800eb893
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800eb880
mov r8, r15
lea rdx, [rsp + 0x20]
lea rcx, [r10 + 0x50]
call fcn.18009c890
cmp qword [rax + 8], 0
je 0x1800eb9e1
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800eb8c0
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop dword [rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800eb8d0
mov rcx, rsi
test rdx, rdx
je 0x1800eb905
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, edi
imul edi, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800eb8f0
lea rcx, [0x180240a80]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rbx, r14
cmp rax, qword [r14]
cmovne rbx, rsi
mov rbx, qword [rbx + 0x58]
mov rbx, qword [rbx]
lea rcx, [0x180240a80]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
cmp rbx, qword [rcx + 0x58]
je 0x1800eb9cd
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800eb956
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800eb963
mov rcx, rsi
test rdx, rdx
je 0x1800eb997
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800eb980
cmp edi, r9d
jne 0x1800eb920
lea rcx, [0x180240a80]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov rcx, r14
cmp rax, qword [r14]
cmovne rcx, rsi
add rcx, 0x50
mov r8, rbx
lea rdx, [rbp - 0x38]
call fcn.1800ec460
mov rbx, qword [rax]
jmp 0x1800eb923
xor esi, esi
movabs rdi, 0x100000001b3
movabs rbx, 0xcbf29ce484222325
add r12, 8
cmp r12, r13
jne 0x1800ea4f0
mov rbx, qword [rbp + 0xd0]
mov qword [rbp + 0xe8], rbx
mov rdx, r15
lea rcx, [rsp + 0x20]
call fcn.180098aa0
mov rdx, rax
lea rcx, [rbp + 0xe8]
call fcn.1800ebae0
mov qword [rsp + 0x20], rbx
lea rax, [rbp + 0xe8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x30], rax
lea rax, [0x18020ce80]
mov qword [rsp + 0x40], rax
vmovups xmm0, xmmword [rsp + 0x20]
vmovups xmmword [rsp + 0x48], xmm0
vmovsd xmm1, qword [rsp + 0x30]
vmovsd qword [rsp + 0x58], xmm1
lea rax, [rsp + 0x40]
mov qword [rsp + 0x78], rax
mov rdx, r15
lea rcx, [rsp + 0x20]
call fcn.180098aa0
mov rbx, rax
mov qword [rbp + 0xe0], rax
mov rcx, qword [rsp + 0x78]
test rcx, rcx
jne 0x1800eba8d
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
int3
mov rax, qword [rcx]
mov rdx, rbx
call qword [rax + 0x10]
nop
mov rcx, rbx
call fcn.180098e30
nop
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x1800ebac0
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rsp + 0x78], rsi
mov rcx, r15
call fcn.180098e30
add rsp, 0x188
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret