Function at 0x1800e18b0
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 [0x18022c990]
mov r13, qword [0x18022c998]
mov qword [rbp + 0xe0], r13
xor esi, esi
cmp r12, r13
je 0x1800e2e15
movabs rbx, 0xcbf29ce484222325
movabs rdi, 0x100000001b3
nop
mov r14, qword [r12]
lea rcx, [0x1802307d0]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e1aab
lea rcx, [0x1802307d0]
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 0x1800e1955
mov rcx, qword [r15]
movabs r9, 0xcbf29ce484222325
mov rdx, rsi
test r8, r8
je 0x1800e1983
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e1970
mov r8, r15
lea rdx, [rbp - 0x30]
lea rcx, [r10 + 0x38]
call fcn.180094450
cmp qword [rax + 8], 0
je 0x1800e2df7
mov r8, r15
cmp rbx, 0xf
jbe 0x1800e19aa
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e19b6
mov rcx, rsi
test rdx, rdx
je 0x1800e19e5
nop dword [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, edi
imul edi, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800e19d0
lea rcx, [0x1802307d0]
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, [0x1802307d0]
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 0x1800e2ded
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e1a32
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e1a40
mov rcx, rsi
test rdx, rdx
je 0x1800e1a77
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 0x1800e1a60
cmp edi, r9d
jne 0x1800e1a00
lea rcx, [0x1802307d0]
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.1800e3590
mov rbx, qword [rax]
jmp 0x1800e1a03
lea rcx, [0x180230638]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e1c4b
lea rcx, [0x180230638]
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 0x1800e1ae9
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e1b13
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e1b00
mov r8, r15
lea rdx, [rbp - 0x20]
lea rcx, [r10 + 0x38]
call fcn.180094450
cmp qword [rax + 8], 0
je 0x1800e2e01
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e1b3b
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e1b50
mov rcx, rsi
test rdx, rdx
je 0x1800e1b85
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 0x1800e1b70
lea rcx, [0x180230638]
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, [0x180230638]
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 0x1800e2ded
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e1bd2
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e1be0
mov rcx, rsi
test rdx, rdx
je 0x1800e1c17
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 0x1800e1c00
cmp edi, r9d
jne 0x1800e1ba0
lea rcx, [0x180230638]
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.1800e3590
mov rbx, qword [rax]
jmp 0x1800e1ba3
lea rcx, [0x180230620]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e1deb
lea rcx, [0x180230620]
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 0x1800e1c89
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e1cb3
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e1ca0
mov r8, r15
lea rdx, [rbp - 0x10]
lea rcx, [r10 + 0x38]
call fcn.180094450
cmp qword [rax + 8], 0
je 0x1800e2e01
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e1cdb
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e1cf0
mov rcx, rsi
test rdx, rdx
je 0x1800e1d25
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 0x1800e1d10
lea rcx, [0x180230620]
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, [0x180230620]
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 0x1800e2ded
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e1d72
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e1d80
mov rcx, rsi
test rdx, rdx
je 0x1800e1db7
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 0x1800e1da0
cmp edi, r9d
jne 0x1800e1d40
lea rcx, [0x180230620]
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.1800e3590
mov rbx, qword [rax]
jmp 0x1800e1d43
lea rcx, [0x1802307e8]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e1f8b
lea rcx, [0x1802307e8]
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 0x1800e1e29
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e1e53
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e1e40
mov r8, r15
lea rdx, [rbp]
lea rcx, [r10 + 0x40]
call fcn.180094450
cmp qword [rax + 8], 0
je 0x1800e2e01
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e1e7b
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e1e90
mov rcx, rsi
test rdx, rdx
je 0x1800e1ec5
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 0x1800e1eb0
lea rcx, [0x1802307e8]
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, [0x1802307e8]
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 0x1800e2ded
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e1f12
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e1f20
mov rcx, rsi
test rdx, rdx
je 0x1800e1f57
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 0x1800e1f40
cmp edi, r9d
jne 0x1800e1ee0
lea rcx, [0x1802307e8]
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.1800e3590
mov rbx, qword [rax]
jmp 0x1800e1ee3
lea rcx, [0x180230ab0]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e21da
lea rcx, [0x180230ab0]
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 0x1800e1fc9
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e1ff3
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e1fe0
mov r8, r15
lea rdx, [rbp + 0x10]
lea rcx, [r10 + 0x40]
call fcn.180094450
cmp qword [rax + 8], 0
je 0x1800e2e01
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e201b
mov r8, qword [r15]
mov esi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e2030
xor edi, edi
mov ecx, edi
test rdx, rdx
je 0x1800e2065
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 0x1800e2050
lea rcx, [0x180230ab0]
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, [0x180230ab0]
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 0x1800e2deb
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e20b2
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e20c0
mov rcx, rdi
test rdx, rdx
je 0x1800e20f7
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 0x1800e20e0
cmp esi, r9d
jne 0x1800e2080
lea rcx, [0x180230ab0]
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 0x1800e2128
mov r8, qword [r8]
movabs rdx, 0xcbf29ce484222325
xor ecx, ecx
test r9, r9
je 0x1800e216b
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 0x1800e2150
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 0x1800e219c
cmp rax, rbx
jne 0x1800e2192
mov rax, qword [r10 + 0x48]
mov qword [rdx], rax
mov qword [rdx + 8], rax
jmp 0x1800e21a7
mov rax, qword [rbx + 8]
mov qword [rdx + 8], rax
jmp 0x1800e21a7
cmp rax, rbx
jne 0x1800e21a7
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.180090ac0
mov edx, 0x38
mov rcx, rdi
call fcn.1801839fc
xor edi, edi
jmp 0x1800e2083
lea rcx, [0x180230778]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e237b
lea rcx, [0x180230778]
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 0x1800e2218
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e2243
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e2230
mov r8, r15
lea rdx, [rbp + 0x20]
lea rcx, [r10 + 0x70]
call fcn.180094450
cmp qword [rax + 8], 0
je 0x1800e2e01
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e226b
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e2280
mov rcx, rsi
test rdx, rdx
je 0x1800e22b5
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 0x1800e22a0
lea rcx, [0x180230778]
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, [0x180230778]
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 0x1800e2ded
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e2302
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e2310
mov rcx, rsi
test rdx, rdx
je 0x1800e2347
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 0x1800e2330
cmp edi, r9d
jne 0x1800e22d0
lea rcx, [0x180230778]
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.1800e3680
mov rbx, qword [rax]
jmp 0x1800e22d3
lea rcx, [0x180230678]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e251b
lea rcx, [0x180230678]
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 0x1800e23b9
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e23e3
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e23d0
mov r8, r15
lea rdx, [rbp + 0x30]
lea rcx, [r10 + 0x60]
call fcn.180094450
cmp qword [rax + 8], 0
je 0x1800e2e01
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e240b
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e2420
mov rcx, rsi
test rdx, rdx
je 0x1800e2455
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 0x1800e2440
lea rcx, [0x180230678]
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, [0x180230678]
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 0x1800e2ded
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e24a2
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e24b0
mov rcx, rsi
test rdx, rdx
je 0x1800e24e7
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 0x1800e24d0
cmp edi, r9d
jne 0x1800e2470
lea rcx, [0x180230678]
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.1800e3780
mov rbx, qword [rax]
jmp 0x1800e2473
lea rcx, [0x180230728]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e26bb
lea rcx, [0x180230728]
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 0x1800e2559
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e2583
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e2570
mov r8, r15
lea rdx, [rbp + 0x40]
lea rcx, [r10 + 0x38]
call fcn.180094450
cmp qword [rax + 8], 0
je 0x1800e2e01
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e25ab
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e25c0
mov rcx, rsi
test rdx, rdx
je 0x1800e25f5
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 0x1800e25e0
lea rcx, [0x180230728]
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, [0x180230728]
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 0x1800e2ded
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e2642
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e2650
mov rcx, rsi
test rdx, rdx
je 0x1800e2687
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 0x1800e2670
cmp edi, r9d
jne 0x1800e2610
lea rcx, [0x180230728]
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.1800e3590
mov rbx, qword [rax]
jmp 0x1800e2613
lea rcx, [0x180230650]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e285b
lea rcx, [0x180230650]
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 0x1800e26f9
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e2723
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e2710
mov r8, r15
lea rdx, [rbp + 0x50]
lea rcx, [r10 + 0x40]
call fcn.180094450
cmp qword [rax + 8], 0
je 0x1800e2e01
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e274b
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e2760
mov rcx, rsi
test rdx, rdx
je 0x1800e2795
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 0x1800e2780
lea rcx, [0x180230650]
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, [0x180230650]
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 0x1800e2ded
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e27e6
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e27f3
mov rcx, rsi
test rdx, rdx
je 0x1800e2827
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800e2810
cmp edi, r9d
jne 0x1800e27b0
lea rcx, [0x180230650]
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.1800e3590
mov rbx, qword [rax]
jmp 0x1800e27b3
lea rcx, [0x1802309a0]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e2aaa
lea rcx, [0x1802309a0]
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 0x1800e289d
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e28c3
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e28b0
mov r8, r15
lea rdx, [rbp + 0x60]
lea rcx, [r10 + 0x48]
call fcn.180094450
cmp qword [rax + 8], 0
je 0x1800e2e01
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e28ef
mov r8, qword [r15]
mov esi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop dword [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e2900
xor edi, edi
mov ecx, edi
test rdx, rdx
je 0x1800e2935
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 0x1800e2920
lea rcx, [0x1802309a0]
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, [0x1802309a0]
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 0x1800e2deb
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e2986
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e2993
mov rcx, rdi
test rdx, rdx
je 0x1800e29c7
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800e29b0
cmp esi, r9d
jne 0x1800e2950
lea rcx, [0x1802309a0]
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 0x1800e29fc
mov r8, qword [r8]
movabs rdx, 0xcbf29ce484222325
xor ecx, ecx
test r9, r9
je 0x1800e2a3b
movabs r13, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [r8 + rcx]
xor rdx, rax
imul rdx, r13
inc rcx
cmp rcx, r9
jb 0x1800e2a20
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 0x1800e2a6c
cmp rax, rbx
jne 0x1800e2a62
mov rax, qword [r10 + 0x50]
mov qword [rdx], rax
mov qword [rdx + 8], rax
jmp 0x1800e2a77
mov rax, qword [rbx + 8]
mov qword [rdx + 8], rax
jmp 0x1800e2a77
cmp rax, rbx
jne 0x1800e2a77
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.180090ac0
mov edx, 0x40
mov rcx, rdi
call fcn.1801839fc
xor edi, edi
jmp 0x1800e2953
lea rcx, [0x180230600]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e2c4b
lea rcx, [0x180230600]
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 0x1800e2aec
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e2b13
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e2b00
mov r8, r15
lea rdx, [rbp + 0x70]
lea rcx, [r10 + 0x40]
call fcn.180094450
cmp qword [rax + 8], 0
je 0x1800e2e01
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e2b3f
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop dword [rax + rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e2b50
mov rcx, rsi
test rdx, rdx
je 0x1800e2b85
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 0x1800e2b70
lea rcx, [0x180230600]
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, [0x180230600]
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 0x1800e2ded
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e2bd6
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e2be3
mov rcx, rsi
test rdx, rdx
je 0x1800e2c17
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800e2c00
cmp edi, r9d
jne 0x1800e2ba0
lea rcx, [0x180230600]
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.1800e3590
mov rbx, qword [rax]
jmp 0x1800e2ba3
lea rcx, [0x180230748]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
cmp qword [r14], rax
jne 0x1800e2e01
lea rcx, [0x180230748]
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 0x1800e2c8d
mov rcx, qword [r15]
mov r9, rbx
mov rdx, rsi
test r8, r8
je 0x1800e2cb3
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rdi
inc rdx
cmp rdx, r8
jb 0x1800e2ca0
mov r8, r15
lea rdx, [rsp + 0x20]
lea rcx, [r10 + 0x50]
call fcn.180094450
cmp qword [rax + 8], 0
je 0x1800e2e01
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1800e2ce0
mov r8, qword [r15]
mov edi, 0x811c9dc5
mov rdx, 0xffffffffffffffff
nop dword [rax]
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e2cf0
mov rcx, rsi
test rdx, rdx
je 0x1800e2d25
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 0x1800e2d10
lea rcx, [0x180230748]
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, [0x180230748]
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 0x1800e2ded
lea r8, [rbx + 0x10]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800e2d76
mov r8, qword [r8]
mov rdx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rdx
cmp byte [r8 + rdx], 0
jne 0x1800e2d83
mov rcx, rsi
test rdx, rdx
je 0x1800e2db7
nop word [rax + rax]
movsx eax, byte [rcx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rcx
cmp rcx, rdx
jb 0x1800e2da0
cmp edi, r9d
jne 0x1800e2d40
lea rcx, [0x180230748]
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.1800e3880
mov rbx, qword [rax]
jmp 0x1800e2d43
xor esi, esi
movabs rdi, 0x100000001b3
movabs rbx, 0xcbf29ce484222325
add r12, 8
cmp r12, r13
jne 0x1800e1910
mov rbx, qword [rbp + 0xd0]
mov qword [rbp + 0xe8], rbx
mov rdx, r15
lea rcx, [rsp + 0x20]
call fcn.180090730
mov rdx, rax
lea rcx, [rbp + 0xe8]
call fcn.1800e2f00
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, [0x1801ffa68]
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.180090730
mov rbx, rax
mov qword [rbp + 0xe0], rax
mov rcx, qword [rsp + 0x78]
test rcx, rcx
jne 0x1800e2eab
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.180090ac0
nop
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x1800e2ede
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.180090ac0
add rsp, 0x188
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret