Function at 0x1800e2d30
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 [0x18022d990]
mov r13, qword [0x18022d998]
mov qword [rbp + 0xe0], r13
xor esi, esi
cmp r12, r13
je 0x1800e4295
movabs rbx, 0xcbf29ce484222325
movabs rdi, 0x100000001b3
nop
mov r14, qword [r12]
lea rcx, [0x180231810]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e2f2b
lea rcx, [0x180231810]
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 0x1800e2dd5
mov rcx, qword [r15]
movabs r9, 0xcbf29ce484222325
mov rdx, rsi
test r8, r8
je 0x1800e2e03
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e2df0
mov r8, r15
lea rdx, [rbp - 0x30]
lea rcx, [r10 + 0x38]
call fcn.1800955b0
cmp qword [rax + 8], 0
je 0x1800e4277
mov r8, r15
cmp rbx, 0xf
jbe 0x1800e2e2a
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e2e36
mov rcx, rsi
test rdx, rdx
je 0x1800e2e65
nop dword [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, edi
imul edi, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800e2e50
lea rcx, [0x180231810]
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, [0x180231810]
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 0x1800e426d
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e2eb2
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e2ec0
mov rcx, rsi
test rdx, rdx
je 0x1800e2ef7
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 0x1800e2ee0
cmp edi, r9d
jne 0x1800e2e80
lea rcx, [0x180231810]
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.1800e4a10
mov rbx, qword [rax]
jmp 0x1800e2e83
lea rcx, [0x180231650]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e30cb
lea rcx, [0x180231650]
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 0x1800e2f69
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e2f93
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e2f80
mov r8, r15
lea rdx, [rbp - 0x20]
lea rcx, [r10 + 0x38]
call fcn.1800955b0
cmp qword [rax + 8], 0
je 0x1800e4281
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e2fbb
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e2fd0
mov rcx, rsi
test rdx, rdx
je 0x1800e3005
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 0x1800e2ff0
lea rcx, [0x180231650]
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, [0x180231650]
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 0x1800e426d
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e3052
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e3060
mov rcx, rsi
test rdx, rdx
je 0x1800e3097
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 0x1800e3080
cmp edi, r9d
jne 0x1800e3020
lea rcx, [0x180231650]
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.1800e4a10
mov rbx, qword [rax]
jmp 0x1800e3023
lea rcx, [0x180231638]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e326b
lea rcx, [0x180231638]
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 0x1800e3109
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e3133
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e3120
mov r8, r15
lea rdx, [rbp - 0x10]
lea rcx, [r10 + 0x38]
call fcn.1800955b0
cmp qword [rax + 8], 0
je 0x1800e4281
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e315b
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e3170
mov rcx, rsi
test rdx, rdx
je 0x1800e31a5
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 0x1800e3190
lea rcx, [0x180231638]
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, [0x180231638]
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 0x1800e426d
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e31f2
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e3200
mov rcx, rsi
test rdx, rdx
je 0x1800e3237
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 0x1800e3220
cmp edi, r9d
jne 0x1800e31c0
lea rcx, [0x180231638]
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.1800e4a10
mov rbx, qword [rax]
jmp 0x1800e31c3
lea rcx, [0x180231828]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e340b
lea rcx, [0x180231828]
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 0x1800e32a9
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e32d3
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e32c0
mov r8, r15
lea rdx, [rbp]
lea rcx, [r10 + 0x40]
call fcn.1800955b0
cmp qword [rax + 8], 0
je 0x1800e4281
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e32fb
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e3310
mov rcx, rsi
test rdx, rdx
je 0x1800e3345
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 0x1800e3330
lea rcx, [0x180231828]
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, [0x180231828]
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 0x1800e426d
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e3392
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e33a0
mov rcx, rsi
test rdx, rdx
je 0x1800e33d7
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 0x1800e33c0
cmp edi, r9d
jne 0x1800e3360
lea rcx, [0x180231828]
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.1800e4a10
mov rbx, qword [rax]
jmp 0x1800e3363
lea rcx, [0x180231aa0]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e365a
lea rcx, [0x180231aa0]
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 0x1800e3449
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e3473
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e3460
mov r8, r15
lea rdx, [rbp + 0x10]
lea rcx, [r10 + 0x40]
call fcn.1800955b0
cmp qword [rax + 8], 0
je 0x1800e4281
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e349b
mov r8, qword [r15]
mov esi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e34b0
xor edi, edi
mov ecx, edi
test rdx, rdx
je 0x1800e34e5
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 0x1800e34d0
lea rcx, [0x180231aa0]
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, [0x180231aa0]
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 0x1800e426b
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e3532
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e3540
mov rcx, rdi
test rdx, rdx
je 0x1800e3577
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 0x1800e3560
cmp esi, r9d
jne 0x1800e3500
lea rcx, [0x180231aa0]
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 0x1800e35a8
mov r8, qword [r8]
movabs rdx, 0xcbf29ce484222325
xor ecx, ecx
test r9, r9
je 0x1800e35eb
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 0x1800e35d0
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 0x1800e361c
cmp rax, rbx
jne 0x1800e3612
mov rax, qword [r10 + 0x48]
mov qword [rdx], rax
mov qword [rdx + 8], rax
jmp 0x1800e3627
mov rax, qword [rbx + 8]
mov qword [rdx + 8], rax
jmp 0x1800e3627
cmp rax, rbx
jne 0x1800e3627
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.180091c20
mov edx, 0x38
mov rcx, rdi
call fcn.180184d0c
xor edi, edi
jmp 0x1800e3503
lea rcx, [0x1802317b8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e37fb
lea rcx, [0x1802317b8]
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 0x1800e3698
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e36c3
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e36b0
mov r8, r15
lea rdx, [rbp + 0x20]
lea rcx, [r10 + 0x70]
call fcn.1800955b0
cmp qword [rax + 8], 0
je 0x1800e4281
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e36eb
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e3700
mov rcx, rsi
test rdx, rdx
je 0x1800e3735
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 0x1800e3720
lea rcx, [0x1802317b8]
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, [0x1802317b8]
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 0x1800e426d
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e3782
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e3790
mov rcx, rsi
test rdx, rdx
je 0x1800e37c7
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 0x1800e37b0
cmp edi, r9d
jne 0x1800e3750
lea rcx, [0x1802317b8]
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.1800e4b00
mov rbx, qword [rax]
jmp 0x1800e3753
lea rcx, [0x180231698]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e399b
lea rcx, [0x180231698]
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 0x1800e3839
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e3863
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e3850
mov r8, r15
lea rdx, [rbp + 0x30]
lea rcx, [r10 + 0x60]
call fcn.1800955b0
cmp qword [rax + 8], 0
je 0x1800e4281
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e388b
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e38a0
mov rcx, rsi
test rdx, rdx
je 0x1800e38d5
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 0x1800e38c0
lea rcx, [0x180231698]
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, [0x180231698]
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 0x1800e426d
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e3922
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e3930
mov rcx, rsi
test rdx, rdx
je 0x1800e3967
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 0x1800e3950
cmp edi, r9d
jne 0x1800e38f0
lea rcx, [0x180231698]
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.1800e4c00
mov rbx, qword [rax]
jmp 0x1800e38f3
lea rcx, [0x180231748]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e3b3b
lea rcx, [0x180231748]
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 0x1800e39d9
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e3a03
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e39f0
mov r8, r15
lea rdx, [rbp + 0x40]
lea rcx, [r10 + 0x38]
call fcn.1800955b0
cmp qword [rax + 8], 0
je 0x1800e4281
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e3a2b
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e3a40
mov rcx, rsi
test rdx, rdx
je 0x1800e3a75
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 0x1800e3a60
lea rcx, [0x180231748]
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, [0x180231748]
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 0x1800e426d
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e3ac2
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e3ad0
mov rcx, rsi
test rdx, rdx
je 0x1800e3b07
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 0x1800e3af0
cmp edi, r9d
jne 0x1800e3a90
lea rcx, [0x180231748]
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.1800e4a10
mov rbx, qword [rax]
jmp 0x1800e3a93
lea rcx, [0x180231668]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e3cdb
lea rcx, [0x180231668]
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 0x1800e3b79
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e3ba3
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e3b90
mov r8, r15
lea rdx, [rbp + 0x50]
lea rcx, [r10 + 0x40]
call fcn.1800955b0
cmp qword [rax + 8], 0
je 0x1800e4281
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e3bcb
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e3be0
mov rcx, rsi
test rdx, rdx
je 0x1800e3c15
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 0x1800e3c00
lea rcx, [0x180231668]
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, [0x180231668]
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 0x1800e426d
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e3c66
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e3c73
mov rcx, rsi
test rdx, rdx
je 0x1800e3ca7
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800e3c90
cmp edi, r9d
jne 0x1800e3c30
lea rcx, [0x180231668]
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.1800e4a10
mov rbx, qword [rax]
jmp 0x1800e3c33
lea rcx, [0x180231990]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e3f2a
lea rcx, [0x180231990]
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 0x1800e3d1d
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e3d43
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e3d30
mov r8, r15
lea rdx, [rbp + 0x60]
lea rcx, [r10 + 0x48]
call fcn.1800955b0
cmp qword [rax + 8], 0
je 0x1800e4281
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e3d6f
mov r8, qword [r15]
mov esi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop dword [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e3d80
xor edi, edi
mov ecx, edi
test rdx, rdx
je 0x1800e3db5
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 0x1800e3da0
lea rcx, [0x180231990]
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, [0x180231990]
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 0x1800e426b
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e3e06
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e3e13
mov rcx, rdi
test rdx, rdx
je 0x1800e3e47
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800e3e30
cmp esi, r9d
jne 0x1800e3dd0
lea rcx, [0x180231990]
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 0x1800e3e7c
mov r8, qword [r8]
movabs rdx, 0xcbf29ce484222325
xor ecx, ecx
test r9, r9
je 0x1800e3ebb
movabs r13, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [r8 + rcx]
xor rdx, rax
imul rdx, r13
inc rcx
cmp rcx, r9
jb 0x1800e3ea0
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 0x1800e3eec
cmp rax, rbx
jne 0x1800e3ee2
mov rax, qword [r10 + 0x50]
mov qword [rdx], rax
mov qword [rdx + 8], rax
jmp 0x1800e3ef7
mov rax, qword [rbx + 8]
mov qword [rdx + 8], rax
jmp 0x1800e3ef7
cmp rax, rbx
jne 0x1800e3ef7
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.180091c20
mov edx, 0x40
mov rcx, rdi
call fcn.180184d0c
xor edi, edi
jmp 0x1800e3dd3
lea rcx, [0x180231618]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e40cb
lea rcx, [0x180231618]
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 0x1800e3f6c
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e3f93
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e3f80
mov r8, r15
lea rdx, [rbp + 0x70]
lea rcx, [r10 + 0x40]
call fcn.1800955b0
cmp qword [rax + 8], 0
je 0x1800e4281
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e3fbf
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop dword [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e3fd0
mov rcx, rsi
test rdx, rdx
je 0x1800e4005
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 0x1800e3ff0
lea rcx, [0x180231618]
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, [0x180231618]
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 0x1800e426d
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e4056
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e4063
mov rcx, rsi
test rdx, rdx
je 0x1800e4097
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800e4080
cmp edi, r9d
jne 0x1800e4020
lea rcx, [0x180231618]
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.1800e4a10
mov rbx, qword [rax]
jmp 0x1800e4023
lea rcx, [0x180231790]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e4281
lea rcx, [0x180231790]
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 0x1800e410d
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e4133
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e4120
mov r8, r15
lea rdx, [rsp + 0x20]
lea rcx, [r10 + 0x50]
call fcn.1800955b0
cmp qword [rax + 8], 0
je 0x1800e4281
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e4160
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop dword [rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e4170
mov rcx, rsi
test rdx, rdx
je 0x1800e41a5
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 0x1800e4190
lea rcx, [0x180231790]
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, [0x180231790]
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 0x1800e426d
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e41f6
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e4203
mov rcx, rsi
test rdx, rdx
je 0x1800e4237
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800e4220
cmp edi, r9d
jne 0x1800e41c0
lea rcx, [0x180231790]
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.1800e4d00
mov rbx, qword [rax]
jmp 0x1800e41c3
xor esi, esi
movabs rdi, 0x100000001b3
movabs rbx, 0xcbf29ce484222325
add r12, 8
cmp r12, r13
jne 0x1800e2d90
mov rbx, qword [rbp + 0xd0]
mov qword [rbp + 0xe8], rbx
mov rdx, r15
lea rcx, [rsp + 0x20]
call fcn.180091890
mov rdx, rax
lea rcx, [rbp + 0xe8]
call fcn.1800e4380
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, [0x180200c38]
mov qword [rsp + 0x40], rax
movups xmm0, xmmword [rsp + 0x20]
movups xmmword [rsp + 0x48], xmm0
movsd xmm1, qword [rsp + 0x30]
movsd qword [rsp + 0x58], xmm1
lea rax, [rsp + 0x40]
mov qword [rsp + 0x78], rax
mov rdx, r15
lea rcx, [rsp + 0x20]
call fcn.180091890
mov rbx, rax
mov qword [rbp + 0xe0], rax
mov rcx, qword [rsp + 0x78]
test rcx, rcx
jne 0x1800e432b
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.180091c20
nop
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x1800e435e
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.180091c20
add rsp, 0x188
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret