Function at 0x1800f3ce0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x18], r8
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 - 0x48]
sub rsp, 0x148
mov rbx, qword [rbp + 0xb0]
lea rax, [r8 + 0x68]
mov qword [rbp - 0x28], rax
xor r12d, r12d
mov rax, qword [rcx]
mov r14, rdx
mov qword [rbp - 0x58], rax
mov edi, r9d
movzx eax, byte [rbx + 0x34]
mov r9, r8
mov r15, qword [rbx + 0x50]
lea r10d, [r12 + 1]
imul rdx, rax, 0x70
mov rax, qword [r8 + 8]
mov r11, rcx
movsxd r8, dword [r8 + 0x294]
add rax, 8
add rax, rdx
mov qword [rsp + 0x78], r12
mov qword [rbp - 0x80], r15
mov edx, r12d
mov qword [rbp - 0x40], rax
mov r13d, dword [rax + 0x44]
mov dword [rsp + 0x48], r13d
test r8, r8
jle 0x1800f3d8e
mov ecx, r12d
lea rax, [r9 + 0x298]
cmp dword [rax], r13d
je 0x1800f3e35
inc edx
inc rcx
add rax, 4
cmp rcx, r8
jl 0x1800f3d77
mov rax, r12
not rax
mov ecx, edi
and rax, qword [rbp + 0xb8]
mov qword [rbx + 0x58], rax
mov esi, dword [r11 + 0x44]
mov r10, qword [r9 + 0x60]
dec esi
mov dword [r11 + 0x44], esi
shr r10, cl
and r10d, 1
mov dword [rbx + 0x10], esi
mov dword [rbx + 0xc], esi
mov eax, dword [r11 + 0x44]
dec eax
mov qword [rsp + 0x58], r10
mov dword [r11 + 0x44], eax
mov dword [rsp + 0x64], esi
mov dword [rbp - 0x60], eax
mov dword [rbx + 0x18], eax
cmp byte [rbx + 0x34], r12b
jbe 0x1800f3e6d
mov rax, qword [rbp - 0x40]
test byte [rax + 0x3c], 8
je 0x1800f3e6d
mov edx, dword [r11 + 0x38]
inc edx
mov dword [r11 + 0x38], edx
mov dword [rbx], edx
movsxd rcx, dword [r14 + 0x90]
cmp dword [r14 + 0x94], ecx
jg 0x1800f3e42
xor r8d, r8d
mov dword [rsp + 0x20], r12d
mov r9d, edx
mov rcx, r14
lea edx, [r8 + 0x45]
call fcn.180078790
mov r10, qword [rsp + 0x58]
mov r11, qword [rbp + 0x90]
mov r9, qword [rbp + 0xa0]
jmp 0x1800f3e6d
mov ecx, edx
mov rax, r10
shl rax, cl
jmp 0x1800f3d91
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov qword [rax + rcx*8], 0x45
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov edx, edi
test edi, edi
jle 0x1800f3e8d
mov eax, edx
lea rcx, [rax + rax*2]
shl rcx, 5
cmp dword [rcx + r9 + 0x398], r12d
jne 0x1800f3e8d
dec edx
test edx, edx
jg 0x1800f3e73
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rbp - 0x40]
shl rcx, 5
mov r8d, dword [rax + 0x40]
mov r9d, dword [rcx + r9 + 0x3a4]
test r8b, 0x10
je 0x1800f3f90
movsxd rcx, dword [r14 + 0x90]
mov ebx, dword [rax + 0x34]
mov edx, dword [rax + 0x30]
cmp dword [r14 + 0x94], ecx
jg 0x1800f3ee0
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov r8d, ebx
mov rcx, r14
lea edx, [r9 + 0xd]
call fcn.180078790
jmp 0x1800f3f0e
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov dword [rax + rcx*8], 0xd
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r12
movsxd rdx, dword [r14 + 0x90]
cmp dword [r14 + 0x94], edx
jg 0x1800f3f4d
mov r9d, esi
mov dword [rsp + 0x20], r12d
mov r8d, ebx
mov edx, 0xe
mov rcx, r14
call fcn.180078790
mov r9, qword [rbp + 0xb0]
mov edx, eax
mov dword [r9 + 0x3c], eax
mov byte [r9 + 0x35], 0xb
jmp 0x1800f640f
mov r9, qword [rbp + 0xb0]
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [r14 + 0x90], eax
mov rax, qword [r14 + 0x88]
mov dword [rax + rcx*8], 0xe
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov dword [r9 + 0x3c], edx
mov byte [r9 + 0x35], 0xb
jmp 0x1800f640f
mov edx, dword [r15 + 0x28]
bt edx, 0xa
jae 0x1800f4742
movzx ebx, word [r15 + 0x2c]
mov dword [rbp + 0xa8], ebx
lea ecx, [rbx + 2]
cmp ecx, 1
jne 0x1800f3fd7
movzx eax, byte [r11 + 0x1f]
test al, al
jne 0x1800f3fc4
inc dword [r11 + 0x38]
mov r13d, dword [r11 + 0x38]
jmp 0x1800f4006
dec al
movzx eax, al
mov byte [r11 + 0x1f], al
mov r13d, dword [r11 + rax*4 + 0xd4]
jmp 0x1800f4006
mov edx, dword [r11 + 0x28]
mov r13d, dword [r11 + 0x2c]
mov dword [rsp + 0x44], r13d
cmp ecx, edx
jg 0x1800f3ff8
lea eax, [rcx + r13]
sub edx, ecx
mov dword [r11 + 0x2c], eax
mov dword [r11 + 0x28], edx
jmp 0x1800f400b
mov eax, dword [r11 + 0x38]
lea r13d, [rax + 1]
add eax, ecx
mov dword [r11 + 0x38], eax
mov dword [rsp + 0x44], r13d
mov rdx, qword [rbp + 0xb0]
mov edi, dword [rdx + 0xc]
mov dword [rsp + 0x40], edi
test ebx, ebx
je 0x1800f4199
mov ecx, dword [rbp + 0xa8]
lea ebx, [r13 + 2]
mov r14, qword [rsp + 0x58]
mov r15d, 0xfffffffe
sub r15d, r13d
mov rsi, r12
mov r13, qword [rbp + 0x90]
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rbp - 0x80]
mov rax, qword [rax + 0x38]
mov rax, qword [rsi + rax]
test rax, rax
je 0x1800f416d
test byte [rax + 0x14], 1
je 0x1800f409f
mov r8, rdx
mov dword [rsp + 0x28], ebx
mov rdx, rax
mov dword [rsp + 0x20], r14d
lea r9d, [r15 + rbx]
mov rcx, r13
call fcn.18002d980
mov rdx, qword [rbp + 0xb0]
mov ecx, dword [rbp + 0xa8]
mov edi, dword [rdx + 0x10]
mov dword [rsp + 0x40], edi
jmp 0x1800f4171
mov rax, qword [rax]
mov rdx, qword [rax + 0x18]
test rdx, rdx
je 0x1800f4155
movzx eax, byte [rdx]
cmp al, 0xad
jne 0x1800f40ba
movzx eax, byte [rdx + 2]
cmp al, 0xae
jne 0x1800f40c7
mov rax, qword [rdx + 0x20]
mov rcx, rax
jmp 0x1800f40d7
cmp al, 0x88
jne 0x1800f4155
mov rax, qword [rdx + 0x20]
mov rcx, qword [rax + 0x20]
cmp dword [rcx], 1
jle 0x1800f4155
test dword [rdx + 4], 0x800
mov rcx, r13
je 0x1800f414f
mov rdi, qword [r13 + 0x10]
call fcn.1800a1e00
movsxd rcx, dword [rdi + 0x90]
mov edx, eax
cmp dword [rdi + 0x94], ecx
jg 0x1800f4120
mov r9d, ebx
mov dword [rsp + 0x20], r12d
mov r8d, eax
mov edx, 0x4d
mov rcx, rdi
call fcn.180078790
jmp 0x1800f4160
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x4d
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
jmp 0x1800f4160
mov rdx, qword [rax + 8]
jmp 0x1800f4158
mov rcx, r13
mov r8d, ebx
call fcn.1800a8e70
mov rdx, qword [rbp + 0xb0]
mov ecx, dword [rbp + 0xa8]
mov edi, dword [rsp + 0x40]
inc ebx
add rsi, 8
lea eax, [r15 + rbx]
cmp eax, ecx
jl 0x1800f4050
mov r14, qword [rbp + 0x98]
mov r13d, dword [rsp + 0x44]
mov ebx, dword [rbp + 0xa8]
mov r15, qword [rbp - 0x80]
movsxd rcx, dword [r14 + 0x90]
mov edx, dword [r15 + 0x18]
cmp dword [r14 + 0x94], ecx
jg 0x1800f41c7
mov r8d, edx
mov dword [rsp + 0x20], r12d
mov edx, 0x45
mov r9d, r13d
mov rcx, r14
call fcn.180078790
jmp 0x1800f41f6
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov dword [rax + rcx*8], 0x45
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
movsxd rcx, dword [r14 + 0x90]
lea edx, [r13 + 1]
cmp dword [r14 + 0x94], ecx
jg 0x1800f4224
mov r9d, edx
mov dword [rsp + 0x20], r12d
mov edx, 0x45
mov r8d, ebx
mov rcx, r14
call fcn.180078790
jmp 0x1800f4252
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov dword [rax + rcx*8], 0x45
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
cmp byte [r15 + 0x1c], r12b
mov ecx, 0xfffffff9
mov eax, 0xffffffff
mov r9d, edi
mov edi, dword [rsp + 0x48]
cmovne eax, ecx
mov dword [rsp + 0x30], eax
mov r8d, edi
mov rax, qword [r15 + 0x20]
lea edx, [rcx + 0x10]
mov qword [rsp + 0x28], rax
mov rcx, r14
mov dword [rsp + 0x20], r13d
call fcn.1800e1c00
mov r9, qword [rbp + 0xb0]
lea esi, [rbx - 1]
mov r8, qword [rbp + 0xa0]
mov eax, 0x3d
mov byte [r15 + 0x1c], r12b
mov ecx, 0xad
mov dword [r9 + 0x38], edi
cmp byte [r8 + 0x42], r12b
cmovne eax, ecx
mov byte [r9 + 0x35], al
mov eax, dword [r14 + 0x90]
mov dword [r9 + 0x3c], eax
test esi, esi
js 0x1800f6416
movsxd r15, dword [r9 + 0x40]
lea ecx, [r13 + 2]
movsxd rax, ebx
add ecx, esi
mov dword [rbp + 0xa8], ecx
mov r11d, 0x48
lea r13, [rax*8 - 8]
nop dword [rax]
mov r8, qword [rbp - 0x80]
mov rax, qword [r8 + 0x38]
mov rbx, qword [rax + r13]
lea rax, [r15 - 1]
movzx edx, word [rbx + 0x14]
and dx, 1
cmove rax, r15
mov r15, rax
cmp esi, 0x10
jae 0x1800f43b2
movzx eax, word [r8 + 0x1e]
movzx ecx, si
shr ax, cl
test al, 1
je 0x1800f43ac
test byte [rbx + 0x12], 4
mov edx, r12d
jne 0x1800f471b
cmp dword [r9], r12d
je 0x1800f434a
mov rax, qword [rbx]
test byte [rax + 4], 1
je 0x1800f471b
mov rax, qword [rbx + 0x38]
test qword [r9 + 0x58], rax
jne 0x1800f471b
test edx, edx
je 0x1800f4375
movzx eax, word [rbx + 0x12]
bt ax, 0xa
jae 0x1800f4375
mov ecx, 0x200
or ax, cx
mov word [rbx + 0x12], ax
jmp 0x1800f437a
or word [rbx + 0x12], 4
movsxd rcx, dword [rbx + 0x18]
test ecx, ecx
js 0x1800f471b
mov rax, qword [rbx + 8]
mov rbx, rcx
shl rbx, 6
add rbx, qword [rax + 0x20]
add byte [rbx + 0x16], 0xff
jne 0x1800f471b
inc edx
test byte [rbx + 0x12], 4
je 0x1800f4338
jmp 0x1800f471b
mov ecx, dword [rbp + 0xa8]
test dx, dx
je 0x1800f4721
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
movzx eax, byte [rcx]
cmp al, 0xad
jne 0x1800f43cd
movzx eax, byte [rcx + 2]
cmp al, 0xae
jne 0x1800f43d7
mov rax, qword [rcx + 0x20]
jmp 0x1800f43e3
cmp al, 0x88
jne 0x1800f43ec
mov rax, qword [rcx + 0x20]
mov rax, qword [rax + 0x20]
cmp dword [rax], 1
jne 0x1800f471b
mov rax, qword [rbp - 0x58]
cmp byte [rax + 0x61], r12b
jne 0x1800f44a5
mov rax, qword [r9 + 0x48]
lea rcx, [r15 + r15*4]
mov edx, dword [rax + rcx*4 + 4]
test edx, edx
jns 0x1800f4413
mov edx, dword [r14 + 0x90]
dec edx
mov rax, qword [r14]
cmp byte [rax + 0x61], r12b
je 0x1800f4425
lea rax, [0x18014c150]
jmp 0x1800f4437
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x88]
lea rax, [rax + rcx*8]
movsxd rcx, dword [r14 + 0x90]
mov r10d, dword [rax + 0xc]
mov r9d, dword [rax + 8]
mov r8d, dword [rax + 4]
movzx edx, byte [rax]
cmp dword [r14 + 0x94], ecx
jg 0x1800f446e
movzx edx, dl
mov rcx, r14
mov dword [rsp + 0x20], r10d
call fcn.180078790
mov r11d, 0x48
jmp 0x1800f44a5
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov byte [rax + rcx*8], dl
mov word [rax + rcx*8 + 2], r12w
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r12
mov byte [rax + rcx*8 + 1], r12b
mov rax, qword [rbp + 0x90]
mov rcx, qword [rax]
cmp r11w, word [rcx + 0x17c]
jbe 0x1800f44dc
cmp dword [rcx + 0x178], r12d
jne 0x1800f44cd
inc dword [rcx + 0x18c]
jmp 0x1800f455a
cmp byte [rcx + 0x61], r12b
jne 0x1800f471b
jmp 0x1800f455a
mov rdi, qword [rcx + 0x1b0]
test rdi, rdi
je 0x1800f44fa
mov rax, qword [rdi]
mov qword [rcx + 0x1b0], rax
inc dword [rcx + 0x188]
jmp 0x1800f456e
mov rdi, qword [rcx + 0x1a8]
test rdi, rdi
je 0x1800f4518
mov rax, qword [rdi]
mov qword [rcx + 0x1a8], rax
inc dword [rcx + 0x188]
jmp 0x1800f456e
mov rdi, qword [rcx + 0x1a0]
test rdi, rdi
je 0x1800f4536
mov rax, qword [rdi]
mov qword [rcx + 0x1a0], rax
inc dword [rcx + 0x188]
jmp 0x1800f456e
mov rdi, qword [rcx + 0x198]
test rdi, rdi
je 0x1800f4554
mov rax, qword [rdi]
inc dword [rcx + 0x188]
mov qword [rcx + 0x198], rax
jmp 0x1800f456e
inc dword [rcx + 0x190]
mov rdx, r11
call fcn.1800323e0
mov rdi, rax
test rax, rax
je 0x1800f4715
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rdi], xmm0
mov ecx, r12d
mov edx, r12d
movups xmmword [rdi + 0x10], xmm0
mov dword [rsp + 0x44], ecx
movups xmmword [rdi + 0x20], xmm0
movups xmmword [rdi + 0x30], xmm0
mov qword [rdi + 0x40], rax
mov rax, 0xffffffffffffffff
mov word [rdi + 0x32], ax
mov rax, qword [rdi + 0x10]
mov byte [rdi], 0x35
test rax, rax
je 0x1800f45b6
mov eax, dword [rax + 0x28]
test eax, eax
jle 0x1800f45b6
mov ecx, eax
mov dword [rsp + 0x44], eax
mov edx, eax
mov rax, qword [rdi + 0x18]
test rax, rax
je 0x1800f45cb
mov eax, dword [rax + 0x28]
cmp eax, edx
cmovg ecx, eax
mov dword [rsp + 0x44], ecx
mov r11d, dword [rdi + 4]
bt r11d, 0xb
jae 0x1800f45ea
mov rcx, qword [rdi + 0x20]
lea rdx, [rsp + 0x44]
call fcn.180078f60
mov ecx, dword [rsp + 0x44]
jmp 0x1800f464c
mov r10, qword [rdi + 0x20]
test r10, r10
je 0x1800f464c
movsxd r8, dword [r10]
test r8, r8
jle 0x1800f461a
lea rdx, [r10 + 8]
nop
mov rax, qword [rdx]
test rax, rax
je 0x1800f4610
mov eax, dword [rax + 0x28]
cmp eax, ecx
cmovg ecx, eax
add rdx, 0x20
sub r8, 1
jne 0x1800f4600
movsxd r9, dword [r10]
mov edx, r12d
test r9, r9
jle 0x1800f4640
lea r8, [r10 + 8]
nop dword [rax]
mov rax, qword [r8]
lea r8, [r8 + 0x20]
or edx, dword [rax + 4]
sub r9, 1
jne 0x1800f4630
and edx, 0x200104
or edx, r11d
mov dword [rdi + 4], edx
mov r9, qword [rbp + 0x90]
inc ecx
mov dword [rdi + 0x28], ecx
mov rax, qword [r9]
mov r8d, dword [rax + 0x88]
cmp ecx, r8d
jle 0x1800f4676
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
mov rcx, r9
call fcn.1800a80e0
mov rax, qword [rbx]
mov edx, 0x49
mov rbx, qword [rbp - 0x58]
mov rcx, qword [rax + 0x10]
mov qword [rdi + 0x10], rcx
mov rcx, rbx
call fcn.1800a5800
mov rcx, rax
test rax, rax
je 0x1800f4702
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov r9d, 0x10
mov rdx, rdi
movups xmmword [rcx + 0x10], xmm0
movups xmmword [rcx + 0x20], xmm0
movups xmmword [rcx + 0x30], xmm0
mov qword [rcx + 0x40], rax
mov rax, 0xffffffffffffffff
mov word [rcx + 0x32], ax
lea rax, [rcx + 0x48]
mov qword [rcx + 8], rax
mov byte [rcx], 0xad
mov byte [rax], r12b
mov eax, 1
mov dword [rcx + 0x28], eax
mov eax, dword [rbp + 0xa8]
mov qword [rdi + 0x18], rcx
mov dword [rcx + 0x2c], eax
mov rcx, qword [rbp + 0xb0]
mov r8d, dword [rcx + 0x18]
mov rcx, qword [rbp + 0x90]
call fcn.1800ac770
jmp 0x1800f4706
mov qword [rdi + 0x18], rcx
mov rdx, rdi
mov qword [rdi + 0x10], r12
mov rcx, rbx
call fcn.1800ac450
mov r11d, 0x48
mov ecx, dword [rbp + 0xa8]
mov r9, qword [rbp + 0xb0]
dec ecx
sub r13, 8
mov dword [rbp + 0xa8], ecx
sub esi, 1
jns 0x1800f42f0
jmp 0x1800f640f
test dl, 5
setne cl
bt edx, 8
setb al
test al, cl
je 0x1800f482e
mov rax, qword [r15 + 0x38]
xor r9d, r9d
mov r8, qword [rbp + 0xb0]
mov rcx, r11
mov rbx, qword [rax]
inc dword [r11 + 0x38]
mov rdx, rbx
mov edi, dword [r11 + 0x38]
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], r10d
call fcn.18002d980
mov edx, eax
cmp eax, edi
je 0x1800f47a7
test edi, edi
je 0x1800f47a7
mov rcx, qword [rbp + 0x90]
movzx eax, byte [rcx + 0x1f]
cmp al, 8
jae 0x1800f47a7
mov dword [rcx + rax*4 + 0xd4], edi
inc byte [rcx + 0x1f]
mov r9, qword [rbp + 0xb0]
movsxd rcx, dword [r14 + 0x90]
mov r8d, dword [r9 + 0x10]
cmp dword [r14 + 0x94], ecx
jg 0x1800f47e2
mov dword [rsp + 0x20], edx
mov r9d, r8d
mov r8d, r13d
mov edx, 0x1f
mov rcx, r14
call fcn.180078790
mov r9, qword [rbp + 0xb0]
jmp 0x1800f4811
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov dword [rax + rcx*8], 0x1f
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r12
mov byte [r9 + 0x35], 0xad
mov rax, qword [rbx + 0x38]
test qword [r9 + 0x58], rax
jne 0x1800f640f
or word [rbx + 0x12], 4
jmp 0x1800f640f
mov eax, edx
and eax, 0x102
cmp eax, 0x102
jne 0x1800f4aa3
mov r8, qword [rbp - 0x80]
mov r13d, 0xad
mov dword [rsp + 0x68], r12d
mov r15d, r13d
mov rdi, r12
mov rbx, r12
test dl, 0x20
je 0x1800f486b
mov rax, qword [r8 + 0x38]
mov ecx, 8
mov rbx, qword [rax]
jmp 0x1800f486e
mov rcx, r12
test dl, 0x10
je 0x1800f487b
mov rax, qword [r8 + 0x38]
mov rdi, qword [rcx + rax]
test r10d, r10d
je 0x1800f4889
mov rax, rbx
mov rbx, rdi
mov rdi, rax
test rbx, rbx
je 0x1800f496d
mov rsi, qword [rbx]
mov dword [rbp + 0xa8], 0x18161719
mov rdx, qword [rsi + 0x18]
mov rcx, rdx
call fcn.1800ad1d0
test eax, eax
je 0x1800f4902
movzx eax, byte [r11 + 0x1f]
test al, al
jne 0x1800f48c2
inc dword [r11 + 0x38]
mov ebx, dword [r11 + 0x38]
jmp 0x1800f48d3
dec al
movzx eax, al
mov byte [r11 + 0x1f], al
mov ebx, dword [r11 + rax*4 + 0xd4]
mov rdx, qword [rsi + 0x18]
mov r9d, 1
mov r8d, ebx
mov rcx, r11
call fcn.18002e110
movzx eax, byte [rsi]
mov r13d, ebx
inc rax
and eax, 2
or rax, 1
movzx ecx, byte [rbp + rax + 0xa8]
jmp 0x1800f492f
lea r8, [rsp + 0x74]
mov rcx, r11
call fcn.1800abde0
mov rcx, qword [rbp + 0xb0]
mov rdx, rbx
mov r13d, eax
call fcn.1800336f0
movzx r10d, byte [rsi]
mov ebx, dword [rsp + 0x74]
movzx ecx, byte [rbp + r10 + 0x72]
mov esi, dword [rsp + 0x64]
mov r9d, esi
mov r8d, dword [rsp + 0x48]
movzx edx, cl
mov rcx, r14
mov dword [rsp + 0x20], r13d
call fcn.1800e1b90
mov rcx, qword [rbp + 0x90]
mov r13d, r15d
test ebx, ebx
je 0x1800f498e
movzx eax, byte [rcx + 0x1f]
cmp al, 8
jae 0x1800f498e
mov dword [rcx + rax*4 + 0xd4], ebx
inc byte [rcx + 0x1f]
jmp 0x1800f498e
mov r8d, dword [rsp + 0x48]
mov edx, r10d
xor edx, 1
mov rcx, r14
lea edx, [rdx*4 + 0x21]
call fcn.1800e1b20
mov rcx, qword [rbp + 0x90]
test rdi, rdi
je 0x1800f4a04
mov rbx, qword [rdi]
mov r9d, 1
inc dword [rcx + 0x38]
mov eax, dword [rcx + 0x38]
mov r8d, eax
mov dword [rsp + 0x68], eax
mov rdx, qword [rbx + 0x18]
call fcn.18002e110
mov rdx, qword [rbx + 0x18]
mov rcx, rdx
call fcn.1800ad1d0
test eax, eax
jne 0x1800f49dc
movzx eax, byte [rbx]
sub al, 0x36
test al, 0xfd
jne 0x1800f49dc
mov eax, dword [rsp + 0x58]
xor eax, 1
lea r15d, [rax*2 + 0x37]
jmp 0x1800f49e9
mov rax, qword [rsp + 0x58]
lea r15d, [rax*2 + 0x36]
mov rcx, rdx
call fcn.1800ad1d0
test eax, eax
jne 0x1800f4a04
mov rcx, qword [rbp + 0xb0]
mov rdx, rdi
call fcn.1800336f0
mov r9, qword [rbp + 0xb0]
mov ecx, dword [r14 + 0x90]
cmp dword [rsp + 0x58], r12d
sete al
mov dword [r9 + 0x3c], ecx
add al, 4
mov byte [r9 + 0x35], al
mov eax, dword [rsp + 0x48]
mov dword [r9 + 0x38], eax
cmp r15d, r13d
je 0x1800f640f
mov rdi, qword [rbp + 0x90]
mov r8d, eax
mov edx, 0x7f
mov rcx, r14
inc dword [rdi + 0x38]
mov ebx, dword [rdi + 0x38]
mov r9d, ebx
call fcn.1800e1b20
mov r8d, dword [rsp + 0x68]
mov r9d, esi
mov edx, r15d
mov dword [rsp + 0x20], ebx
mov rcx, r14
call fcn.1800e1b90
movsxd rax, dword [r14 + 0x90]
mov r9, qword [rbp + 0xb0]
mov r8, qword [rbp + 0xa0]
test eax, eax
jle 0x1800f6416
lea rcx, [rax + rax*2]
mov edx, 0x53
mov rax, qword [r14 + 0x88]
mov word [rax + rcx*8 - 0x16], dx
jmp 0x1800f6416
bt edx, 9
jae 0x1800f5701
mov rcx, qword [rbp - 0x80]
xor r13b, r13b
movzx r15d, word [r15 + 0x18]
mov ebx, r12d
mov qword [rbp - 0x68], r12
mov rsi, r12
mov qword [rbp - 0x50], r12
mov r8d, r15d
mov rax, qword [rcx + 0x20]
mov r10, rcx
movzx edi, word [rcx + 0x1a]
movzx r9d, word [rcx + 0x1c]
mov qword [rsp + 0x78], rax
mov rax, qword [rbp + 0xb0]
mov word [rsp + 0x4c], di
mov word [rsp + 0x6c], r9w
mov qword [rbp - 0x78], r12
mov eax, dword [rax + 8]
mov dword [rsp + 0x44], eax
mov eax, r15d
mov dword [rsp + 0x50], eax
mov byte [rbp + 0xa8], r13b
mov byte [rsp + 0x60], bl
mov dword [rsp + 0x54], r12d
test dl, 0x20
je 0x1800f4b29
mov rax, qword [rcx + 0x38]
inc r8d
mov ebx, edi
mov rsi, qword [rax + r15*8]
mov qword [rbp - 0x68], rsi
test dl, 0x10
je 0x1800f4bf1
mov rax, qword [r10 + 0x38]
cmp ebx, r9d
mov ecx, r8d
mov edi, r9d
cmova edi, ebx
mov r10, qword [rax + rcx*8]
mov eax, 0x100
mov qword [rbp - 0x50], r10
test word [r10 + 0x12], ax
je 0x1800f4ba7
mov r9d, dword [r11 + 0x38]
mov edx, 0x45
mov rbx, qword [rbp + 0xb0]
inc r9d
mov dword [r11 + 0x38], r9d
mov rcx, r14
lea r8d, [rdx - 0x44]
mov dword [rbx + 0x2c], r9d
call fcn.1800e1b20
mov eax, dword [r14 + 0x90]
mov ecx, r12d
shl dword [rbx + 0x2c], 1
mov r9, qword [rsp + 0x78]
mov dword [rbx + 0x30], eax
mov rax, qword [r9 + 0x38]
cmp byte [r15 + rax], 1
sete cl
xor ecx, dword [rsp + 0x58]
or dword [rbx + 0x2c], ecx
jmp 0x1800f4bac
mov r9, qword [rsp + 0x78]
mov rdx, r15
mov ebx, edi
test rsi, rsi
jne 0x1800f4bec
mov rax, qword [r9 + 8]
movsx r8, word [rax + rdx*2]
test r8d, r8d
js 0x1800f4bda
mov rax, qword [r9 + 0x18]
mov rdx, r8
shl rdx, 5
mov rcx, qword [rax + 8]
cmp byte [rdx + rcx + 0x18], r12b
je 0x1800f4be0
cmp r8d, 0xfffffffe
jne 0x1800f4bec
mov r13b, 1
mov ebx, edi
mov byte [rbp + 0xa8], r13b
movzx edi, word [rsp + 0x4c]
mov rax, qword [rbp - 0x80]
mov r10, qword [rbp + 0x90]
mov r11, qword [rbp + 0xb0]
mov eax, dword [rax + 0x28]
test al, 0x30
jne 0x1800f4c5f
bt eax, 0x13
jae 0x1800f4c5f
inc dword [r10 + 0x38]
mov ebx, 1
movzx r13d, bl
mov eax, dword [r10 + 0x38]
mov byte [rbp + 0xa8], bl
mov dword [rsp + 0x54], eax
mov dword [r11 + 0x24], eax
cmp dword [r11], r12d
je 0x1800f4c53
mov r9d, eax
lea edx, [rbx + 0x44]
xor r8d, r8d
mov rcx, r14
call fcn.1800e1b20
mov r10, qword [rbp + 0x90]
mov r11, qword [rbp + 0xb0]
dec dword [r10 + 0x44]
mov eax, dword [r10 + 0x44]
mov dword [r11 + 0x28], eax
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x58]
movzx r8d, word [rax + 0x5e]
cmp r15w, r8w
jae 0x1800f4c86
mov rax, qword [rax + 0x38]
mov edx, r12d
cmp byte [r15 + rax], r12b
sete dl
cmp ecx, edx
je 0x1800f4c90
test ecx, ecx
je 0x1800f4cc4
cmp r8w, r15w
jne 0x1800f4cc4
mov rdx, qword [rbp - 0x50]
movzx eax, dil
movzx edi, word [rsp + 0x6c]
mov qword [rbp - 0x50], rsi
mov rsi, rdx
mov byte [rsp + 0x60], r13b
movzx r13d, ax
mov word [rsp + 0x4c], di
mov qword [rbp - 0x68], rdx
mov byte [rbp + 0xa8], r12b
mov word [rsp + 0x6c], ax
jmp 0x1800f4cca
movzx r13d, word [rsp + 0x6c]
lea rax, [rbp - 0x70]
mov r8d, ecx
mov rcx, r10
mov qword [rsp + 0x20], rax
mov r9d, ebx
mov rdx, r11
call fcn.18002ce10
mov r8d, eax
mov dword [rsp + 0x40], eax
mov rax, qword [rbp - 0x70]
test rax, rax
je 0x1800f4d5b
test r13w, r13w
je 0x1800f4d5b
mov rdi, r15
add rdi, rax
jne 0x1800f4d08
mov qword [rbp - 0x78], r12
jmp 0x1800f4d56
mov rbx, 0xffffffffffffffff
nop
inc rbx
cmp byte [rdi + rbx], r12b
jne 0x1800f4d10
mov rax, qword [rbp - 0x58]
inc rbx
test rax, rax
je 0x1800f4d32
mov rdx, rbx
mov rcx, rax
call fcn.1800a5800
jmp 0x1800f4d3a
mov rcx, rbx
call fcn.1800ca1d0
mov qword [rbp - 0x78], rax
test rax, rax
je 0x1800f4d51
mov r8, rbx
mov rdx, rdi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov r8d, dword [rsp + 0x40]
movzx edi, word [rsp + 0x4c]
mov edx, dword [rsp + 0x54]
mov rax, qword [rbp + 0xb0]
test edx, edx
je 0x1800f4d6f
mov eax, dword [rax + 0x28]
jmp 0x1800f4d72
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x4c], eax
test rsi, rsi
je 0x1800f4d8d
test byte [rsi + 0x14], 0x28
jne 0x1800f4d8d
mov dword [rsp + 0x70], r12d
mov ecx, 1
jmp 0x1800f4d96
mov ecx, 1
mov dword [rsp + 0x70], ecx
mov rax, qword [rbp - 0x50]
test rax, rax
je 0x1800f4daa
test byte [rax + 0x14], 0x28
mov dword [rsp + 0x64], r12d
je 0x1800f4dae
mov dword [rsp + 0x64], ecx
mov r10d, 0x48
test rsi, rsi
jne 0x1800f4e02
test r15w, r15w
jne 0x1800f4e02
mov dword [rsp + 0x68], r12d
mov ecx, r15d
movzx ebx, byte [rbp + 0xa8]
mov r13d, ecx
test bl, bl
je 0x1800f4f0d
mov dword [rsp + 0x70], r12d
lea r9d, [r8 + r15]
mov edx, r10d
xor r8d, r8d
mov rcx, r14
call fcn.1800e1b20
inc r13d
mov dword [rsp + 0x50], r15d
mov esi, 1
jmp 0x1800f4f1e
mov dword [rsp + 0x68], ecx
mov ecx, r15d
mov r13d, r15d
test rsi, rsi
je 0x1800f4dc7
mov rax, qword [rsi]
lea esi, [r15 + r8]
mov rcx, qword [rbp + 0x90]
mov r8d, esi
movzx edi, di
mov r9d, edi
mov rbx, qword [rax + 0x18]
mov rdx, rbx
call fcn.18002e110
mov rax, qword [rbp - 0x68]
mov ecx, 0x100
test word [rax + 0x12], cx
je 0x1800f4e8c
mov rax, qword [r14]
mov ecx, dword [r14 + 0x90]
dec ecx
cmp byte [rax + 0x61], r12b
je 0x1800f4e5e
lea rcx, [0x18014c150]
jmp 0x1800f4e70
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x88]
lea rcx, [rax + rcx*8]
mov rdx, qword [rbp + 0xb0]
mov eax, dword [rdx + 0x2c]
shr eax, 1
mov dword [rcx + 0xc], eax
movzx eax, byte [rdx + 0x2c]
and al, 1
movzx eax, al
mov word [rcx + 2], ax
mov rcx, rbx
call fcn.1800a8d10
test eax, eax
je 0x1800f4ead
mov r9d, dword [rsp + 0x4c]
mov r8d, esi
mov edx, 0x32
mov rcx, r14
call fcn.1800e1b20
mov rax, qword [rbp - 0x70]
test rax, rax
je 0x1800f4ec4
lea r8, [rax + r15]
mov edx, edi
mov rcx, rbx
call fcn.1801062b0
movzx eax, byte [rbx]
add r13d, edi
cmp al, 0xad
jne 0x1800f4ed2
movzx eax, byte [rbx + 2]
cmp al, 0xae
jne 0x1800f4edc
mov rax, qword [rbx + 0x20]
jmp 0x1800f4ee8
cmp al, 0x88
jne 0x1800f4ef9
mov rax, qword [rbx + 0x20]
mov rax, qword [rax + 0x20]
cmp dword [rax], 1
jle 0x1800f4ef9
mov dword [rsp + 0x70], 1
xor bl, bl
jmp 0x1800f4f1a
mov rdx, qword [rbp - 0x68]
mov rcx, qword [rbp + 0xb0]
call fcn.1800336f0
xor bl, bl
jmp 0x1800f4f1a
mov dword [rsp + 0x50], r15d
test edx, edx
jne 0x1800f4dde
mov esi, dword [rsp + 0x68]
mov r10, qword [rbp - 0x70]
mov r9d, r13d
movzx edi, bl
mov ebx, dword [rsp + 0x40]
sub r9d, edi
mov dword [rbp + 0xa8], edi
mov r8d, ebx
test r10, r10
je 0x1800f4fa3
test r9d, r9d
jle 0x1800f4f56
cmp byte [r10], 0x41
jg 0x1800f4f56
dec r9d
inc r8d
inc r10
test r9d, r9d
jg 0x1800f4f42
movsxd rax, r9d
cmp rax, 1
jle 0x1800f4f7a
lea rdx, [r10 - 1]
add rdx, rax
cmp byte [rdx], 0x41
jg 0x1800f4f7a
dec r9d
dec rax
dec rdx
cmp rax, 1
jg 0x1800f4f66
test r9d, r9d
jle 0x1800f4fa3
mov rax, qword [rbp + 0x90]
mov edx, 0x5a
mov dword [rsp + 0x30], r9d
mov qword [rsp + 0x28], r10
mov dword [rsp + 0x20], r12d
mov rcx, qword [rax + 0x10]
call fcn.1800e1c00
mov rcx, qword [rbp - 0x80]
lea r15, [0x180000000]
movzx eax, word [rcx + 0x2e]
test ax, ax
je 0x1800f4fc0
cmp r13d, eax
je 0x1800f5091
test dword [rcx + 0x28], 0x40000
je 0x1800f4fdb
mov r8d, dword [rsp + 0x44]
mov edx, 0x76
mov rcx, r14
call fcn.1800e1ab0
mov eax, dword [rsp + 0x54]
test eax, eax
je 0x1800f4ff7
mov edx, 0x45
mov r9d, eax
mov rcx, r14
lea r8d, [rdx - 0x44]
call fcn.1800e1b20
mov rcx, qword [rsp + 0x58]
mov ebx, dword [rsp + 0x70]
mov r8d, dword [rsp + 0x44]
mov dword [rsp + 0x28], r13d
lea eax, [rbx + rsi*2]
mov esi, dword [rsp + 0x4c]
lea ecx, [rcx + rax*2]
mov r9d, esi
movzx edx, byte [rcx + r15 + 0x122218]
mov rcx, r14
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x20], eax
call fcn.1800e1d30
mov eax, dword [rsp + 0x54]
test eax, eax
je 0x1800f5097
mov r9d, dword [r14 + 0x90]
xor r8d, r8d
add r9d, 2
mov rcx, r14
lea edx, [r8 + 0xb]
call fcn.1800e1b20
mov r8d, dword [rsp + 0x44]
mov eax, 2
mov edx, 6
mov ecx, r13d
sub ecx, ebx
mov r9d, esi
mov ebx, dword [rsp + 0x40]
cmp r13d, 1
mov dword [rsp + 0x28], ecx
mov rcx, r14
cmova eax, edx
mov dword [rsp + 0x20], ebx
add eax, dword [rsp + 0x58]
movzx edx, byte [rax + r15 + 0x122218]
call fcn.1800e1d30
mov eax, dword [rsp + 0x54]
jmp 0x1800f509b
mov ebx, dword [rsp + 0x40]
mov r13, qword [rbp - 0x50]
test r13, r13
je 0x1800f5222
mov rax, qword [r13]
movzx esi, word [rsp + 0x6c]
add ebx, dword [rsp + 0x50]
mov r9d, esi
mov rcx, qword [rbp + 0x90]
mov r8d, ebx
mov rdi, qword [rax + 0x18]
mov rdx, rdi
call fcn.18002e110
mov eax, 0x100
test word [r13 + 0x12], ax
je 0x1800f5123
mov rax, qword [r14]
mov ecx, dword [r14 + 0x90]
dec ecx
cmp byte [rax + 0x61], r12b
je 0x1800f50f5
lea rcx, [0x18014c150]
jmp 0x1800f5107
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x88]
lea rcx, [rax + rcx*8]
mov rdx, qword [rbp + 0xb0]
mov eax, dword [rdx + 0x2c]
shr eax, 1
mov dword [rcx + 0xc], eax
movzx eax, byte [rdx + 0x2c]
and al, 1
movzx eax, al
mov word [rcx + 2], ax
mov rcx, rdi
call fcn.1800a8d10
test eax, eax
je 0x1800f5144
mov r9d, dword [rsp + 0x4c]
mov r8d, ebx
mov edx, 0x32
mov rcx, r14
call fcn.1800e1b20
mov r13, qword [rbp - 0x78]
test r13, r13
je 0x1800f51d1
mov r8, r13
mov edx, esi
mov rcx, rdi
call fcn.1801062b0
mov r11, r13
mov r9d, esi
test esi, esi
je 0x1800f517b
cmp byte [r11], 0x41
jg 0x1800f517b
dec r9d
inc ebx
inc r11
test r9d, r9d
jg 0x1800f5168
movsxd rax, r9d
cmp rax, 1
jle 0x1800f51a5
lea r10, [r11 - 1]
add r10, rax
nop dword [rax + rax]
cmp byte [r10], 0x41
jg 0x1800f51a5
dec r9d
dec rax
dec r10
cmp rax, 1
jg 0x1800f5190
test r9d, r9d
jle 0x1800f51d1
mov rax, qword [rbp + 0x90]
mov r8d, ebx
mov dword [rsp + 0x30], r9d
mov edx, 0x5a
mov qword [rsp + 0x28], r11
mov dword [rsp + 0x20], r12d
mov rcx, qword [rax + 0x10]
call fcn.1800e1c00
mov ebx, dword [rsp + 0x50]
movzx eax, byte [rdi]
add ebx, esi
cmp al, 0xad
jne 0x1800f51e2
movzx eax, byte [rdi + 2]
cmp al, 0xae
jne 0x1800f51ec
mov rax, qword [rdi + 0x20]
jmp 0x1800f51f8
cmp al, 0x88
jne 0x1800f520a
mov rax, qword [rdi + 0x20]
mov rax, qword [rax + 0x20]
cmp dword [rax], 1
jle 0x1800f520a
mov edi, dword [rbp + 0xa8]
mov esi, 1
jmp 0x1800f5266
mov rdx, qword [rbp - 0x50]
mov rcx, qword [rbp + 0xb0]
call fcn.1800336f0
mov edi, dword [rbp + 0xa8]
jmp 0x1800f5262
mov ebx, dword [rsp + 0x50]
cmp byte [rsp + 0x60], r12b
je 0x1800f525e
test eax, eax
jne 0x1800f5252
mov r9d, dword [rsp + 0x40]
lea edx, [rax + 0x48]
add r9d, ebx
xor r8d, r8d
mov rcx, r14
call fcn.1800e1b20
mov r13, qword [rbp - 0x78]
inc ebx
mov esi, r12d
jmp 0x1800f5266
mov esi, dword [rsp + 0x64]
inc ebx
mov r13, qword [rbp - 0x78]
jmp 0x1800f5266
mov r13, qword [rbp - 0x78]
mov esi, dword [rsp + 0x64]
mov rax, qword [rbp - 0x70]
test rax, rax
je 0x1800f527b
mov rcx, qword [rbp - 0x58]
mov rdx, rax
call fcn.1800a5670
test r13, r13
je 0x1800f5341
mov rcx, qword [rbp - 0x58]
test rcx, rcx
je 0x1800f52e6
cmp qword [rcx + 0x2d8], r12
je 0x1800f52a3
mov rdx, r13
call fcn.18007fd50
jmp 0x1800f5341
cmp r13, qword [rcx + 0x1c8]
jae 0x1800f52e6
cmp r13, qword [rcx + 0x1b8]
jb 0x1800f52c9
mov rax, qword [rcx + 0x1b0]
mov qword [r13], rax
mov qword [rcx + 0x1b0], r13
jmp 0x1800f5341
cmp r13, qword [rcx + 0x1c0]
jb 0x1800f52e6
mov rax, qword [rcx + 0x1a0]
mov qword [r13], rax
mov qword [rcx + 0x1a0], r13
jmp 0x1800f5341
cmp dword [0x180147090], r12d
je 0x1800f5338
mov rcx, qword [0x18014be20]
test rcx, rcx
je 0x1800f5301
call qword [0x180147110]
mov rcx, r13
call qword [0x1801470c8]
dec qword [0x18014bdb8]
movsxd rcx, eax
sub qword [0x18014bd70], rcx
mov rcx, r13
call qword [0x1801470b8]
mov rcx, qword [0x18014be20]
test rcx, rcx
je 0x1800f5341
call qword [0x180147120]
jmp 0x1800f5341
mov rcx, r13
call qword [0x1801470b8]
mov rcx, qword [rbp + 0xb0]
mov eax, dword [r14 + 0x90]
mov r13d, dword [rsp + 0x54]
mov dword [rcx + 0x3c], eax
test ebx, ebx
je 0x1800f53ae
test r13d, r13d
je 0x1800f537b
mov r9d, dword [r14 + 0x90]
mov r8d, r13d
add r9d, 3
mov edx, 0x14
mov rcx, r14
call fcn.1800e1b20
mov rax, qword [rsp + 0x58]
mov rcx, r14
mov r8d, dword [rsp + 0x44]
mov dword [rsp + 0x28], ebx
lea eax, [rsi + rax*2]
mov esi, dword [rsp + 0x4c]
movzx edx, byte [rax + r15 + 0x1214d4]
mov r9d, esi
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x20], eax
call fcn.1800e1d30
jmp 0x1800f53b2
mov esi, dword [rsp + 0x4c]
test r13d, r13d
je 0x1800f5409
mov r9d, dword [r14 + 0x90]
mov r8d, r13d
add r9d, 2
mov edx, 0x12
mov rcx, r14
call fcn.1800e1b20
mov rax, qword [rsp + 0x58]
lea r8d, [rdi + rbx]
mov r13d, dword [rsp + 0x44]
mov r9d, esi
mov dword [rsp + 0x28], r8d
mov rcx, r14
mov r8d, r13d
lea eax, [rdi + rax*2]
movzx edx, byte [rax + r15 + 0x1214d4]
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x20], eax
call fcn.1800e1d30
jmp 0x1800f540e
mov r13d, dword [rsp + 0x44]
mov rdi, qword [rbp - 0x80]
test dword [rdi + 0x28], 0x40000
je 0x1800f5445
movsxd rcx, dword [r14 + 0x90]
cmp dword [r14 + 0x94], ecx
jg 0x1800f546e
mov r9d, 1
mov dword [rsp + 0x20], r12d
mov r8d, r13d
mov rcx, r14
lea edx, [r9 + 0x75]
call fcn.180078790
mov edx, 1
test byte [rdi + 0x28], 0x40
je 0x1800f54a0
mov rbx, qword [rbp + 0xa0]
test byte [rbx + 0x3c], 0x20
jne 0x1800f54a0
mov esi, dword [rsp + 0x48]
mov r15d, edx
mov r10, qword [rsp + 0x78]
jmp 0x1800f566d
lea eax, [rcx + 1]
mov edx, 1
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov dword [rax + rcx*8], 0x76
mov dword [rax + rcx*8 + 4], r13d
mov qword [rax + rcx*8 + 8], rdx
mov qword [rax + rcx*8 + 0x10], r12
jmp 0x1800f544a
mov r10, qword [rsp + 0x78]
mov r15d, r12d
mov rbx, qword [r10 + 0x18]
test byte [rbx + 0x40], 0x80
jne 0x1800f553a
mov rbx, qword [rbp + 0xa0]
movzx eax, word [rbx + 0x3c]
bt ax, 0xa
jb 0x1800f54fb
bt ax, 0xc
jae 0x1800f54dc
cmp byte [rbx + 0x42], 1
je 0x1800f54fb
cmp word [rdi + 0x2c], r12w
je 0x1800f54fb
mov esi, dword [rsp + 0x48]
mov r9d, r13d
mov r8d, esi
mov rdx, r10
mov rcx, rbx
call fcn.18002d6a0
mov r10, qword [rsp + 0x78]
jmp 0x1800f566d
mov rax, qword [rbp + 0x90]
mov r8d, r13d
mov edx, 0x86
mov rcx, r14
inc dword [rax + 0x38]
mov ebx, dword [rax + 0x38]
mov r9d, ebx
call fcn.1800e1b20
mov esi, dword [rsp + 0x48]
xor r9d, r9d
mov r8d, esi
mov dword [rsp + 0x20], ebx
mov rcx, r14
lea edx, [r9 + 0x20]
call fcn.1800e1b90
jmp 0x1800f5661
mov esi, dword [rsp + 0x48]
cmp esi, r13d
je 0x1800f5666
mov rbx, qword [rbx + 0x10]
test rbx, rbx
je 0x1800f5562
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x1800f5562
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x1800f5550
movzx edx, word [rbx + 0x5e]
mov rcx, qword [rbp + 0x90]
call fcn.1800c4a30
mov esi, eax
mov edi, r12d
movzx eax, word [rbx + 0x5e]
cmp r12w, ax
jae 0x1800f563a
mov r15, 0xffffffffffffffff
nop dword [rax]
movzx r8d, word [r10 + 0x60]
mov edx, r12d
test r8d, r8d
je 0x1800f55c1
mov rax, qword [rbx + 8]
mov r9, qword [r10 + 8]
movsxd rcx, edi
movzx r10d, word [rax + rcx*2]
nop dword [rax]
movsxd rax, edx
cmp r10w, word [r9 + rax*2]
je 0x1800f55c5
inc edx
cmp edx, r8d
jl 0x1800f55b0
movzx edx, r15w
movsxd rcx, dword [r14 + 0x90]
movsx r8d, dx
lea edx, [rdi + rsi]
cmp dword [r14 + 0x94], ecx
jg 0x1800f55f5
mov dword [rsp + 0x20], edx
mov r9d, r8d
mov r8d, r13d
mov edx, 0x59
mov rcx, r14
call fcn.180078790
jmp 0x1800f5624
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov dword [rax + rcx*8], 0x59
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r12
movzx eax, word [rbx + 0x5e]
inc edi
mov r10, qword [rsp + 0x78]
cmp edi, eax
jl 0x1800f5590
mov r15d, r12d
mov r9d, dword [rbp - 0x60]
mov edx, 0x1d
movzx eax, ax
mov rcx, r14
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], esi
mov esi, dword [rsp + 0x48]
mov r8d, esi
call fcn.1800e1d30
mov rdi, qword [rbp - 0x80]
mov r10, qword [rsp + 0x78]
mov rbx, qword [rbp + 0xa0]
mov rax, qword [rbp + 0xb0]
cmp dword [rax], r12d
jne 0x1800f56a8
test byte [rbx + 0x3c], 0x20
jne 0x1800f568f
mov r9, rbx
mov r8d, r13d
mov edx, esi
mov rcx, r10
call fcn.18010f1e0
mov rcx, qword [rsp + 0x78]
mov rcx, qword [rcx + 0x48]
test rcx, rcx
je 0x1800f56a8
lea r8, [rbx + 0x68]
mov edx, esi
call fcn.18010ed80
mov r9, qword [rbp + 0xb0]
mov eax, 0x1000
test dword [rdi + 0x28], eax
je 0x1800f56c0
mov byte [r9 + 0x35], 0xad
jmp 0x1800f56ce
cmp dword [rsp + 0x58], r12d
sete al
add al, 4
mov byte [r9 + 0x35], al
mov dword [r9 + 0x38], r13d
movzx eax, byte [rdi + 0x2a]
and al, 1
mov byte [r9 + 0x36], al
test byte [rdi + 0x28], 0xf
jne 0x1800f56e7
mov byte [r9 + 0x37], 1
mov r8, qword [rbp + 0xa0]
test r15d, r15d
je 0x1800f6416
mov qword [rsp + 0x78], r12
jmp 0x1800f6416
bt edx, 0xd
jae 0x1800f63c9
dec dword [r11 + 0x44]
mov r13, r12
inc dword [r11 + 0x38]
mov eax, dword [r11 + 0x34]
mov edx, dword [r11 + 0x38]
mov dword [rsp + 0x74], eax
inc eax
mov dword [r11 + 0x34], eax
mov eax, dword [r11 + 0x44]
mov dword [rsp + 0x68], eax
mov rax, qword [rbp - 0x40]
mov dword [rsp + 0x64], edx
mov qword [rbp - 0x38], r12
mov dword [rsp + 0x50], r12d
mov rcx, qword [rax + 0x20]
mov rax, qword [r15 + 0x38]
mov dword [rsp + 0x40], r12d
mov dword [rsp + 0x70], r12d
mov qword [rbp - 0x68], r12
mov rsi, qword [rax]
mov qword [rbp - 0x70], rcx
mov qword [rbp - 0x20], rsi
mov rax, qword [rsi + 0x28]
mov dword [rbx + 0x38], edx
mov rdx, qword [rbp + 0xa0]
mov qword [rbp - 0x30], rax
mov byte [rbx + 0x35], 0x41
movzx eax, byte [rdx + 0x40]
cmp al, 1
jbe 0x1800f59c8
mov r8, qword [rbp - 0x58]
mov ebx, eax
sub ebx, edi
dec ebx
movsxd rax, ebx
imul rcx, rax, 0x70
add rcx, 0x78
test r8, r8
je 0x1800f5896
movzx eax, word [r8 + 0x17c]
cmp rcx, rax
jbe 0x1800f57e6
cmp dword [r8 + 0x178], r12d
jne 0x1800f57cf
inc dword [r8 + 0x18c]
mov rdx, rcx
mov rcx, r8
call fcn.1800323e0
jmp 0x1800f589b
cmp byte [r8 + 0x61], r12b
je 0x1800f5889
mov r15, r12
mov qword [rsp + 0x58], r12
jmp 0x1800f58a3
cmp rcx, 0x80
ja 0x1800f583a
mov r15, qword [r8 + 0x1b0]
mov qword [rsp + 0x58], r15
test r15, r15
je 0x1800f5816
mov rax, qword [r15]
mov qword [r8 + 0x1b0], rax
inc dword [r8 + 0x188]
jmp 0x1800f58a3
mov r15, qword [r8 + 0x1a8]
mov qword [rsp + 0x58], r15
test r15, r15
je 0x1800f583a
mov rax, qword [r15]
mov qword [r8 + 0x1a8], rax
inc dword [r8 + 0x188]
jmp 0x1800f58a3
mov r15, qword [r8 + 0x1a0]
mov qword [rsp + 0x58], r15
test r15, r15
je 0x1800f585e
mov rax, qword [r15]
mov qword [r8 + 0x1a0], rax
inc dword [r8 + 0x188]
jmp 0x1800f58a3
mov r15, qword [r8 + 0x198]
mov qword [rsp + 0x58], r15
test r15, r15
je 0x1800f5882
mov rax, qword [r15]
inc dword [r8 + 0x188]
mov qword [r8 + 0x198], rax
jmp 0x1800f58a3
inc dword [r8 + 0x190]
mov rdx, rcx
mov rcx, r8
call fcn.1800323e0
jmp 0x1800f589b
call fcn.1800ca1d0
mov r15, rax
mov qword [rsp + 0x58], rax
test r15, r15
jne 0x1800f58b4
mov rax, qword [rbp + 0xb8]
jmp 0x1800f6814
mov rdi, qword [rbp + 0xa0]
lea eax, [rbx + 1]
movzx ecx, al
mov rax, qword [rbp - 0x40]
mov dword [r15 + 4], ecx
mov dword [r15], ecx
movups xmm0, xmmword [rax]
movups xmmword [r15 + 8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [r15 + 0x18], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [r15 + 0x28], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [r15 + 0x38], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [r15 + 0x48], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [r15 + 0x58], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [r15 + 0x68], xmm0
mov r10, qword [rdi + 8]
cmp ebx, 1
jl 0x1800f598c
mov r8, qword [rbp + 0xb0]
lea rdx, [r15 + 0x78]
add r8, 0x94
mov r9d, ebx
nop dword [rax]
movzx eax, byte [r8]
lea rdx, [rdx + 0x70]
imul rcx, rax, 0x70
lea r8, [r8 + 0x60]
movups xmm0, xmmword [rcx + r10 + 8]
movups xmmword [rdx - 0x70], xmm0
movups xmm1, xmmword [rcx + r10 + 0x18]
movups xmmword [rdx - 0x60], xmm1
movups xmm0, xmmword [rcx + r10 + 0x28]
movups xmmword [rdx - 0x50], xmm0
movups xmm1, xmmword [rcx + r10 + 0x38]
movups xmmword [rdx - 0x40], xmm1
movups xmm0, xmmword [rcx + r10 + 0x48]
movups xmmword [rdx - 0x30], xmm0
movups xmm1, xmmword [rcx + r10 + 0x58]
movups xmmword [rdx - 0x20], xmm1
movups xmm0, xmmword [rcx + r10 + 0x68]
movups xmmword [rdx - 0x10], xmm0
sub r9, 1
jne 0x1800f5930
mov r11, qword [rbp + 0x90]
mov rcx, qword [rbp - 0x70]
test byte [rdi + 0x3c], 0x10
mov edx, 0x48
jne 0x1800f5a39
test byte [rcx + 0x40], 0x80
jne 0x1800f59da
inc dword [r11 + 0x38]
xor r8d, r8d
mov eax, dword [r11 + 0x38]
mov rcx, r14
mov r9d, eax
mov dword [rsp + 0x50], eax
call fcn.1800e1b20
jmp 0x1800f5a28
mov r15, qword [rdx + 8]
mov rdi, qword [rbp + 0xa0]
mov qword [rsp + 0x58], r15
jmp 0x1800f5997
mov rbx, qword [rcx + 0x10]
test rbx, rbx
je 0x1800f59f5
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x1800f59f5
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x1800f59e3
mov edi, dword [r11 + 0x34]
mov edx, 0x64
mov r8d, edi
mov dword [rsp + 0x50], edi
mov rcx, r14
lea eax, [rdi + 1]
mov dword [r11 + 0x34], eax
movzx r9d, word [rbx + 0x5e]
call fcn.1800e1b20
mov rcx, qword [rbp + 0x90]
mov rdx, rbx
call fcn.1800efd40
mov rax, qword [rbp + 0x90]
inc dword [rax + 0x38]
mov eax, dword [rax + 0x38]
mov dword [rsp + 0x40], eax
movsxd rdx, dword [r14 + 0x90]
mov dword [rsp + 0x6c], edx
cmp dword [r14 + 0x94], edx
jg 0x1800f5a6c
mov r9d, dword [rsp + 0x64]
xor r8d, r8d
mov rcx, r14
mov dword [rsp + 0x20], r12d
lea edx, [r8 + 0x45]
call fcn.180078790
mov dword [rsp + 0x6c], eax
jmp 0x1800f5a9b
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov edx, dword [rsp + 0x64]
mov dword [r14 + 0x90], eax
mov rax, qword [r14 + 0x88]
mov qword [rax + rcx*8], 0x45
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov rax, qword [rbp - 0x28]
cmp dword [rax + 0x14], 1
jle 0x1800f5c83
mov r15, qword [rbp + 0x90]
mov ebx, r12d
mov r14, qword [rbp - 0x58]
mov rdi, r12
mov r8d, 0x1fff
mov rcx, qword [rax + 0x20]
movsxd rax, ebx
shl rax, 6
add rax, rcx
mov rdx, qword [rdi + rcx]
cmp rax, rsi
je 0x1800f5b15
test byte [rdi + rcx + 0x12], 6
jne 0x1800f5b15
test word [rdi + rcx + 0x14], r8w
je 0x1800f5b15
test rdx, rdx
je 0x1800f5afb
xor r9d, r9d
xor r8d, r8d
mov rcx, r14
call fcn.180036da0
jmp 0x1800f5afe
mov rax, r12
mov r8, rax
mov rdx, r13
mov rcx, r15
call fcn.1800a8870
mov r13, rax
mov r8d, 0x1fff
mov rax, qword [rbp - 0x28]
inc ebx
add rdi, 0x40
cmp ebx, dword [rax + 0x14]
jl 0x1800f5ac0
mov r14, qword [rbp + 0x98]
mov r15, qword [rsp + 0x58]
mov rdi, qword [rbp + 0x90]
mov qword [rbp - 0x68], r13
test r13, r13
je 0x1800f5c8f
mov rcx, qword [rdi]
mov eax, 0x48
cmp ax, word [rcx + 0x17c]
jbe 0x1800f5b8a
cmp dword [rcx + 0x178], r12d
jne 0x1800f5b69
inc dword [rcx + 0x18c]
jmp 0x1800f5c08
cmp byte [rcx + 0x61], r12b
je 0x1800f5c08
mov rbx, r12
mov rcx, qword [rdi]
mov rdx, r13
call fcn.1800ac450
mov qword [rbp - 0x68], rbx
jmp 0x1800f5c92
mov rbx, qword [rcx + 0x1b0]
test rbx, rbx
je 0x1800f5ba8
mov rax, qword [rbx]
mov qword [rcx + 0x1b0], rax
inc dword [rcx + 0x188]
jmp 0x1800f5c1c
mov rbx, qword [rcx + 0x1a8]
test rbx, rbx
je 0x1800f5bc6
mov rax, qword [rbx]
mov qword [rcx + 0x1a8], rax
inc dword [rcx + 0x188]
jmp 0x1800f5c1c
mov rbx, qword [rcx + 0x1a0]
test rbx, rbx
je 0x1800f5be4
mov rax, qword [rbx]
mov qword [rcx + 0x1a0], rax
inc dword [rcx + 0x188]
jmp 0x1800f5c1c
mov rbx, qword [rcx + 0x198]
test rbx, rbx
je 0x1800f5c02
mov rax, qword [rbx]
inc dword [rcx + 0x188]
mov qword [rcx + 0x198], rax
jmp 0x1800f5c1c
inc dword [rcx + 0x190]
mov rdx, rax
call fcn.1800323e0
mov rbx, rax
test rax, rax
je 0x1800f5b76
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov rcx, rbx
movups xmmword [rbx + 0x10], xmm0
movups xmmword [rbx + 0x20], xmm0
movups xmmword [rbx + 0x30], xmm0
mov qword [rbx + 0x40], rax
mov rax, 0xffffffffffffffff
mov word [rbx + 0x32], ax
mov byte [rbx], 0x2c
mov qword [rbx + 0x18], r13
mov eax, dword [r13 + 4]
and eax, 0x200104
or dword [rbx + 4], eax
call fcn.180037ee0
mov rax, qword [rdi]
mov r8d, dword [rax + 0x88]
cmp dword [rbx + 0x28], r8d
jle 0x1800f5b81
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
mov rcx, rdi
call fcn.1800a80e0
mov qword [rbp - 0x68], rbx
jmp 0x1800f5c92
mov rdi, qword [rbp + 0x90]
mov rbx, r12
jmp 0x1800f5c92
mov rbx, r13
mov rax, qword [rbp + 0xa0]
lea r8, str.MULTI_INDEX_OR
mov r13d, 0x400
mov edx, 1
mov rcx, rdi
movzx eax, word [rax + 0x3c]
and ax, r13w
or ax, 0x20
mov word [rbp + 0xa8], ax
call fcn.1800eb760
mov rax, qword [rbp - 0x30]
mov edi, r12d
mov dword [rsp + 0x44], r12d
cmp dword [rax + 0x14], r12d
jle 0x1800f61c3
mov ecx, dword [rsp + 0x48]
mov r13, r12
mov qword [rbp - 0x48], r12
nop word [rax + rax]
mov rax, qword [rax + 0x20]
cmp dword [rax + r13 + 0x1c], ecx
je 0x1800f5d0c
mov edx, 0x400
test word [rax + r13 + 0x14], dx
je 0x1800f619a
mov rbx, qword [rax + r13]
mov esi, r12d
mov rax, qword [rbp - 0x68]
mov dword [rbp - 0x80], r12d
test rax, rax
je 0x1800f5d27
mov qword [rax + 0x10], rbx
mov rbx, rax
mov rcx, qword [rbp + 0x90]
lea r9d, [rdi + 1]
lea r8, str.INDEX__d
mov edx, 1
call fcn.1800eb760
mov eax, dword [rsp + 0x74]
xor r9d, r9d
mov rcx, qword [rbp + 0x90]
mov r8, rbx
mov dword [rsp + 0x30], eax
mov rdx, r15
movzx eax, word [rbp + 0xa8]
mov word [rsp + 0x28], ax
mov qword [rsp + 0x20], r12
call fcn.1800f2bf0
mov qword [rbp - 0x78], rax
mov rbx, rax
test rax, rax
je 0x1800f6196
mov rcx, qword [rbp + 0x90]
lea r8, [rax + 0x398]
xor r9d, r9d
mov rdx, r15
call fcn.1800f75c0
mov rax, qword [rbp + 0xa0]
test byte [rax + 0x3c], 0x10
jne 0x1800f6044
mov rax, qword [rbp - 0x30]
mov ebx, edi
mov ecx, dword [rax + 0x14]
mov rax, 0xffffffffffffffff
dec ecx
cmp edi, ecx
cmove ebx, eax
mov rax, qword [rbp - 0x70]
mov dword [rbp - 0x50], ebx
test byte [rax + 0x40], 0x80
jne 0x1800f5e5e
movsxd rcx, dword [r14 + 0x90]
cmp dword [r14 + 0x94], ecx
jg 0x1800f5e01
mov r9d, dword [rsp + 0x40]
mov edx, 0x7f
mov r8d, dword [rsp + 0x48]
mov rcx, r14
mov dword [rsp + 0x20], r12d
call fcn.180078790
jmp 0x1800f5e37
mov edx, dword [rsp + 0x48]
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x40]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0x7f
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov eax, dword [rsp + 0x40]
xor r9d, r9d
mov r8d, dword [rsp + 0x50]
mov rcx, r14
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], eax
lea edx, [r9 + 0x2d]
call fcn.1800e1d30
mov esi, eax
jmp 0x1800f6040
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x1800f5e79
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x1800f5e79
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x1800f5e67
movzx r13d, word [rbx + 0x5e]
mov rdx, qword [rbp + 0x90]
cmp r13d, 1
jne 0x1800f5eac
movzx eax, byte [rdx + 0x1f]
test al, al
jne 0x1800f5e9b
inc dword [rdx + 0x38]
mov esi, dword [rdx + 0x38]
jmp 0x1800f5ed6
dec al
movzx eax, al
mov byte [rdx + 0x1f], al
mov esi, dword [rdx + rax*4 + 0xd4]
jmp 0x1800f5ed6
mov ecx, dword [rdx + 0x28]
mov esi, dword [rdx + 0x2c]
mov dword [rsp + 0x54], esi
cmp r13d, ecx
jg 0x1800f5eca
lea eax, [rsi + r13]
sub ecx, r13d
mov dword [rdx + 0x2c], eax
mov dword [rdx + 0x28], ecx
jmp 0x1800f5eda
mov eax, dword [rdx + 0x38]
lea esi, [rax + 1]
add eax, r13d
mov dword [rdx + 0x38], eax
mov dword [rsp + 0x54], esi
mov rdi, r12
mov r15, r13
test r13d, r13d
je 0x1800f5f1b
mov r12, qword [rbp - 0x70]
mov r13d, dword [rsp + 0x48]
nop
mov rax, qword [rbx + 8]
mov r8d, r13d
mov rdx, r12
mov dword [rsp + 0x20], esi
mov rcx, r14
movsx r9d, word [rax + rdi*2]
call fcn.1800a9350
inc esi
inc rdi
cmp rdi, r15
jl 0x1800f5ef0
xor r12d, r12d
mov r13d, r15d
mov edi, dword [rbp - 0x50]
mov ebx, dword [rsp + 0x54]
mov r15d, dword [rsp + 0x50]
test edi, edi
je 0x1800f5f52
xor r9d, r9d
mov dword [rsp + 0x28], r13d
mov r8d, r15d
mov dword [rsp + 0x20], ebx
mov rcx, r14
lea edx, [r9 + 0x1e]
call fcn.1800e1d30
mov esi, eax
test edi, edi
js 0x1800f5ff6
jmp 0x1800f5f55
mov esi, dword [rbp - 0x80]
movsxd rcx, dword [r14 + 0x90]
cmp dword [r14 + 0x94], ecx
jg 0x1800f5f82
mov eax, dword [rsp + 0x40]
mov r9d, r13d
mov r8d, ebx
mov dword [rsp + 0x20], eax
mov edx, 0x5b
mov rcx, r14
call fcn.180078790
jmp 0x1800f5fb4
mov edx, dword [rsp + 0x40]
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov dword [rax + rcx*8], 0x5b
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r12
mov r9d, dword [rsp + 0x40]
mov r8d, r15d
mov dword [rsp + 0x28], r13d
mov edx, 0x82
mov rcx, r14
mov dword [rsp + 0x20], ebx
call fcn.1800e1d30
test edi, edi
je 0x1800f5ff6
movsxd rax, dword [r14 + 0x90]
test eax, eax
jle 0x1800f5ff6
lea rcx, [rax + rax*2]
mov edx, 0x10
mov rax, qword [r14 + 0x88]
mov word [rax + rcx*8 - 0x16], dx
mov edi, dword [rsp + 0x44]
mov r15, qword [rsp + 0x58]
cmp r13d, 1
jne 0x1800f6028
test ebx, ebx
je 0x1800f603c
mov rdx, qword [rbp + 0x90]
mov r13, qword [rbp - 0x48]
movzx eax, byte [rdx + 0x1f]
cmp al, 8
jae 0x1800f6040
mov dword [rdx + rax*4 + 0xd4], ebx
inc byte [rdx + 0x1f]
jmp 0x1800f6040
mov rdx, qword [rbp + 0x90]
cmp r13d, dword [rdx + 0x28]
jle 0x1800f603c
mov dword [rdx + 0x28], r13d
mov dword [rdx + 0x2c], ebx
mov r13, qword [rbp - 0x48]
mov rbx, qword [rbp - 0x78]
movsxd rcx, dword [r14 + 0x90]
cmp dword [r14 + 0x94], ecx
jg 0x1800f6072
mov r9d, dword [rsp + 0x68]
mov edx, 0xc
mov r8d, dword [rsp + 0x64]
mov rcx, r14
mov dword [rsp + 0x20], r12d
call fcn.180078790
jmp 0x1800f60a8
mov edx, dword [rsp + 0x64]
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x68]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0xc
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
test esi, esi
je 0x1800f60df
mov edx, dword [r14 + 0x90]
jns 0x1800f60b8
lea esi, [rdx - 1]
mov rax, qword [r14]
cmp byte [rax + 0x61], 0
je 0x1800f60ca
lea rax, [0x18014c150]
jmp 0x1800f60dc
movsxd rax, esi
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
test byte [rbx + 0x44], 2
mov ecx, 1
mov eax, dword [rsp + 0x70]
mov rdx, qword [rbx + 0x3e8]
cmovne eax, ecx
mov dword [rsp + 0x70], eax
mov eax, 0x200
test dword [rdx + 0x28], eax
je 0x1800f6135
test edi, edi
je 0x1800f6112
mov rax, qword [rbp - 0x38]
cmp qword [rdx + 0x20], rax
jne 0x1800f6135
mov rax, qword [rbp - 0x70]
test byte [rax + 0x40], 0x80
je 0x1800f612b
mov rax, qword [rdx + 0x20]
mov ecx, dword [rax + 0x64]
and cl, 3
cmp cl, 2
je 0x1800f6135
mov rsi, qword [rdx + 0x20]
mov qword [rbp - 0x38], rsi
jmp 0x1800f6139
mov qword [rbp - 0x38], r12
mov rcx, rbx
call fcn.1800f6830
mov r8, qword [rbp + 0x90]
mov ecx, dword [r8 + 0x128]
test ecx, ecx
jne 0x1800f6158
mov eax, r12d
jmp 0x1800f618f
mov rdx, qword [r8 + 0x10]
test ecx, ecx
jns 0x1800f6168
mov ecx, dword [rdx + 0x90]
dec ecx
mov rax, qword [rdx]
cmp byte [rax + 0x61], 0
je 0x1800f617a
lea rax, [0x18014c150]
jmp 0x1800f618c
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rdx + 0x88]
lea rax, [rax + rcx*8]
mov eax, dword [rax + 8]
mov dword [r8 + 0x128], eax
mov ecx, dword [rsp + 0x48]
mov rax, qword [rbp - 0x30]
inc edi
add r13, 0x40
mov dword [rsp + 0x44], edi
mov qword [rbp - 0x48], r13
cmp edi, dword [rax + 0x14]
jl 0x1800f5cf0
mov rsi, qword [rbp - 0x20]
mov r13d, 0x400
mov rbx, qword [rbp - 0x68]
mov rdi, qword [rbp + 0x90]
mov ecx, dword [rdi + 0x128]
test ecx, ecx
jne 0x1800f61d9
mov eax, r12d
jmp 0x1800f6210
mov rdx, qword [rdi + 0x10]
test ecx, ecx
jns 0x1800f61e9
mov ecx, dword [rdx + 0x90]
dec ecx
mov rax, qword [rdx]
cmp byte [rax + 0x61], 0
je 0x1800f61fb
lea rax, [0x18014c150]
jmp 0x1800f620d
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rdx + 0x88]
lea rax, [rax + rcx*8]
mov eax, dword [rax + 8]
mov r8, qword [rbp + 0xb0]
mov dword [rdi + 0x128], eax
mov rax, qword [rbp - 0x38]
mov qword [r8 + 0x40], rax
test rax, rax
je 0x1800f6232
mov eax, dword [rsp + 0x74]
mov dword [r8 + 8], eax
test rbx, rbx
je 0x1800f6253
mov qword [rbx + 0x10], r12
mov rdx, rbx
mov rbx, qword [rbp - 0x58]
mov rcx, rbx
call fcn.1800ac450
mov r8, qword [rbp + 0xb0]
jmp 0x1800f6257
mov rbx, qword [rbp - 0x58]
mov ecx, dword [rsp + 0x6c]
mov edx, dword [r14 + 0x90]
test ecx, ecx
jns 0x1800f6269
lea ecx, [rdx - 1]
mov rax, qword [r14]
cmp byte [rax + 0x61], 0
je 0x1800f627b
lea rax, [0x18014c150]
jmp 0x1800f628d
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 4], edx
movsxd rcx, dword [r14 + 0x90]
mov edx, dword [r8 + 0xc]
cmp dword [r14 + 0x94], ecx
jg 0x1800f62bd
xor r8d, r8d
mov dword [rsp + 0x20], r12d
mov r9d, edx
mov rcx, r14
lea edx, [r8 + 0xb]
call fcn.180078790
jmp 0x1800f62e8
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov qword [rax + rcx*8], 0xb
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov rcx, qword [r14 + 0x18]
mov edx, dword [rsp + 0x68]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1800f6307
mov r8d, edx
mov rdx, r14
call fcn.18008e6b0
jmp 0x1800f6318
mov rcx, qword [rcx + 0x50]
mov eax, dword [r14 + 0x90]
movsxd rdx, edx
mov dword [rcx + rdx*4], eax
mov r8, qword [rbp + 0xa0]
cmp byte [r8 + 0x40], 1
jbe 0x1800f633d
test r15, r15
je 0x1800f633d
mov rdx, r15
mov rcx, rbx
call fcn.1800a5670
mov r8, qword [rbp + 0xa0]
cmp dword [rsp + 0x70], 0
mov r9, qword [rbp + 0xb0]
jne 0x1800f6416
test byte [rsi + 0x12], 4
mov edx, r12d
jne 0x1800f6416
nop dword [rax]
cmp dword [r9], 0
je 0x1800f6373
mov rax, qword [rsi]
test byte [rax + 4], 1
je 0x1800f6416
mov rax, qword [rsi + 0x38]
test qword [r9 + 0x58], rax
jne 0x1800f6416
test edx, edx
je 0x1800f639d
movzx eax, word [rsi + 0x12]
test r13w, ax
je 0x1800f639d
mov ecx, 0x200
or ax, cx
mov word [rsi + 0x12], ax
jmp 0x1800f63a2
or word [rsi + 0x12], 4
movsxd rcx, dword [rsi + 0x18]
test ecx, ecx
js 0x1800f6416
mov rax, qword [rsi + 8]
mov rsi, rcx
shl rsi, 6
add rsi, qword [rax + 0x20]
add byte [rsi + 0x16], 0xff
jne 0x1800f6416
inc edx
test byte [rsi + 0x12], 4
je 0x1800f6360
jmp 0x1800f6416
test r8b, 0x20
je 0x1800f63d5
mov byte [rbx + 0x35], 0xad
jmp 0x1800f640c
mov ecx, r10d
lea r15, [0x180000000]
mov r8d, r13d
mov dword [rbx + 0x38], r13d
movzx eax, byte [rcx + r15 + 0x121844]
movzx edx, byte [rcx + r15 + 0x121864]
mov rcx, r14
mov byte [rbx + 0x35], al
call fcn.1800e1b20
inc eax
mov byte [rbx + 0x37], 1
mov dword [rbx + 0x3c], eax
mov r9, rbx
mov r8, qword [rbp + 0xa0]
mov r10, qword [rsp + 0x78]
lea r11, [0x180037230]
mov rax, r10
lea rsi, [r8 + 0x68]
neg rax
sbb edx, edx
add edx, 2
mov dword [rbp + 0xa8], edx
nop word [rax + rax]
mov r15d, dword [rsi + 0x14]
mov r13d, r12d
mov rbx, qword [rsi + 0x20]
test r15d, r15d
jle 0x1800f6628
nop dword [rax]
nop dword [rax + rax]
movzx ecx, word [rbx + 0x12]
mov edi, r12d
test cl, 6
jne 0x1800f65e5
mov rax, qword [rbx + 0x38]
test qword [r9 + 0x58], rax
je 0x1800f6484
or dword [r8 + 0x44], 2
jmp 0x1800f65e5
mov rax, qword [rbp - 0x40]
mov rsi, qword [rbx]
test byte [rax + 0x3c], 8
je 0x1800f649b
test byte [rsi + 4], 1
je 0x1800f65e5
cmp edx, 1
jne 0x1800f64f1
mov eax, dword [r9 + 4]
xorps xmm0, xmm0
mov dword [rbp - 0x18], eax
lea rax, [rbp - 0x20]
mov qword [rbp + 0x18], rax
mov qword [rbp - 0x10], r12
mov qword [rbp + 0x10], r12
mov qword [rbp - 0x20], r10
mov qword [rbp - 8], r11
movdqu xmmword [rbp], xmm0
test rsi, rsi
je 0x1800f64df
mov rdx, rsi
lea rcx, [rbp - 0x10]
call fcn.18010ebb0
mov r9, qword [rbp + 0xb0]
cmp word [rbp + 0x14], 0
je 0x1800f64f6
mov r13d, 2
jmp 0x1800f65e5
cmp edx, 3
jge 0x1800f6515
movzx ecx, word [rbx + 0x12]
bt cx, 0xc
jae 0x1800f6515
test r13d, r13d
jne 0x1800f65e5
mov r13d, 3
jmp 0x1800f65e5
bt cx, 9
jae 0x1800f658e
mov eax, dword [r9 + 0x2c]
test eax, eax
je 0x1800f658e
movsxd rdi, dword [r14 + 0x90]
mov r8d, eax
and eax, 1
shr r8d, 1
lea edx, [rax*2 + 0x12]
cmp dword [r14 + 0x94], edi
jg 0x1800f6558
xor r9d, r9d
mov dword [rsp + 0x20], r12d
mov rcx, r14
call fcn.180078790
mov edi, eax
jmp 0x1800f658e
lea rcx, [rdi + rdi*2]
lea eax, [rdi + 1]
mov dword [r14 + 0x90], eax
mov rax, qword [r14 + 0x88]
mov byte [rax + rcx*8], dl
mov word [rax + rcx*8 + 2], r12w
mov dword [rax + rcx*8 + 4], r8d
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r12
mov byte [rax + rcx*8 + 1], 0
mov r8d, dword [rbp - 0x60]
mov r9d, 0x10
mov rcx, qword [rbp + 0x90]
mov rdx, rsi
call fcn.1800ac770
test edi, edi
je 0x1800f65e0
mov rax, qword [r14]
mov edx, dword [r14 + 0x90]
cmp byte [rax + 0x61], 0
je 0x1800f65c4
lea rax, [0x18014c150]
jmp 0x1800f65dd
lea eax, [rdx - 1]
test edi, edi
cmovns eax, edi
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
or word [rbx + 0x12], 4
mov edx, dword [rbp + 0xa8]
lea r11, [0x180037230]
mov r9, qword [rbp + 0xb0]
dec r15d
mov r8, qword [rbp + 0xa0]
add rbx, 0x40
mov r10, qword [rsp + 0x78]
test r15d, r15d
jg 0x1800f6460
mov rsi, qword [rbp - 0x28]
lea r11, [0x180037230]
mov rbx, qword [rsi + 0x20]
mov r15d, dword [rsi + 0x14]
mov r9, qword [rbp + 0xb0]
mov edx, r13d
mov r8, qword [rbp + 0xa0]
mov dword [rbp + 0xa8], edx
test r13d, r13d
jg 0x1800f6440
test r15d, r15d
jle 0x1800f6752
mov r14, qword [rbp + 0x90]
add rbx, 0x14
mov r13, qword [rbp - 0x40]
test byte [rbx - 2], 6
jne 0x1800f673b
movzx eax, word [rbx]
mov edx, 0xb
test al, 0x82
setne cl
bt ax, dx
setb al
test al, cl
je 0x1800f673b
mov eax, dword [rsp + 0x48]
cmp dword [rbx + 8], eax
jne 0x1800f673b
test byte [r13 + 0x3c], 8
jne 0x1800f673b
mov r9, qword [rbp + 0xb8]
mov edx, eax
mov r8d, dword [rbx + 0x14]
mov rcx, rsi
mov rdi, qword [rbx - 0x14]
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x83
call fcn.1800f7bb0
mov rdx, rax
test rax, rax
je 0x1800f673b
test byte [rax + 0x12], 4
jne 0x1800f673b
test byte [rax + 0x14], 1
je 0x1800f66f1
mov rax, qword [rax]
test dword [rax + 4], 0x800
je 0x1800f66f1
mov rax, qword [rax + 0x20]
mov rcx, qword [rax + 0x20]
cmp dword [rcx], 1
jg 0x1800f673b
mov rax, qword [rdx]
mov r9d, 0x10
mov r8d, dword [rbp - 0x60]
lea rdx, [rbp - 0x10]
mov rcx, r14
movups xmm0, xmmword [rax]
movaps xmmword [rbp - 0x10], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x10], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rbp + 0x20], xmm1
movsd xmm0, qword [rax + 0x40]
movsd qword [rbp + 0x30], xmm0
mov rax, qword [rdi + 0x10]
mov qword [rbp], rax
call fcn.1800ac770
dec r15d
add rbx, 0x40
test r15d, r15d
jg 0x1800f6660
mov r14, qword [rbp + 0x98]
mov rdi, qword [rbp + 0xb0]
mov r9d, dword [rdi]
test r9d, r9d
je 0x1800f6810
mov eax, dword [r14 + 0x90]
mov dword [rdi + 0x1c], eax
movsxd rcx, dword [r14 + 0x90]
cmp dword [r14 + 0x94], ecx
jg 0x1800f6797
mov edx, 0x45
mov dword [rsp + 0x20], r12d
mov rcx, r14
lea r8d, [rdx - 0x44]
call fcn.180078790
jmp 0x1800f67cb
lea eax, [rcx + 1]
mov edx, 1
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov dword [rax + rcx*8], 0x45
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
cmp dword [rsi + 0x14], 0
mov rbx, qword [rsi + 0x20]
jle 0x1800f6810
test byte [rbx + 0x12], 6
jne 0x1800f6803
mov rax, qword [rbx + 0x38]
test qword [rdi + 0x58], rax
jne 0x1800f6803
mov r8d, dword [rbp - 0x60]
mov r9d, 0x10
mov rdx, qword [rbx]
mov rcx, qword [rbp + 0x90]
call fcn.1800ac770
or word [rbx + 0x12], 4
inc r12d
add rbx, 0x40
cmp r12d, dword [rsi + 0x14]
jl 0x1800f67d5
mov rax, qword [rdi + 0x58]
add rsp, 0x148
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret