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

Disassembly:
mov dword [rsp + 0x20], r9d
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 - 0x58]
sub rsp, 0x158
mov rbx, qword [rbp + 0xc0]
lea rax, [r8 + 0x70]
mov rdi, rdx
mov qword [rbp - 0x50], rax
mov rax, qword [rcx]
xor r12d, r12d
mov qword [rbp - 0x80], rax
mov r15d, r9d
movzx eax, byte [rbx + 0x40]
mov r9, r8
mov r14, qword [rbx + 0x60]
mov r11, rcx
imul rdx, rax, 0x68
mov qword [rbp - 0x78], r12
add rdx, 8
mov qword [rsp + 0x68], r14
add rdx, qword [r8 + 8]
mov qword [rbp - 0x38], rdx
mov r10d, dword [rdx + 0x44]
mov dword [rsp + 0x48], r10d
cmp dword [r8 + 0x260], r10d
jne 0x1800c9e2b
lea eax, [r12 + 1]
jmp 0x1800c9e65
movsxd r8, dword [r8 + 0x25c]
mov esi, 1
mov edx, esi
cmp r8, rdx
jle 0x1800c9e5e
mov ecx, esi
lea rax, [r9 + 0x264]
cmp dword [rax], r10d
je 0x1800c9f05
inc edx
inc rcx
add rax, 4
cmp rcx, r8
jl 0x1800c9e47
mov rax, r12
mov rdx, qword [rbp - 0x38]
not rax
mov ecx, r15d
and rax, qword [rbp + 0xc8]
mov qword [rbx + 0x68], rax
mov r13d, dword [r11 + 0x44]
mov r10, qword [r9 + 0x68]
dec r13d
mov dword [r11 + 0x44], r13d
shr r10, cl
and r10d, 1
mov dword [rbx + 0x10], r13d
mov dword [rbx + 0xc], r13d
mov eax, dword [r11 + 0x44]
dec eax
mov qword [rsp + 0x78], r10
mov dword [r11 + 0x44], eax
mov dword [rsp + 0x5c], r13d
mov dword [rbp - 0x58], eax
mov dword [rbx + 0x18], eax
cmp byte [rbx + 0x40], r12b
jbe 0x1800c9f3c
test byte [rdx + 0x3c], 8
je 0x1800c9f3c
mov edx, dword [r11 + 0x38]
inc edx
mov dword [r11 + 0x38], edx
mov dword [rbx], edx
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800c9f12
xor r8d, r8d
mov dword [rsp + 0x20], r12d
mov r9d, edx
mov rcx, rdi
lea edx, [r8 + 0x47]
call fcn.180053f80
mov r10, qword [rsp + 0x78]
mov r11, qword [rbp + 0xa0]
mov r9, qword [rbp + 0xb0]
jmp 0x1800c9f3c
mov ecx, edx
mov rax, rsi
shl rax, cl
jmp 0x1800c9e61
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov edx, r15d
test r15d, r15d
jle 0x1800c9f70
nop dword [rax]
nop dword [rax + rax]
mov eax, edx
imul rcx, rax, 0x70
cmp dword [rcx + r9 + 0x360], r12d
jne 0x1800c9f70
cmp qword [rcx + r9 + 0x398], r12
jne 0x1800c9f70
dec edx
test edx, edx
jg 0x1800c9f50
movsxd rax, edx
imul rcx, rax, 0x70
mov rax, qword [rbp - 0x38]
mov r8d, dword [rax + 0x40]
mov r9d, dword [rcx + r9 + 0x36c]
test r8b, 0x20
je 0x1800ca0c4
movsxd rcx, dword [rdi + 0x90]
mov ebx, dword [rax + 0x34]
mov edx, dword [rax + 0x30]
cmp dword [rdi + 0x94], ecx
jg 0x1800c9fbe
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov r8d, ebx
mov rcx, rdi
lea edx, [r9 + 0xb]
call fcn.180053f80
jmp 0x1800c9feb
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0xb
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 [rdi + 0x90]
cmp dword [rdi + 0x94], edx
jg 0x1800ca016
mov r9d, r13d
mov dword [rsp + 0x20], r12d
mov r8d, ebx
mov edx, 0xc
mov rcx, rdi
call fcn.180053f80
mov edx, eax
jmp 0x1800ca044
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rdi + 0x90], eax
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0xc
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov r9, qword [rbp + 0xc0]
mov dword [r9 + 0x48], edx
mov byte [r9 + 0x41], 9
mov rcx, r12
mov r10, qword [rbp - 0x50]
lea r8, [0x180078270]
mov rax, rcx
neg rax
sbb edx, edx
add edx, 2
mov dword [rbp + 0xb8], edx
nop dword [rax]
nop word [rax + rax]
mov r13d, dword [r10 + 0x14]
mov r15d, r12d
mov rbx, qword [r10 + 0x20]
test r13d, r13d
jle 0x1800cd2ae
movzx r10d, word [rbx + 0x12]
mov esi, r12d
test r10b, 6
jne 0x1800cd277
mov r11, qword [r9 + 0x68]
test qword [rbx + 0x30], r11
je 0x1800cd09a
mov rax, qword [rbp + 0xb0]
or dword [rax + 0x44], 2
jmp 0x1800cd277
mov edx, dword [r14 + 0x38]
bt edx, 0xa
jae 0x1800ca77f
movzx eax, word [r14 + 0x3c]
mov dword [rsp + 0x44], eax
lea ecx, [rax + 2]
cmp ecx, 1
jne 0x1800ca110
movzx eax, byte [r11 + 0x1f]
test al, al
jne 0x1800ca0fd
inc dword [r11 + 0x38]
mov eax, dword [r11 + 0x38]
mov r13d, eax
mov dword [rsp + 0x40], eax
jmp 0x1800ca147
dec al
movzx eax, al
mov byte [r11 + 0x1f], al
mov r13d, dword [r11 + rax*4 + 0xe8]
jmp 0x1800ca142
mov edx, dword [r11 + 0x28]
mov r8d, dword [r11 + 0x2c]
mov dword [rsp + 0x40], r8d
cmp ecx, edx
jg 0x1800ca134
lea eax, [rcx + r8]
sub edx, ecx
mov dword [r11 + 0x2c], eax
mov r13d, r8d
mov dword [r11 + 0x28], edx
jmp 0x1800ca147
mov eax, dword [r11 + 0x38]
lea r13d, [rax + 1]
add eax, ecx
mov dword [r11 + 0x38], eax
mov dword [rsp + 0x40], r13d
mov esi, dword [rbx + 0xc]
mov ebx, r12d
mov dword [rbp + 0xb8], esi
cmp dword [rsp + 0x44], r12d
jbe 0x1800ca30b
add r13d, 2
mov rax, qword [r14 + 0x48]
mov rsi, qword [r12 + rax]
test rsi, rsi
je 0x1800ca2ed
test byte [rsi + 0x14], 1
je 0x1800ca25a
cmp ebx, 0x1f
ja 0x1800ca18d
mov ecx, ebx
mov eax, 1
shl eax, cl
jmp 0x1800ca18f
xor eax, eax
mov rcx, r11
test dword [r14 + 0x30], eax
je 0x1800ca222
mov r14d, dword [r11 + 0x34]
mov r8d, r14d
inc dword [r11 + 0x38]
mov r15d, dword [r11 + 0x38]
lea eax, [r14 + 1]
mov dword [r11 + 0x34], eax
mov rdx, qword [rsi]
call fcn.180070dc0
movsxd rcx, dword [rdi + 0x90]
lea edx, [rbx + r13]
cmp dword [rdi + 0x94], ecx
jg 0x1800ca1f0
mov r9d, edx
mov dword [rsp + 0x20], r15d
mov edx, 0xaf
mov r8d, r14d
mov rcx, rdi
call fcn.180053f80
mov r14, qword [rsp + 0x68]
jmp 0x1800ca2e6
lea eax, [rcx + 1]
xor r8d, r8d
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8 + 4], r14d
mov r14, qword [rsp + 0x68]
mov dword [rax + rcx*8], 0xaf
mov dword [rax + rcx*8 + 0xc], r15d
jmp 0x1800ca2dd
mov r15, qword [rbp + 0xc0]
lea eax, [rbx + r13]
mov dword [rsp + 0x28], eax
mov r8, r15
mov r9d, ebx
mov dword [rsp + 0x20], r10d
mov rdx, rsi
call fcn.1800c8800
mov esi, dword [r15 + 0x10]
mov r11, qword [rbp + 0xa0]
mov dword [rbp + 0xb8], esi
jmp 0x1800ca2f3
mov rdx, qword [rsi]
lea r8d, [rbx + r13]
mov r9d, 1
mov rcx, r11
mov rdx, qword [rdx + 0x18]
call fcn.1800c98c0
cmp byte [rsi + 0x17], 0x4a
jne 0x1800ca2e6
test byte [r14 + 0x1c], 2
je 0x1800ca2e6
mov rax, qword [rbp + 0xb0]
movsxd rcx, dword [rdi + 0x90]
mov rax, qword [rax + 0x20]
mov edx, dword [rax + 0xc]
cmp dword [rdi + 0x94], ecx
jg 0x1800ca2b9
xor r8d, r8d
mov dword [rsp + 0x20], 0
mov r9d, edx
mov rcx, rdi
lea edx, [r8 + 0x47]
call fcn.180053f80
jmp 0x1800ca2e6
lea eax, [rcx + 1]
xor r8d, r8d
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
mov dword [rax + rcx*8 + 8], edx
mov r11, qword [rbp + 0xa0]
mov esi, dword [rbp + 0xb8]
mov r10, qword [rsp + 0x78]
inc ebx
add r12, 8
cmp ebx, dword [rsp + 0x44]
jl 0x1800ca162
xor r12d, r12d
movsxd rcx, dword [rdi + 0x90]
mov edx, dword [r14 + 0x18]
mov ebx, dword [rsp + 0x40]
cmp dword [rdi + 0x94], ecx
jg 0x1800ca33c
mov r8d, edx
mov dword [rsp + 0x20], r12d
mov edx, 0x47
mov r9d, ebx
mov rcx, rdi
call fcn.180053f80
jmp 0x1800ca369
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x47
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
movsxd rcx, dword [rdi + 0x90]
lea edx, [rbx + 1]
mov r13d, dword [rsp + 0x44]
cmp dword [rdi + 0x94], ecx
jg 0x1800ca39a
mov r9d, edx
mov dword [rsp + 0x20], r12d
mov edx, 0x47
mov r8d, r13d
mov rcx, rdi
call fcn.180053f80
jmp 0x1800ca3c8
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
test byte [r14 + 0x1c], 1
mov ecx, 0xfffffffa
mov eax, 0xffffffff
mov r9d, esi
mov esi, dword [rsp + 0x48]
cmovne eax, ecx
mov dword [rsp + 0x30], eax
mov r8d, esi
mov rax, qword [r14 + 0x28]
lea edx, [rcx + 0xc]
mov qword [rsp + 0x28], rax
mov rcx, rdi
mov dword [rsp + 0x20], ebx
call fcn.1800543c0
mov r8, qword [rbp - 0x80]
and dword [r14 + 0x1c], 0xfffffffe
cmp byte [r8 + 0x67], 0
je 0x1800ca414
mov qword [r14 + 0x28], r12
mov r9, qword [rbp + 0xc0]
mov eax, 0x3f
mov r15, qword [rbp + 0xb0]
mov ecx, 0xb9
mov r14d, r12d
mov dword [r9 + 0x44], esi
cmp byte [r15 + 0x42], 0
cmovne eax, ecx
mov byte [r9 + 0x41], al
mov eax, dword [rdi + 0x90]
mov dword [r9 + 0x48], eax
test r13d, r13d
je 0x1800ca054
mov rdx, qword [rsp + 0x68]
lea r15d, [rbx + 2]
mov r13, r12
nop
mov rax, qword [rdx + 0x48]
mov rbx, qword [rax + r13]
cmp r14d, 0x10
jae 0x1800ca504
movzx eax, word [rdx + 0x22]
movzx ecx, r14w
shr ax, cl
test al, 1
je 0x1800ca504
test byte [rbx + 0x12], 4
mov edx, r12d
jne 0x1800ca763
cmp dword [r9], 0
je 0x1800ca4a5
mov rax, qword [rbx]
test byte [rax + 4], 1
je 0x1800ca763
mov rax, qword [rbx + 0x30]
test qword [r9 + 0x68], rax
jne 0x1800ca763
test edx, edx
je 0x1800ca4d0
movzx eax, word [rbx + 0x12]
bt ax, 0xa
jae 0x1800ca4d0
mov ecx, 0x200
or ax, cx
mov word [rbx + 0x12], ax
jmp 0x1800ca4d5
or word [rbx + 0x12], 4
movsxd rax, dword [rbx + 0x18]
test eax, eax
js 0x1800ca763
mov rcx, qword [rbx + 8]
imul rbx, rax, 0x38
add rbx, qword [rcx + 0x20]
add byte [rbx + 0x16], 0xff
jne 0x1800ca763
inc edx
test byte [rbx + 0x12], 4
je 0x1800ca492
jmp 0x1800ca763
test byte [rbx + 0x14], 1
je 0x1800ca768
cmp r14d, 0x1f
ja 0x1800ca520
mov ecx, r14d
mov eax, 1
shl eax, cl
jmp 0x1800ca523
mov eax, r12d
test dword [rdx + 0x30], eax
jne 0x1800ca768
cmp byte [r8 + 0x67], 0
jne 0x1800ca768
mov rcx, qword [rbp + 0xc0]
mov r9d, r12d
mov r10d, dword [rcx + 0x50]
test r10d, r10d
jle 0x1800ca61a
mov rax, qword [rdi]
mov r8, r12
movzx r11d, byte [rax + 0x67]
nop dword [rax]
test r11b, r11b
je 0x1800ca56e
lea rcx, [0x180197378]
jmp 0x1800ca586
mov rax, qword [rcx + 0x58]
movsxd rcx, dword [r8 + rax + 4]
mov rax, qword [rdi + 0x88]
lea rdx, [rcx + rcx*2]
lea rcx, [rax + rdx*8]
movzx edx, byte [rcx]
cmp dl, 0x5e
jne 0x1800ca597
lea eax, [r15 + r14]
cmp dword [rcx + 0xc], eax
jmp 0x1800ca5a3
cmp dl, 0x87
jne 0x1800ca5a5
lea eax, [r15 + r14]
cmp dword [rcx + 8], eax
je 0x1800ca5ba
inc r9d
add r8, 0x14
cmp r9d, r10d
jge 0x1800ca61a
mov rcx, qword [rbp + 0xc0]
jmp 0x1800ca560
mov r10d, dword [rcx + 0xc]
mov r9d, dword [rcx + 8]
mov r8d, dword [rcx + 4]
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800ca5e4
mov rcx, rdi
mov dword [rsp + 0x20], r10d
call fcn.180053f80
jmp 0x1800ca61a
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 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], 0
mov rax, qword [rbp + 0xa0]
mov edx, 0x48
mov rcx, qword [rax]
call fcn.18002a8b0
mov rsi, rax
test rax, rax
je 0x1800ca695
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsi], xmm0
xor r9d, r9d
xor r8d, r8d
movups xmmword [rsi + 0x10], xmm0
mov rdx, rsi
movups xmmword [rsi + 0x20], xmm0
movups xmmword [rsi + 0x30], xmm0
mov qword [rsi + 0x40], rax
mov eax, 0xffffffff
mov word [rsi + 0x32], ax
mov rax, qword [rbp + 0xa0]
mov byte [rsi], 0x35
mov rcx, qword [rax]
call fcn.18006d930
mov rcx, qword [rbp + 0xa0]
mov rax, qword [rcx]
mov r8d, dword [rax + 0x94]
cmp dword [rsi + 0x28], r8d
jle 0x1800ca695
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
call fcn.18002e270
mov r8, qword [rbp - 0x80]
cmp byte [r8 + 0x67], 0
jne 0x1800ca748
mov rax, qword [rbx]
movsxd rcx, dword [rbx + 0x24]
mov rdx, qword [rax + 0x10]
test ecx, ecx
jle 0x1800ca6c0
mov rax, qword [rdx + 0x20]
shl rcx, 5
mov rdx, qword [rcx + rax - 0x18]
mov qword [rsi + 0x10], rdx
mov rcx, r8
mov edx, 0x49
call fcn.18002a8b0
mov rcx, rax
test rax, rax
je 0x1800ca73c
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rcx], xmm0
mov r9d, 0x10
mov rdx, rsi
movups xmmword [rcx + 0x10], xmm0
movups xmmword [rcx + 0x20], xmm0
movups xmmword [rcx + 0x30], xmm0
mov qword [rcx + 0x40], rax
mov eax, 0xffffffff
mov word [rcx + 0x32], ax
lea rax, [rcx + 0x48]
mov qword [rcx + 8], rax
mov byte [rcx], 0xb0
mov byte [rax], 0
lea eax, [r15 + r14]
mov dword [rcx + 0x28], 1
mov qword [rsi + 0x18], rcx
mov dword [rcx + 0x2c], eax
mov rcx, qword [rbp + 0xc0]
mov r8d, dword [rcx + 0x18]
mov rcx, qword [rbp + 0xa0]
call fcn.180077290
jmp 0x1800ca740
mov qword [rsi + 0x18], rcx
mov r8, qword [rbp - 0x80]
mov qword [rsi + 0x10], r12
test rsi, rsi
je 0x1800ca75c
mov rdx, rsi
mov rcx, r8
call fcn.18006e2c0
mov r8, qword [rbp - 0x80]
mov r9, qword [rbp + 0xc0]
mov rdx, qword [rsp + 0x68]
inc r14d
add r13, 8
cmp r14d, dword [rsp + 0x44]
jl 0x1800ca460
jmp 0x1800ca054
test dl, 5
setne cl
bt edx, 8
setb al
test al, cl
je 0x1800ca941
mov rax, qword [r14 + 0x48]
xor r9d, r9d
mov r13, qword [rbp + 0xc0]
mov rcx, r11
mov r8, r13
mov rdx, qword [rax]
inc dword [r11 + 0x38]
mov ebx, dword [r11 + 0x38]
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], r10d
call fcn.1800c8800
mov r14, qword [rbp + 0xa0]
mov esi, eax
cmp eax, ebx
je 0x1800ca7e7
test ebx, ebx
je 0x1800ca7e7
movzx eax, byte [r14 + 0x1f]
cmp al, 8
jae 0x1800ca7e7
mov dword [r14 + rax*4 + 0xe8], ebx
inc byte [r14 + 0x1f]
mov ebx, dword [r13 + 0x10]
cmp dword [r13 + 0x34], r12d
je 0x1800ca8cf
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800ca81e
mov r9d, ebx
mov dword [rsp + 0x20], r12d
mov r8d, esi
mov edx, 0xd
mov rcx, rdi
call fcn.180053f80
jmp 0x1800ca84b
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0xd
mov dword [rax + rcx*8 + 4], esi
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
movsxd rcx, dword [rdi + 0x90]
mov edx, dword [r13 + 0x34]
cmp dword [rdi + 0x94], ecx
jg 0x1800ca87f
mov r8d, edx
mov dword [rsp + 0x28], 1
mov edx, 0x40
mov dword [rsp + 0x20], esi
mov r9d, ebx
mov rcx, rdi
call fcn.180053fe0
jmp 0x1800ca8ae
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0xfd40
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], esi
mov dword [rax + rcx*8 + 0x10], 1
mov rax, qword [rbp + 0xc8]
mov r9d, ebx
mov rdx, qword [rbp + 0xb0]
mov r8d, r15d
mov rcx, r14
mov qword [rsp + 0x20], rax
call fcn.1800c9a70
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800ca904
mov r8d, dword [rsp + 0x48]
mov r9d, ebx
mov edx, 0x1e
mov dword [rsp + 0x20], esi
mov rcx, rdi
call fcn.180053f80
mov r9, r13
mov byte [r13 + 0x41], 0xb9
jmp 0x1800ca054
mov edx, dword [rsp + 0x48]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov r9, r13
mov dword [rax + rcx*8], 0x1e
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], r12
mov byte [r13 + 0x41], 0xb9
jmp 0x1800ca054
mov eax, edx
and eax, 0x102
cmp eax, 0x102
jne 0x1800cae22
mov r8, qword [rsp + 0x68]
mov r14d, 0xb9
mov dword [rsp + 0x40], r14d
mov r15d, r14d
mov dword [rsp + 0x60], r12d
mov rsi, r12
mov rbx, r12
test dl, 0x20
je 0x1800ca984
mov rax, qword [r8 + 0x48]
mov ecx, 8
mov rbx, qword [rax]
jmp 0x1800ca987
mov rcx, r12
test dl, 0x10
je 0x1800ca994
mov rax, qword [r8 + 0x48]
mov rsi, qword [rcx + rax]
test r10d, r10d
je 0x1800ca9a2
mov rax, rbx
mov rbx, rsi
mov rsi, rax
test rbx, rbx
je 0x1800cab68
mov r14, qword [rbx]
mov dword [rbp + 0xb8], 0x17151618
mov rdx, qword [r14 + 0x18]
movzx eax, byte [rdx]
cmp al, 0xb0
jne 0x1800ca9c7
movzx eax, byte [rdx + 2]
cmp al, 0xb1
jne 0x1800ca9d1
mov rax, qword [rdx + 0x20]
jmp 0x1800ca9dd
cmp al, 0x8a
jne 0x1800caa39
mov rax, qword [rdx + 0x20]
mov rax, qword [rax + 0x20]
cmp dword [rax], 1
jle 0x1800caa39
movzx eax, byte [r11 + 0x1f]
test al, al
jne 0x1800ca9f5
inc dword [r11 + 0x38]
mov ebx, dword [r11 + 0x38]
jmp 0x1800caa06
dec al
movzx eax, al
mov byte [r11 + 0x1f], al
mov ebx, dword [r11 + rax*4 + 0xe8]
mov rdx, qword [r14 + 0x18]
mov r9d, 1
mov r8d, ebx
mov rcx, r11
call fcn.1800c98c0
movzx eax, byte [r14]
mov r8d, ebx
inc rax
and eax, 2
or rax, 1
movzx edx, byte [rbp + rax + 0xb8]
jmp 0x1800caad9
lea r8, [rsp + 0x44]
mov rcx, r11
call fcn.180076590
test byte [rbx + 0x12], 4
mov r8d, eax
mov edx, r12d
jne 0x1800caac9
mov rdi, qword [rbp + 0xc0]
mov r13d, 0x200
nop
cmp dword [rdi], r12d
je 0x1800caa6e
mov rax, qword [rbx]
test byte [rax + 4], 1
je 0x1800caab8
mov rax, qword [rbx + 0x30]
test qword [rdi + 0x68], rax
jne 0x1800caab8
test edx, edx
je 0x1800caa91
movzx eax, word [rbx + 0x12]
bt ax, 0xa
jae 0x1800caa91
or ax, r13w
mov word [rbx + 0x12], ax
jmp 0x1800caa96
or word [rbx + 0x12], 4
movsxd rax, dword [rbx + 0x18]
test eax, eax
js 0x1800caab8
mov rcx, qword [rbx + 8]
imul rbx, rax, 0x38
add rbx, qword [rcx + 0x20]
add byte [rbx + 0x16], 0xff
jne 0x1800caab8
inc edx
test byte [rbx + 0x12], 4
je 0x1800caa60
mov rdi, qword [rbp + 0xa8]
mov r15d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x5c]
movzx eax, byte [r14]
mov ebx, dword [rsp + 0x44]
movzx edx, byte [rbp + rax + 0x82]
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800cab02
mov dword [rsp + 0x20], r8d
mov r9d, r13d
mov r8d, dword [rsp + 0x48]
mov rcx, rdi
movzx edx, dl
call fcn.180053f80
jmp 0x1800cab3b
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov byte [rax + rcx*8], dl
mov edx, dword [rsp + 0x48]
mov dword [rax + rcx*8 + 4], edx
mov word [rax + rcx*8 + 2], r12w
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r12
mov byte [rax + rcx*8 + 1], r12b
mov rcx, qword [rbp + 0xa0]
mov r14d, 0xb9
test ebx, ebx
je 0x1800cabd8
movzx eax, byte [rcx + 0x1f]
cmp al, 8
jae 0x1800cabd8
mov dword [rcx + rax*4 + 0xe8], ebx
inc byte [rcx + 0x1f]
jmp 0x1800cabd8
movsxd rcx, dword [rdi + 0x90]
mov eax, r10d
xor eax, 1
lea edx, [rax*4 + 0x20]
cmp dword [rdi + 0x94], ecx
jg 0x1800cab98
mov r8d, dword [rsp + 0x48]
mov rcx, rdi
mov dword [rsp + 0x20], r12d
call fcn.180053f80
jmp 0x1800cabd1
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov byte [rax + rcx*8], dl
mov edx, dword [rsp + 0x48]
mov dword [rax + rcx*8 + 4], edx
mov word [rax + rcx*8 + 2], r12w
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov byte [rax + rcx*8 + 1], r12b
mov rcx, qword [rbp + 0xa0]
test rsi, rsi
je 0x1800cacfe
mov rbx, qword [rsi]
mov r9d, 1
inc dword [rcx + 0x38]
mov eax, dword [rcx + 0x38]
mov r8d, eax
mov dword [rsp + 0x60], eax
mov rdx, qword [rbx + 0x18]
call fcn.1800c98c0
mov rcx, qword [rbx + 0x18]
movzx edx, byte [rcx]
movzx eax, dl
cmp dl, 0xb0
jne 0x1800cac13
movzx eax, byte [rcx + 2]
cmp al, 0xb1
jne 0x1800cac1d
mov rax, qword [rcx + 0x20]
jmp 0x1800cac29
cmp al, 0x8a
jne 0x1800cac2e
mov rax, qword [rcx + 0x20]
mov rax, qword [rax + 0x20]
cmp dword [rax], 1
jg 0x1800cac37
movzx eax, byte [rbx]
sub al, 0x36
test al, 0xfd
je 0x1800cac46
mov rax, qword [rsp + 0x78]
lea r15d, [rax*2 + 0x36]
jmp 0x1800cac55
mov eax, dword [rsp + 0x78]
xor eax, 1
lea r15d, [rax*2 + 0x37]
cmp dl, 0xb0
jne 0x1800cac5e
movzx edx, byte [rcx + 2]
cmp dl, 0xb1
jne 0x1800cac69
mov rax, qword [rcx + 0x20]
jmp 0x1800cac76
cmp dl, 0x8a
jne 0x1800cac7f
mov rax, qword [rcx + 0x20]
mov rax, qword [rax + 0x20]
cmp dword [rax], 1
jg 0x1800cacfe
test byte [rsi + 0x12], 4
mov edx, r12d
mov r9, qword [rbp + 0xc0]
jne 0x1800cad05
mov r13d, 0x200
cmp dword [r9], r12d
je 0x1800caca3
mov rax, qword [rsi]
test byte [rax + 4], 1
je 0x1800cacf0
mov rax, qword [rsi + 0x30]
test qword [r9 + 0x68], rax
jne 0x1800cacf0
test edx, edx
je 0x1800cacc6
movzx eax, word [rsi + 0x12]
bt ax, 0xa
jae 0x1800cacc6
or ax, r13w
mov word [rsi + 0x12], ax
jmp 0x1800caccb
or word [rsi + 0x12], 4
movsxd rax, dword [rsi + 0x18]
test eax, eax
js 0x1800cacf0
imul rcx, rax, 0x38
mov rax, qword [rsi + 8]
add rcx, qword [rax + 0x20]
mov rsi, rcx
add byte [rcx + 0x16], 0xff
jne 0x1800cacf0
inc edx
test byte [rcx + 0x12], 4
je 0x1800cac95
mov rdi, qword [rbp + 0xa8]
mov r13d, dword [rsp + 0x5c]
jmp 0x1800cad05
mov r9, qword [rbp + 0xc0]
mov ecx, dword [rdi + 0x90]
cmp dword [rsp + 0x78], r12d
mov esi, dword [rsp + 0x48]
sete al
mov dword [r9 + 0x44], esi
add al, 0x26
mov dword [r9 + 0x48], ecx
mov byte [r9 + 0x41], al
cmp r15d, r14d
je 0x1800ca054
mov rax, qword [rbp + 0xa0]
inc dword [rax + 0x38]
movsxd rcx, dword [rdi + 0x90]
mov ebx, dword [rax + 0x38]
cmp dword [rdi + 0x94], ecx
jg 0x1800cad64
mov r9d, ebx
mov dword [rsp + 0x20], r12d
mov r8d, esi
mov edx, 0x87
mov rcx, rdi
call fcn.180053f80
jmp 0x1800cad91
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x87
mov dword [rax + rcx*8 + 4], esi
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800cadb9
mov r8d, dword [rsp + 0x60]
mov r9d, r13d
mov edx, r15d
mov dword [rsp + 0x20], ebx
mov rcx, rdi
call fcn.180053f80
jmp 0x1800cadf2
mov edx, dword [rsp + 0x60]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov byte [rax + rcx*8], r15b
mov word [rax + rcx*8 + 2], r12w
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], r12
mov byte [rax + rcx*8 + 1], r12b
movsxd rax, dword [rdi + 0x90]
mov r9, qword [rbp + 0xc0]
test eax, eax
jle 0x1800ca054
lea rcx, [rax + rax*2]
mov edx, 0x53
mov rax, qword [rdi + 0x88]
mov word [rax + rcx*8 - 0x16], dx
jmp 0x1800ca054
bt edx, 9
jae 0x1800cc26d
movzx r13d, word [r14 + 0x18]
mov rbx, r12
mov r11, qword [rsp + 0x68]
xor r15b, r15b
mov rcx, qword [rbp + 0xc0]
mov r9, r12
movzx r14d, word [r14 + 0x1a]
mov esi, r12d
mov qword [rbp - 0x68], r12
mov r8d, r13d
mov rax, qword [r11 + 0x20]
movzx r10d, word [r11 + 0x1c]
mov qword [rbp - 0x78], rax
mov eax, dword [rcx + 8]
mov dword [rsp + 0x4c], eax
mov word [rbp - 0x70], r10w
mov qword [rbp - 0x60], rbx
mov qword [rbp - 0x48], r12
mov byte [rsp + 0x70], bl
mov dword [rsp + 0x54], r12d
mov dword [rsp + 0x60], r12d
mov dword [rsp + 0x40], r13d
test dl, 0x20
je 0x1800caea0
mov rax, qword [r11 + 0x48]
inc r8d
mov esi, r14d
mov r9, qword [rax + r13*8]
mov qword [rbp - 0x68], r9
test dl, 0x10
je 0x1800cafb9
mov rax, qword [r11 + 0x48]
cmp esi, r10d
mov ecx, r8d
mov ebx, r10d
cmova ebx, esi
mov rdx, qword [rax + rcx*8]
mov eax, pe_nt_image_headers64
mov qword [rbp - 0x60], rdx
test word [rdx + 0x12], ax
je 0x1800caf7b
mov rax, qword [rbp + 0xa0]
mov rsi, qword [rbp + 0xc0]
inc dword [rax + 0x38]
mov edx, dword [rax + 0x38]
mov dword [rsi + 0x2c], edx
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800caf16
mov r9d, edx
mov dword [rsp + 0x20], r12d
mov edx, 0x47
mov rcx, rdi
lea r8d, [rdx - 0x46]
call fcn.180053f80
mov r11, qword [rsp + 0x68]
jmp 0x1800caf47
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 4], 1
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov eax, dword [rdi + 0x90]
mov ecx, r12d
mov edx, dword [rsi + 0x2c]
mov r10, qword [rbp - 0x78]
add edx, edx
mov r9, qword [rbp - 0x68]
mov dword [rsi + 0x2c], edx
mov dword [rsi + 0x30], eax
mov rax, qword [r10 + 0x38]
cmp byte [r13 + rax], 1
sete cl
xor ecx, dword [rsp + 0x78]
or ecx, edx
mov dword [rsi + 0x2c], ecx
jmp 0x1800caf7f
mov r10, qword [rbp - 0x78]
mov r8, r13
mov esi, ebx
test r9, r9
jne 0x1800cafb5
mov rax, qword [r10 + 8]
movsx r8, word [rax + r13*2]
test r8d, r8d
js 0x1800cafaa
mov rax, qword [r10 + 0x18]
lea rdx, [r8 + r8*2]
mov rcx, qword [rax + 8]
test byte [rcx + rdx*8 + 8], 0xf
je 0x1800cafb0
cmp r8d, 0xfffffffe
jne 0x1800cafb5
mov r15b, 1
mov esi, ebx
mov rbx, qword [rbp - 0x60]
mov eax, dword [r11 + 0x38]
test al, 0x30
jne 0x1800cb06d
bt eax, 0x13
jae 0x1800cb06d
mov r8, qword [rbp + 0xa0]
mov esi, 1
mov rax, qword [rbp + 0xc0]
movzx r15d, sil
inc dword [r8 + 0x38]
mov edx, dword [r8 + 0x38]
mov dword [rsp + 0x54], edx
mov dword [rax + 0x24], edx
cmp dword [rax], r12d
je 0x1800cb05b
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800cb031
mov r9d, edx
mov dword [rsp + 0x20], r12d
lea edx, [rsi + 0x46]
xor r8d, r8d
mov rcx, rdi
call fcn.180053f80
mov r9, qword [rbp - 0x68]
mov r11, qword [rsp + 0x68]
mov r8, qword [rbp + 0xa0]
jmp 0x1800cb05b
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
dec dword [r8 + 0x44]
mov rcx, qword [rbp + 0xc0]
mov eax, dword [r8 + 0x44]
mov dword [rcx + 0x28], eax
mov rax, qword [rbp - 0x78]
cmp r13w, word [rax + 0x60]
jae 0x1800cb0ad
mov rax, qword [rax + 0x38]
mov edx, r12d
cmp byte [r13 + rax], r12b
sete dl
cmp dword [rsp + 0x78], edx
jne 0x1800cb0ad
movzx eax, r14b
movzx r14d, word [rbp - 0x70]
mov qword [rbp - 0x68], rbx
mov rbx, r9
mov byte [rsp + 0x70], r15b
xor r15b, r15b
mov qword [rbp - 0x60], rbx
mov word [rbp - 0x70], ax
cmp dword [rbp + 0xb8], r12d
jle 0x1800cb118
test dword [r11 + 0x38], 0x100000
je 0x1800cb118
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800cb0eb
mov r8d, dword [rsp + 0x4c]
xor r9d, r9d
mov edx, 0x88
mov dword [rsp + 0x20], r12d
mov rcx, rdi
call fcn.180053f80
jmp 0x1800cb118
mov edx, dword [rsp + 0x4c]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x88
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], r12
mov qword [rax + rcx*8 + 0x10], r12
mov r8d, dword [rsp + 0x78]
lea rax, [rbp - 0x40]
mov rcx, qword [rbp + 0xa0]
mov r9d, esi
mov rsi, qword [rbp + 0xc0]
mov rdx, rsi
mov qword [rsp + 0x20], rax
call fcn.1800c90e0
mov edx, eax
mov dword [rsp + 0x50], eax
mov rax, qword [rbp - 0x40]
test rax, rax
je 0x1800cb16a
cmp word [rbp - 0x70], r12w
je 0x1800cb16a
mov rcx, qword [rbp - 0x80]
lea rdx, [rax + r13]
call fcn.18002ac10
mov edx, dword [rsp + 0x50]
mov qword [rbp - 0x48], rax
mov r8d, dword [rsp + 0x54]
test r8d, r8d
je 0x1800cb17d
mov ecx, dword [rsi + 0x28]
mov dword [rsp + 0x58], ecx
jmp 0x1800cb184
mov eax, dword [rsi + 0x10]
mov dword [rsp + 0x58], eax
mov rax, qword [rbp - 0x68]
test rax, rax
je 0x1800cb1a0
test byte [rax + 0x14], 0x28
jne 0x1800cb1a0
mov dword [rsp + 0x5c], r12d
mov r9d, 1
jmp 0x1800cb1ab
mov r9d, 1
mov dword [rsp + 0x5c], r9d
test rbx, rbx
je 0x1800cb1bb
test byte [rbx + 0x14], 0x28
mov dword [rsp + 0x44], r12d
je 0x1800cb1c0
mov dword [rsp + 0x44], r9d
test rax, rax
jne 0x1800cb218
test r13w, r13w
jne 0x1800cb218
mov ebx, r12d
mov ecx, r13d
mov esi, r13d
test r15b, r15b
je 0x1800cb4a1
add edx, ecx
mov r13d, r12d
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800cb46e
xor r8d, r8d
mov dword [rsp + 0x20], r12d
mov r9d, edx
mov rcx, rdi
lea edx, [r8 + 0x4b]
call fcn.180053f80
inc esi
mov ebx, 1
jmp 0x1800cb506
mov ecx, r13d
mov esi, r13d
mov ebx, r9d
test rax, rax
je 0x1800cb1d4
mov rax, qword [rax]
lea esi, [rdx + r13]
mov rcx, qword [rbp + 0xa0]
mov r8d, esi
movzx r14d, r14w
mov r9d, r14d
mov rbx, qword [rax + 0x18]
mov rdx, rbx
call fcn.1800c98c0
mov rdx, qword [rbp - 0x68]
movzx eax, word [rdx + 0x12]
bt ax, 8
jae 0x1800cb2a8
mov rax, qword [rdi]
cmp byte [rax + 0x67], r12b
je 0x1800cb26b
lea rcx, [0x180197378]
jmp 0x1800cb284
mov eax, dword [rdi + 0x90]
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
lea rcx, [rax + rcx*8]
mov r15, qword [rbp + 0xc0]
mov eax, dword [r15 + 0x2c]
shr eax, 1
mov dword [rcx + 0xc], eax
movzx eax, byte [r15 + 0x2c]
and al, 1
movzx eax, al
mov word [rcx + 2], ax
movzx eax, word [rdx + 0x12]
jmp 0x1800cb2af
mov r15, qword [rbp + 0xc0]
test al, al
js 0x1800cb391
mov rcx, rbx
nop word [rax + rax]
movzx edx, byte [rcx]
lea eax, [rdx + 0x53]
cmp al, 1
ja 0x1800cb2d0
mov rcx, qword [rcx + 0x10]
jmp 0x1800cb2c0
cmp dl, 0xb0
jne 0x1800cb2d9
movzx edx, byte [rcx + 2]
movzx edx, dl
sub edx, 0x75
je 0x1800cb391
sub edx, 0x24
je 0x1800cb391
sub edx, 1
je 0x1800cb391
sub edx, 1
je 0x1800cb391
cmp edx, 0xc
jne 0x1800cb335
test dword [rcx + 4], 0x200000
jne 0x1800cb335
mov rdx, qword [rcx + 0x40]
test rdx, rdx
je 0x1800cb335
movsx rax, word [rcx + 0x30]
test ax, ax
js 0x1800cb391
mov rdx, qword [rdx + 8]
test rdx, rdx
je 0x1800cb391
lea rcx, [rax + rax*2]
test byte [rdx + rcx*8 + 8], 0xf
jne 0x1800cb391
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800cb360
mov r9d, dword [rsp + 0x58]
mov r8d, esi
mov edx, 0x32
mov dword [rsp + 0x20], r12d
mov rcx, rdi
call fcn.180053f80
jmp 0x1800cb391
mov edx, dword [rsp + 0x58]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x32
mov dword [rax + rcx*8 + 4], esi
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 - 0x40]
test rax, rax
je 0x1800cb3a9
lea r8, [rax + r13]
mov edx, r14d
mov rcx, rbx
call fcn.1800c8400
movzx eax, byte [rbx]
lea esi, [r14 + r13]
mov dword [rbp - 0x54], esi
cmp al, 0xb0
jne 0x1800cb3bb
movzx eax, byte [rbx + 2]
cmp al, 0xb1
jne 0x1800cb3c5
mov rax, qword [rbx + 0x20]
jmp 0x1800cb3d1
cmp al, 0x8a
jne 0x1800cb3e6
mov rax, qword [rbx + 0x20]
mov rax, qword [rax + 0x20]
cmp dword [rax], 1
jle 0x1800cb3e6
mov dword [rsp + 0x5c], 1
xor r15b, r15b
jmp 0x1800cb4fc
mov rax, qword [rbp - 0x68]
mov r8d, r12d
mov rdx, rax
test byte [rax + 0x12], 4
jne 0x1800cb466
mov esi, 0x200
nop dword [rax + rax]
cmp dword [r15], r12d
je 0x1800cb40e
mov rax, qword [rdx]
test byte [rax + 4], 1
je 0x1800cb45c
mov rax, qword [rdx + 0x30]
test qword [r15 + 0x68], rax
jne 0x1800cb45c
test r8d, r8d
je 0x1800cb431
movzx eax, word [rdx + 0x12]
bt ax, 0xa
jae 0x1800cb431
or ax, si
mov word [rdx + 0x12], ax
jmp 0x1800cb436
or word [rdx + 0x12], 4
movsxd rax, dword [rdx + 0x18]
test eax, eax
js 0x1800cb45c
imul rcx, rax, 0x38
mov rax, qword [rdx + 8]
add rcx, qword [rax + 0x20]
mov rdx, rcx
add byte [rcx + 0x16], 0xff
jne 0x1800cb45c
inc r8d
test byte [rcx + 0x12], 4
je 0x1800cb400
mov rdi, qword [rbp + 0xa8]
mov esi, dword [rbp - 0x54]
xor r15b, r15b
jmp 0x1800cb4fc
lea eax, [rcx + 1]
mov ebx, 1
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
inc esi
mov qword [rax + rcx*8], 0x4b
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
jmp 0x1800cb506
test r8d, r8d
je 0x1800cb501
add edx, ecx
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800cb4d0
xor r8d, r8d
mov dword [rsp + 0x20], r12d
mov r9d, edx
mov rcx, rdi
lea edx, [r8 + 0x4b]
call fcn.180053f80
jmp 0x1800cb4fa
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 0x4b
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
inc esi
mov ebx, 1
mov r13d, dword [rsp + 0x5c]
mov r10, qword [rbp - 0x40]
mov r9d, esi
movzx eax, r15b
mov r15d, dword [rsp + 0x50]
sub r9d, eax
mov dword [rbp - 0x54], eax
mov r8d, r15d
test r10, r10
je 0x1800cb591
test r9d, r9d
jle 0x1800cb544
nop dword [rax]
cmp byte [r10], 0x41
jg 0x1800cb544
dec r9d
inc r8d
inc r10
test r9d, r9d
jg 0x1800cb530
movsxd rdx, r9d
cmp rdx, 1
jle 0x1800cb568
lea rax, [r10 - 1]
add rax, rdx
cmp byte [rax], 0x41
jg 0x1800cb568
dec r9d
dec rdx
dec rax
cmp rdx, 1
jg 0x1800cb554
test r9d, r9d
jle 0x1800cb591
mov rax, qword [rbp + 0xa0]
mov edx, 0x60
mov dword [rsp + 0x30], r9d
mov qword [rsp + 0x28], r10
mov dword [rsp + 0x20], r12d
mov rcx, qword [rax + 0x10]
call fcn.1800543c0
mov rax, qword [rsp + 0x68]
lea r14, [0x180000000]
movzx eax, word [rax + 0x3e]
test ax, ax
je 0x1800cb5ae
cmp esi, eax
je 0x1800cb989
mov edx, dword [rsp + 0x54]
test edx, edx
je 0x1800cb611
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800cb5e0
mov r9d, edx
mov dword [rsp + 0x20], r12d
mov edx, 0x47
mov rcx, rdi
lea r8d, [rdx - 0x46]
call fcn.180053f80
jmp 0x1800cb611
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 4], 1
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 + 0xc0]
mov edx, dword [rax + 0x34]
test edx, edx
je 0x1800cb6bd
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800cb659
mov eax, dword [rsp + 0x40]
mov r8d, edx
mov dword [rsp + 0x28], eax
mov edx, 0x40
mov dword [rsp + 0x20], r15d
mov rcx, rdi
mov r15d, dword [rsp + 0x58]
mov r9d, r15d
call fcn.180053fe0
jmp 0x1800cb692
mov r15d, dword [rsp + 0x58]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x50]
mov dword [rax + rcx*8 + 0xc], edx
mov edx, dword [rsp + 0x40]
mov dword [rax + rcx*8 + 0x10], edx
mov dword [rax + rcx*8], 0xfd40
mov dword [rax + rcx*8 + 8], r15d
mov rax, qword [rbp + 0xc8]
mov r9d, r15d
mov r8d, dword [rbp + 0xb8]
mov rdx, qword [rbp + 0xb0]
mov rcx, qword [rbp + 0xa0]
mov qword [rsp + 0x20], rax
call fcn.1800c9a70
jmp 0x1800cb6c2
mov r15d, dword [rsp + 0x58]
mov rcx, qword [rsp + 0x78]
lea eax, [rbx*2]
add eax, r13d
lea ecx, [rcx + rax*2]
mov rax, qword [rsp + 0x68]
movzx ebx, byte [rcx + r14 + 0x16abd8]
test dword [rax + 0x38], 0x100000
je 0x1800cb7d6
cmp ebx, 0x17
jne 0x1800cb7d6
movsxd r8, dword [rdi + 0x90]
mov rax, qword [rbp - 0x78]
mov dword [rsp + 0x60], r8d
mov rax, qword [rax + 0x10]
movsx ecx, word [rax]
mov eax, 0x66666667
add ecx, 9
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp dword [rdi + 0x94], r8d
jg 0x1800cb74b
mov r8d, edx
mov dword [rsp + 0x20], r12d
lea edx, [rbx + 0x65]
xor r9d, r9d
mov rcx, rdi
call fcn.180053f80
mov r8d, eax
mov dword [rsp + 0x60], eax
jmp 0x1800cb775
lea rcx, [r8 + r8*2]
lea eax, [r8 + 1]
mov dword [rdi + 0x90], eax
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x7c
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], r12
mov qword [rax + rcx*8 + 0x10], r12
cmp qword [rbp - 0x68], r12
jne 0x1800cb781
cmp qword [rbp - 0x60], r12
je 0x1800cb7d6
movsxd rax, dword [rdi + 0x90]
test eax, eax
jle 0x1800cb7a7
lea rcx, [rax + rax*2]
mov edx, 1
mov rax, qword [rdi + 0x88]
mov word [rax + rcx*8 - 0x16], dx
mov eax, dword [rdi + 0x90]
lea edx, [rax + 1]
mov rax, qword [rdi]
cmp byte [rax + 0x67], r12b
je 0x1800cb7bc
lea rax, [0x180197378]
jmp 0x1800cb7ce
movsxd rax, r8d
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov dword [rsp + 0x60], r12d
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800cb809
mov eax, dword [rsp + 0x50]
mov r9d, r15d
mov r8d, dword [rsp + 0x4c]
mov edx, ebx
mov dword [rsp + 0x28], esi
mov rcx, rdi
mov dword [rsp + 0x20], eax
call fcn.180053fe0
mov ebx, dword [rsp + 0x50]
jmp 0x1800cb844
mov edx, dword [rsp + 0x4c]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov byte [rax + rcx*8], bl
mov ebx, dword [rsp + 0x50]
mov dword [rax + rcx*8 + 0xc], ebx
mov word [rax + rcx*8 + 2], r12w
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0x10], esi
mov byte [rax + rcx*8 + 1], 0xfd
cmp dword [rsp + 0x54], r12d
je 0x1800cb8eb
movsxd rcx, dword [rdi + 0x90]
lea edx, [rcx + 2]
cmp dword [rdi + 0x94], ecx
jg 0x1800cb87a
xor r8d, r8d
mov dword [rsp + 0x20], r12d
mov r9d, edx
mov rcx, rdi
lea edx, [r8 + 9]
call fcn.180053f80
jmp 0x1800cb8a4
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
cmp esi, 1
mov eax, 2
mov ecx, 6
cmova eax, ecx
movsxd rcx, dword [rdi + 0x90]
add eax, dword [rsp + 0x78]
sub esi, r13d
movzx edx, byte [rax + r14 + 0x16abd8]
cmp dword [rdi + 0x94], ecx
jg 0x1800cb949
mov r8d, dword [rsp + 0x4c]
mov r9d, r15d
mov dword [rsp + 0x28], esi
mov rcx, rdi
mov dword [rsp + 0x20], ebx
call fcn.180053fe0
mov edx, dword [rsp + 0x50]
mov r15, qword [rbp - 0x60]
mov ecx, dword [rsp + 0x40]
mov r13d, ecx
test r15, r15
je 0x1800cbc39
mov rax, qword [r15]
lea ebx, [rdx + rcx]
movzx r14d, word [rbp - 0x70]
mov r8d, ebx
mov rcx, qword [rbp + 0xa0]
mov r9d, r14d
mov rsi, qword [rax + 0x18]
mov rdx, rsi
call fcn.1800c98c0
movzx eax, word [r15 + 0x12]
bt ax, 8
jae 0x1800cb9cb
mov rax, qword [rdi]
cmp byte [rax + 0x67], r12b
je 0x1800cb991
lea rcx, [0x180197378]
jmp 0x1800cb9aa
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov byte [rax + rcx*8], dl
mov edx, dword [rsp + 0x4c]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x50]
mov dword [rax + rcx*8 + 0xc], edx
mov word [rax + rcx*8 + 2], r12w
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0x10], esi
mov byte [rax + rcx*8 + 1], 0xfd
jmp 0x1800cb8ef
mov edx, r15d
jmp 0x1800cb8ef
mov eax, dword [rdi + 0x90]
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
lea rcx, [rax + rcx*8]
mov rdx, qword [rbp + 0xc0]
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
movzx eax, word [r15 + 0x12]
test al, al
js 0x1800cbaa8
mov rcx, rsi
movzx edx, byte [rcx]
lea eax, [rdx + 0x53]
cmp al, 1
ja 0x1800cb9e6
mov rcx, qword [rcx + 0x10]
jmp 0x1800cb9d6
cmp dl, 0xb0
jne 0x1800cb9ef
movzx edx, byte [rcx + 2]
movzx edx, dl
sub edx, 0x75
je 0x1800cbaa8
sub edx, 0x24
je 0x1800cbaa8
sub edx, 1
je 0x1800cbaa8
sub edx, 1
je 0x1800cbaa8
cmp edx, 0xc
jne 0x1800cba4c
test dword [rcx + 4], 0x200000
jne 0x1800cba4c
mov r8, qword [rcx + 0x40]
test r8, r8
je 0x1800cba4c
movsx rax, word [rcx + 0x30]
test ax, ax
js 0x1800cbaa8
mov r8, qword [r8 + 8]
test r8, r8
je 0x1800cbaa8
lea rcx, [rax + rax*2]
test byte [r8 + rcx*8 + 8], 0xf
jne 0x1800cbaa8
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800cba77
mov r9d, dword [rsp + 0x58]
mov r8d, ebx
mov edx, 0x32
mov dword [rsp + 0x20], r12d
mov rcx, rdi
call fcn.180053f80
jmp 0x1800cbaa8
mov edx, dword [rsp + 0x58]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x32
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
mov rax, qword [rbp - 0x48]
test rax, rax
je 0x1800cbb34
mov r8, rax
mov edx, r14d
mov rcx, rsi
call fcn.1800c8400
mov r11, qword [rbp - 0x48]
mov r9d, r14d
test r14d, r14d
je 0x1800cbae3
nop
cmp byte [r11], 0x41
jg 0x1800cbae3
dec r9d
inc ebx
inc r11
test r9d, r9d
jg 0x1800cbad0
movsxd rax, r9d
cmp rax, 1
jle 0x1800cbb08
lea r10, [r11 - 1]
add r10, rax
cmp byte [r10], 0x41
jg 0x1800cbb08
dec r9d
dec rax
dec r10
cmp rax, 1
jg 0x1800cbaf3
test r9d, r9d
jle 0x1800cbb34
mov rax, qword [rbp + 0xa0]
mov r8d, ebx
mov dword [rsp + 0x30], r9d
mov edx, 0x60
mov qword [rsp + 0x28], r11
mov dword [rsp + 0x20], r12d
mov rcx, qword [rax + 0x10]
call fcn.1800543c0
movzx eax, byte [rsi]
add r13d, r14d
cmp al, 0xb0
jne 0x1800cbb42
movzx eax, byte [rsi + 2]
cmp al, 0xb1
jne 0x1800cbb4c
mov rax, qword [rsi + 0x20]
jmp 0x1800cbb58
cmp al, 0x8a
jne 0x1800cbb6e
mov rax, qword [rsi + 0x20]
mov rax, qword [rax + 0x20]
cmp dword [rax], 1
jle 0x1800cbb6e
mov ebx, 1
lea r14, [0x180000000]
jmp 0x1800cbbf4
test byte [r15 + 0x12], 4
mov edx, r12d
jne 0x1800cbbe9
nop dword [rax + rax]
mov rcx, qword [rbp + 0xc0]
cmp dword [rcx], r12d
je 0x1800cbb95
mov rax, qword [r15]
test byte [rax + 4], 1
je 0x1800cbbe9
mov rax, qword [r15 + 0x30]
test qword [rcx + 0x68], rax
jne 0x1800cbbe9
test edx, edx
je 0x1800cbbbe
movzx eax, word [r15 + 0x12]
bt ax, 0xa
jae 0x1800cbbbe
mov ecx, 0x200
or ax, cx
mov word [r15 + 0x12], ax
jmp 0x1800cbbc4
or word [r15 + 0x12], 4
movsxd rax, dword [r15 + 0x18]
test eax, eax
js 0x1800cbbe9
imul rcx, rax, 0x38
mov rax, qword [r15 + 8]
add rcx, qword [rax + 0x20]
mov r15, rcx
add byte [rcx + 0x16], 0xff
jne 0x1800cbbe9
inc edx
test byte [rcx + 0x12], 4
je 0x1800cbb80
lea r14, [0x180000000]
mov ebx, dword [rsp + 0x44]
mov esi, dword [rsp + 0x54]
mov rcx, qword [rbp - 0x40]
mov r8, qword [rbp - 0x80]
test rcx, rcx
je 0x1800cbcf9
cmp rcx, qword [r8 + 0x1f0]
jae 0x1800cbcda
cmp rcx, qword [r8 + 0x1e0]
jb 0x1800cbcbe
mov rax, qword [r8 + 0x1d8]
mov qword [rcx], rax
mov qword [r8 + 0x1d8], rcx
jmp 0x1800cbcf9
cmp byte [rsp + 0x70], r12b
je 0x1800cbbf0
mov esi, dword [rsp + 0x54]
test esi, esi
jne 0x1800cbcb2
lea r8d, [rdx + rcx]
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800cbc7c
mov r9d, r8d
mov dword [rsp + 0x20], r12d
xor r8d, r8d
lea edx, [rsi + 0x4b]
mov rcx, rdi
call fcn.180053f80
inc r13d
mov ebx, r12d
jmp 0x1800cbbf8
lea eax, [rcx + 1]
mov ebx, r12d
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
inc r13d
mov qword [rax + rcx*8], 0x4b
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
jmp 0x1800cbbf8
mov ebx, dword [rsp + 0x44]
inc r13d
jmp 0x1800cbbf8
cmp rcx, qword [r8 + 0x1e8]
jb 0x1800cbcda
mov rax, qword [r8 + 0x1c8]
mov qword [rcx], rax
mov qword [r8 + 0x1c8], rcx
jmp 0x1800cbcf9
cmp qword [r8 + 0x308], r12
je 0x1800cbcf0
mov rdx, rcx
mov rcx, r8
call fcn.18002a490
jmp 0x1800cbcf5
call fcn.18002a420
mov r8, qword [rbp - 0x80]
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x1800cbd5e
cmp rcx, qword [r8 + 0x1f0]
jae 0x1800cbd43
cmp rcx, qword [r8 + 0x1e0]
jb 0x1800cbd27
mov rax, qword [r8 + 0x1d8]
mov qword [rcx], rax
mov qword [r8 + 0x1d8], rcx
jmp 0x1800cbd5e
cmp rcx, qword [r8 + 0x1e8]
jb 0x1800cbd43
mov rax, qword [r8 + 0x1c8]
mov qword [rcx], rax
mov qword [r8 + 0x1c8], rcx
jmp 0x1800cbd5e
cmp qword [r8 + 0x308], r12
je 0x1800cbd59
mov rdx, rcx
mov rcx, r8
call fcn.18002a490
jmp 0x1800cbd5e
call fcn.18002a420
mov rcx, qword [rbp + 0xc0]
mov eax, dword [rdi + 0x90]
mov dword [rcx + 0x48], eax
test r13d, r13d
je 0x1800cbe8e
test esi, esi
je 0x1800cbdd4
movsxd rcx, dword [rdi + 0x90]
lea edx, [rcx + 3]
cmp dword [rdi + 0x94], ecx
jg 0x1800cbda7
mov r9d, edx
mov dword [rsp + 0x20], r12d
mov edx, 0x11
mov r8d, esi
mov rcx, rdi
call fcn.180053f80
jmp 0x1800cbdd4
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x11
mov dword [rax + rcx*8 + 4], esi
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov r15, qword [rsp + 0x78]
movsxd rcx, dword [rdi + 0x90]
lea eax, [rbx + r15*2]
movzx edx, byte [rax + r14 + 0x16ac4c]
cmp dword [rdi + 0x94], ecx
jg 0x1800cbe16
mov eax, dword [rsp + 0x50]
mov rcx, rdi
mov r9d, dword [rsp + 0x58]
mov r8d, dword [rsp + 0x4c]
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], eax
call fcn.180053fe0
jmp 0x1800cbe55
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov byte [rax + rcx*8], dl
mov edx, dword [rsp + 0x4c]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x58]
mov dword [rax + rcx*8 + 8], edx
mov edx, dword [rsp + 0x50]
mov dword [rax + rcx*8 + 0xc], edx
mov word [rax + rcx*8 + 2], r12w
mov dword [rax + rcx*8 + 0x10], r13d
mov byte [rax + rcx*8 + 1], 0xfd
movsxd rcx, dword [rsp + 0x60]
test ecx, ecx
je 0x1800cbe93
mov rax, qword [rdi]
mov edx, dword [rdi + 0x90]
cmp byte [rax + 0x67], r12b
je 0x1800cbe79
lea rax, [0x180197378]
mov dword [rax + 8], edx
jmp 0x1800cbe93
mov rax, qword [rdi + 0x88]
lea rcx, [rcx + rcx*2]
mov dword [rax + rcx*8 + 8], edx
lea rax, [rax + rcx*8]
jmp 0x1800cbe93
mov r15, qword [rsp + 0x78]
test esi, esi
je 0x1800cbf79
movsxd rcx, dword [rdi + 0x90]
lea edx, [rcx + 2]
cmp dword [rdi + 0x94], ecx
jg 0x1800cbec7
mov r9d, edx
mov dword [rsp + 0x20], r12d
mov edx, 0x10
mov r8d, esi
mov rcx, rdi
call fcn.180053f80
jmp 0x1800cbef4
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x10
mov dword [rax + rcx*8 + 4], esi
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov r8d, dword [rbp - 0x54]
movsxd rcx, dword [rdi + 0x90]
lea eax, [r8 + r15*2]
add r8d, r13d
movzx edx, byte [rax + r14 + 0x16ac4c]
mov r13d, dword [rsp + 0x4c]
cmp dword [rdi + 0x94], ecx
jg 0x1800cbf3b
mov eax, dword [rsp + 0x50]
mov rcx, rdi
mov r9d, dword [rsp + 0x58]
mov dword [rsp + 0x28], r8d
mov r8d, r13d
mov dword [rsp + 0x20], eax
call fcn.180053fe0
jmp 0x1800cbf7e
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov byte [rax + rcx*8], dl
mov edx, dword [rsp + 0x58]
mov dword [rax + rcx*8 + 8], edx
mov edx, dword [rsp + 0x50]
mov dword [rax + rcx*8 + 0xc], edx
mov word [rax + rcx*8 + 2], r12w
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 0x10], r8d
mov byte [rax + rcx*8 + 1], 0xfd
jmp 0x1800cbf7e
mov r13d, dword [rsp + 0x4c]
mov rbx, qword [rsp + 0x68]
test dword [rbx + 0x38], 0x40000
je 0x1800cbfe9
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800cbfb8
mov eax, dword [rsp + 0x40]
mov r8d, r13d
mov r9d, eax
mov dword [rsp + 0x20], eax
mov edx, 0x7d
mov rcx, rdi
call fcn.180053f80
jmp 0x1800cbfe9
mov edx, dword [rsp + 0x40]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x7d
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r12
test byte [rbx + 0x38], 0x40
mov rax, qword [rbp + 0xb0]
je 0x1800cc014
mov ecx, 0x1020
test word [rax + 0x3c], cx
jne 0x1800cc014
mov esi, dword [rsp + 0x48]
mov r15d, 1
mov rcx, qword [rbp - 0x78]
jmp 0x1800cc1f9
mov rcx, qword [rbp - 0x78]
mov r15d, r12d
mov esi, dword [rsp + 0x48]
mov rbx, qword [rcx + 0x18]
test byte [rbx + 0x30], 0x80
jne 0x1800cc03f
mov rdx, rcx
mov r9d, r13d
mov rcx, rax
mov r8d, esi
call fcn.1800c9690
jmp 0x1800cc1f0
cmp esi, r13d
je 0x1800cc1f4
mov rbx, qword [rbx + 0x10]
test rbx, rbx
je 0x1800cc063
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x1800cc063
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x1800cc051
movzx ecx, word [rbx + 0x5e]
mov r8, qword [rbp + 0xa0]
cmp ecx, 1
jne 0x1800cc099
movzx eax, byte [r8 + 0x1f]
test al, al
jne 0x1800cc086
inc dword [r8 + 0x38]
mov r14d, dword [r8 + 0x38]
jmp 0x1800cc0c3
dec al
movzx eax, al
mov byte [r8 + 0x1f], al
mov r14d, dword [r8 + rax*4 + 0xe8]
jmp 0x1800cc0c3
mov edx, dword [r8 + 0x28]
mov r14d, dword [r8 + 0x2c]
cmp ecx, edx
jg 0x1800cc0b5
lea eax, [rcx + r14]
sub edx, ecx
mov dword [r8 + 0x2c], eax
mov dword [r8 + 0x28], edx
jmp 0x1800cc0c3
mov eax, dword [r8 + 0x38]
lea r14d, [rax + 1]
add eax, ecx
mov dword [r8 + 0x38], eax
movzx eax, word [rbx + 0x5e]
mov esi, r12d
cmp r12w, ax
jae 0x1800cc18a
mov r15, qword [rbp - 0x78]
mov r11d, 0xffffffff
nop
movzx r8d, word [r15 + 0x60]
mov edx, r12d
test r8d, r8d
je 0x1800cc111
mov rax, qword [rbx + 8]
mov r9, qword [r15 + 8]
movsxd rcx, esi
movzx r10d, word [rax + rcx*2]
nop dword [rax]
movsxd rax, edx
cmp r10w, word [r9 + rax*2]
je 0x1800cc115
inc edx
cmp edx, r8d
jl 0x1800cc100
movzx edx, r11w
movsxd rcx, dword [rdi + 0x90]
movsx r8d, dx
lea edx, [rsi + r14]
cmp dword [rdi + 0x94], ecx
jg 0x1800cc14b
mov dword [rsp + 0x20], edx
mov r9d, r8d
mov r8d, r13d
mov edx, 0x5e
mov rcx, rdi
call fcn.180053f80
mov r11d, 0xffffffff
jmp 0x1800cc179
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x5e
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 esi
cmp esi, eax
jl 0x1800cc0e0
mov r15d, r12d
movsxd rcx, dword [rdi + 0x90]
mov esi, dword [rsp + 0x48]
movzx edx, ax
cmp dword [rdi + 0x94], ecx
jg 0x1800cc1bf
mov r9d, dword [rbp - 0x58]
mov r8d, esi
mov dword [rsp + 0x28], edx
mov rcx, rdi
mov edx, 0x1c
mov dword [rsp + 0x20], r14d
call fcn.180053fe0
jmp 0x1800cc1f0
mov r8d, dword [rbp - 0x58]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0xfd1c
mov dword [rax + rcx*8 + 4], esi
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], r14d
mov dword [rax + rcx*8 + 0x10], edx
mov rcx, qword [rbp - 0x78]
mov rbx, qword [rsp + 0x68]
mov r9, qword [rbp + 0xc0]
cmp dword [r9], r12d
jne 0x1800cc220
mov rcx, qword [rcx + 0x48]
test rcx, rcx
je 0x1800cc220
mov r8, qword [rbp - 0x50]
mov edx, esi
call fcn.1800c99d0
mov r9, qword [rbp + 0xc0]
mov eax, 0x1000
test dword [rbx + 0x38], eax
je 0x1800cc231
mov byte [r9 + 0x41], 0xb9
jmp 0x1800cc23f
cmp dword [rsp + 0x78], r12d
sete al
add al, 0x26
mov byte [r9 + 0x41], al
mov dword [r9 + 0x44], r13d
movzx eax, byte [rbx + 0x3a]
and al, 1
mov byte [r9 + 0x42], al
test byte [rbx + 0x38], 0xf
jne 0x1800cc258
mov byte [r9 + 0x43], 1
test r15d, r15d
je 0x1800cd091
mov rcx, r12
mov qword [rbp - 0x78], rcx
jmp 0x1800ca057
bt edx, 0xd
jae 0x1800ccfdc
dec dword [r11 + 0x44]
mov r13, r12
inc dword [r11 + 0x38]
mov eax, dword [r11 + 0x34]
mov esi, dword [r11 + 0x38]
mov dword [rsp + 0x50], eax
inc eax
mov dword [r11 + 0x34], eax
mov eax, dword [r11 + 0x44]
mov dword [rsp + 0x58], eax
mov rax, qword [rbp - 0x38]
mov qword [rbp - 0x48], r12
mov dword [rsp + 0x5c], esi
mov dword [rbp + 0xb8], r12d
mov rcx, qword [rax + 0x20]
mov rax, qword [r14 + 0x48]
mov dword [rsp + 0x40], r12d
mov dword [rsp + 0x54], r12d
mov qword [rbp - 0x28], r12
mov r14, qword [rax]
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x18], r14
mov rax, qword [r14 + 0x20]
mov qword [rbp - 0x20], rax
mov rax, qword [rbp + 0xb0]
mov byte [rbx + 0x41], 0x43
mov dword [rbx + 0x44], esi
movzx eax, byte [rax + 0x40]
cmp al, 1
jbe 0x1800cc458
mov ebx, eax
sub ebx, r15d
dec ebx
movsxd rcx, ebx
imul rdx, rcx, 0x68
mov rcx, qword [rbp - 0x80]
add rdx, 0x70
call fcn.18002a8b0
mov qword [rbp - 0x40], rax
mov rdx, rax
test rax, rax
jne 0x1800cc325
mov rax, qword [rbp + 0xc8]
jmp 0x1800cd8ea
mov r15, qword [rbp + 0xb0]
lea eax, [rbx + 1]
movzx ecx, al
mov rax, qword [rbp - 0x38]
mov dword [rdx + 4], ecx
mov dword [rdx], ecx
movups xmm0, xmmword [rax]
movups xmmword [rdx + 8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdx + 0x18], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rdx + 0x28], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rdx + 0x38], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rdx + 0x48], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rdx + 0x58], xmm1
movsd xmm0, qword [rax + 0x60]
movsd qword [rdx + 0x68], xmm0
mov r10, qword [r15 + 8]
cmp ebx, 1
jl 0x1800cc3fe
mov r8, qword [rbp + 0xc0]
add rdx, 0x70
add r8, 0xb0
mov r9d, ebx
nop word [rax + rax]
movzx eax, byte [r8]
lea rdx, [rdx + 0x68]
imul rcx, rax, 0x68
lea r8, [r8 + 0x70]
movups xmm0, xmmword [rcx + r10 + 8]
movups xmmword [rdx - 0x68], xmm0
movups xmm1, xmmword [rcx + r10 + 0x18]
movups xmmword [rdx - 0x58], xmm1
movups xmm0, xmmword [rcx + r10 + 0x28]
movups xmmword [rdx - 0x48], xmm0
movups xmm1, xmmword [rcx + r10 + 0x38]
movups xmmword [rdx - 0x38], xmm1
movups xmm0, xmmword [rcx + r10 + 0x48]
movups xmmword [rdx - 0x28], xmm0
movups xmm1, xmmword [rcx + r10 + 0x58]
movups xmmword [rdx - 0x18], xmm1
movsd xmm0, qword [rcx + r10 + 0x68]
movsd qword [rdx - 8], xmm0
sub r9, 1
jne 0x1800cc3a0
mov r11, qword [rbp + 0xa0]
mov rcx, qword [rbp - 0x30]
test byte [r15 + 0x3c], 0x10
jne 0x1800cc59c
test byte [rcx + 0x30], 0x80
jne 0x1800cc4a0
inc dword [r11 + 0x38]
movsxd rcx, dword [rdi + 0x90]
mov r13d, dword [r11 + 0x38]
mov dword [rbp + 0xb8], r13d
cmp dword [rdi + 0x94], ecx
jg 0x1800cc470
xor r8d, r8d
mov dword [rsp + 0x20], r12d
mov r9d, r13d
mov rcx, rdi
lea edx, [r8 + 0x4b]
call fcn.180053f80
jmp 0x1800cc586
mov rax, qword [rbp + 0xb0]
mov r15, qword [rbp + 0xb0]
mov rax, qword [rax + 8]
mov qword [rbp - 0x40], rax
jmp 0x1800cc409
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 0x4b
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
jmp 0x1800cc58d
mov rbx, qword [rcx + 0x10]
test rbx, rbx
je 0x1800cc4c2
nop dword [rax]
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x1800cc4c2
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x1800cc4b0
mov r13d, dword [r11 + 0x34]
mov dword [rbp + 0xb8], r13d
lea eax, [r13 + 1]
mov dword [r11 + 0x34], eax
movsxd rcx, dword [rdi + 0x90]
movzx edx, word [rbx + 0x5e]
cmp dword [rdi + 0x94], ecx
jg 0x1800cc509
mov r9d, edx
mov dword [rsp + 0x20], r12d
mov edx, 0x76
mov r8d, r13d
mov rcx, rdi
call fcn.180053f80
mov r11, qword [rbp + 0xa0]
jmp 0x1800cc537
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x76
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov rsi, qword [r11 + 0x10]
mov rdx, rbx
mov rcx, r11
call fcn.18008de70
mov rdx, rax
test rax, rax
je 0x1800cc582
mov rcx, qword [rsi]
cmp byte [rcx + 0x67], r12b
je 0x1800cc566
mov r8, rax
mov edx, 0xfffffff8
call fcn.180054e70
jmp 0x1800cc582
movsxd rax, dword [rsi + 0x90]
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
mov byte [rax + rcx*8 - 0x17], 0xf8
mov qword [rax + rcx*8 - 8], rdx
mov esi, dword [rsp + 0x5c]
mov r11, qword [rbp + 0xa0]
inc dword [r11 + 0x38]
mov r13, r12
mov eax, dword [r11 + 0x38]
mov dword [rsp + 0x40], eax
movsxd rdx, dword [rdi + 0x90]
mov dword [rbp - 0x70], edx
cmp dword [rdi + 0x94], edx
jg 0x1800cc5ca
xor r8d, r8d
mov dword [rsp + 0x20], r12d
mov r9d, esi
mov rcx, rdi
lea edx, [r8 + 0x47]
call fcn.180053f80
mov dword [rbp - 0x70], eax
jmp 0x1800cc5f4
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rdi + 0x90], eax
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov rax, qword [rbp - 0x50]
mov r15d, 0xffffffff
cmp dword [rax + 0x14], 1
jle 0x1800cc724
mov rdi, qword [rbp + 0xa0]
mov ebx, r12d
mov rsi, r12
mov r8d, 0x8006
mov r9d, 0x3fff
mov rdx, qword [rax + 0x20]
movsxd rax, ebx
imul rcx, rax, 0x38
mov r10, qword [rdx + rsi]
add rcx, rdx
cmp rcx, r14
je 0x1800cc681
test word [rdx + rsi + 0x12], r8w
jne 0x1800cc681
test word [rdx + rsi + 0x14], r9w
je 0x1800cc681
test dword [r10 + 4], 0x400000
jne 0x1800cc681
mov rcx, qword [rbp - 0x80]
xor r9d, r9d
xor r8d, r8d
mov rdx, r10
call fcn.18006e4d0
mov r8, rax
mov rdx, r13
mov rcx, rdi
call fcn.18006dbe0
mov r13, rax
mov r8d, 0x8006
mov r9d, 0x3fff
mov rax, qword [rbp - 0x50]
inc ebx
add rsi, 0x38
cmp ebx, dword [rax + 0x14]
jl 0x1800cc621
mov rdi, qword [rbp + 0xa8]
mov qword [rbp - 0x28], r13
test r13, r13
je 0x1800cc724
mov rsi, qword [rbp + 0xa0]
mov edx, 0x48
mov rcx, qword [rsi]
call fcn.18002a8b0
mov rbx, rax
test rax, rax
je 0x1800cc712
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov r9, r13
xor r8d, r8d
movups xmmword [rbx + 0x10], xmm0
mov rdx, rbx
movups xmmword [rbx + 0x20], xmm0
movups xmmword [rbx + 0x30], xmm0
mov qword [rbx + 0x40], rax
mov byte [rbx], 0x2c
mov word [rbx + 0x32], r15w
mov rcx, qword [rsi]
call fcn.18006d930
mov rax, qword [rsi]
mov r8d, dword [rax + 0x94]
cmp dword [rbx + 0x28], r8d
jle 0x1800cc71d
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
mov rcx, rsi
call fcn.18002e270
jmp 0x1800cc71d
mov rcx, qword [rsi]
mov rdx, r13
call fcn.18006e2c0
mov r13, rbx
mov qword [rbp - 0x28], rbx
mov rbx, qword [rbp + 0xa0]
lea r8, str.MULTI_INDEX_OR
mov rcx, rbx
mov edx, 1
call fcn.180054710
mov rax, qword [rbp - 0x20]
mov r15d, r12d
mov dword [rsp + 0x4c], r12d
cmp dword [rax + 0x14], r12d
jle 0x1800cc7f2
mov r13, r12
mov qword [rbp - 0x68], r12
nop dword [rax]
mov rax, qword [rax + 0x20]
mov ecx, dword [rsp + 0x48]
cmp dword [rax + r13 + 0x1c], ecx
je 0x1800cc77c
mov ecx, 0x400
test word [rax + r13 + 0x14], cx
je 0x1800cc7cc
mov rdx, qword [rax + r13]
mov r14d, r12d
mov dword [rsp + 0x44], r12d
test rdx, rdx
je 0x1800cc7a1
mov rcx, qword [rbp - 0x80]
xor r9d, r9d
xor r8d, r8d
call fcn.18006e4d0
mov rbx, rax
jmp 0x1800cc7a4
mov rbx, r12
mov rax, qword [rbp - 0x80]
mov rsi, rbx
mov qword [rbp - 0x60], rbx
cmp byte [rax + 0x67], r12b
je 0x1800cc809
test rbx, rbx
je 0x1800cc7c5
mov rdx, rbx
mov rcx, rax
call fcn.18006e2c0
mov rbx, qword [rbp + 0xa0]
mov rax, qword [rbp - 0x20]
inc r15d
add r13, 0x38
mov dword [rsp + 0x4c], r15d
mov qword [rbp - 0x68], r13
cmp r15d, dword [rax + 0x14]
jl 0x1800cc760
mov r14, qword [rbp - 0x18]
mov r13, qword [rbp - 0x28]
movsxd rcx, dword [rbx + 0x140]
test ecx, ecx
jne 0x1800ccda7
mov eax, r12d
jmp 0x1800ccdcf
mov rax, qword [rbp - 0x28]
test rax, rax
je 0x1800cc819
mov qword [rax + 0x10], rbx
mov rbx, rax
mov rcx, qword [rbp + 0xa0]
lea r9d, [r15 + 1]
lea r8, str.INDEX__d
mov edx, 1
call fcn.180054710
mov eax, dword [rsp + 0x50]
xor r9d, r9d
mov rdx, qword [rbp - 0x40]
mov r8, rbx
mov rcx, qword [rbp + 0xa0]
mov dword [rsp + 0x38], eax
mov eax, 0x20
mov word [rsp + 0x30], ax
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r12
call fcn.1800d8d70
mov qword [rsp + 0x78], rax
mov rbx, rax
test rax, rax
je 0x1800ccd86
mov rdx, qword [rbp - 0x40]
lea r8, [rax + 0x360]
mov rcx, qword [rbp + 0xa0]
xor r9d, r9d
call fcn.1800c7d40
mov rax, qword [rbp + 0xb0]
test byte [rax + 0x3c], 0x10
jne 0x1800ccc22
mov rax, qword [rbp - 0x20]
mov esi, r15d
mov ecx, dword [rax + 0x14]
mov eax, 0xffffffff
dec ecx
cmp r15d, ecx
cmove esi, eax
mov rax, qword [rbp - 0x30]
mov dword [rsp + 0x68], esi
test byte [rax + 0x30], 0x80
jne 0x1800cc99b
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800cc8fd
mov r9d, dword [rsp + 0x40]
mov edx, 0x87
mov r8d, dword [rsp + 0x48]
mov rcx, rdi
mov dword [rsp + 0x20], r12d
call fcn.180053f80
mov edx, dword [rsp + 0x40]
jmp 0x1800cc932
mov edx, dword [rsp + 0x48]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 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], 0x87
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
movsxd r14, dword [rdi + 0x90]
mov r8d, dword [rbp + 0xb8]
cmp dword [rdi + 0x94], r14d
jg 0x1800cc968
xor r9d, r9d
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], edx
mov rcx, rdi
lea edx, [r9 + 0x2f]
call fcn.180053fe0
mov r14d, eax
jmp 0x1800ccc1e
lea rcx, [r14 + r14*2]
lea eax, [r14 + 1]
mov dword [rdi + 0x90], eax
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0xfd2f
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], edx
mov dword [rax + rcx*8 + 0x10], esi
jmp 0x1800ccc1e
mov rcx, rax
call fcn.1800843d0
mov rdx, qword [rbp + 0xa0]
mov qword [rbp - 8], rax
movzx r15d, word [rax + 0x5e]
cmp r15d, 1
jne 0x1800cc9dc
movzx ecx, byte [rdx + 0x1f]
test cl, cl
jne 0x1800cc9ca
inc dword [rdx + 0x38]
mov r13d, dword [rdx + 0x38]
jmp 0x1800cca09
dec cl
movzx eax, cl
mov byte [rdx + 0x1f], al
mov r13d, dword [rdx + rax*4 + 0xe8]
jmp 0x1800cca09
mov ecx, dword [rdx + 0x28]
mov r13d, dword [rdx + 0x2c]
mov dword [rsp + 0x60], r13d
cmp r15d, ecx
jg 0x1800cc9fc
lea eax, [r15 + r13]
sub ecx, r15d
mov dword [rdx + 0x2c], eax
mov dword [rdx + 0x28], ecx
jmp 0x1800cca0e
mov eax, dword [rdx + 0x38]
lea r13d, [rax + 1]
add eax, r15d
mov dword [rdx + 0x38], eax
mov dword [rsp + 0x60], r13d
mov rbx, r12
mov r14, r15
test r15d, r15d
je 0x1800cca63
mov r15, qword [rbp - 8]
mov esi, r13d
mov r13, qword [rbp - 0x30]
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [r15 + 8]
mov rdx, r13
mov r8d, dword [rsp + 0x48]
mov rcx, rdi
mov dword [rsp + 0x20], esi
movsx r9d, word [rax + rbx*2]
call fcn.1800736b0
inc esi
inc rbx
cmp rbx, r14
jl 0x1800cca30
mov r13d, dword [rsp + 0x60]
mov r15d, r14d
mov esi, dword [rsp + 0x68]
test esi, esi
je 0x1800ccadc
movsxd rcx, dword [rdi + 0x90]
mov dword [rsp + 0x44], ecx
cmp dword [rdi + 0x94], ecx
jg 0x1800ccaa0
mov r8d, dword [rbp + 0xb8]
xor r9d, r9d
mov dword [rsp + 0x28], r15d
mov rcx, rdi
mov dword [rsp + 0x20], r13d
lea edx, [r9 + 0x1d]
call fcn.180053fe0
mov dword [rsp + 0x44], eax
jmp 0x1800ccad4
mov edx, dword [rbp + 0xb8]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0xfd1d
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], r13d
mov dword [rax + rcx*8 + 0x10], r15d
test esi, esi
js 0x1800ccbc2
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800ccb0c
mov eax, dword [rsp + 0x40]
mov r9d, r15d
mov r8d, r13d
mov dword [rsp + 0x20], eax
mov edx, 0x61
mov rcx, rdi
call fcn.180053f80
mov edx, dword [rsp + 0x40]
jmp 0x1800ccb3e
mov edx, dword [rsp + 0x40]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x61
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r12
movsxd rcx, dword [rdi + 0x90]
mov r8d, dword [rbp + 0xb8]
cmp dword [rdi + 0x94], ecx
jg 0x1800ccb70
mov r9d, edx
mov dword [rsp + 0x28], r15d
mov edx, 0x8a
mov dword [rsp + 0x20], r13d
mov rcx, rdi
call fcn.180053fe0
jmp 0x1800ccb9e
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0xfd8a
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r13d
mov dword [rax + rcx*8 + 0x10], r15d
test esi, esi
je 0x1800ccbc2
movsxd rax, dword [rdi + 0x90]
test eax, eax
jle 0x1800ccbc2
lea rcx, [rax + rax*2]
mov edx, 0x10
mov rax, qword [rdi + 0x88]
mov word [rax + rcx*8 - 0x16], dx
mov r14d, dword [rsp + 0x44]
mov rbx, qword [rsp + 0x78]
cmp r15d, 1
jne 0x1800ccc00
test r13d, r13d
je 0x1800ccc15
mov rdx, qword [rbp + 0xa0]
mov r15d, dword [rsp + 0x4c]
mov rsi, qword [rbp - 0x60]
movzx eax, byte [rdx + 0x1f]
cmp al, 8
jae 0x1800ccbfa
mov dword [rdx + rax*4 + 0xe8], r13d
inc byte [rdx + 0x1f]
mov r13, qword [rbp - 0x68]
jmp 0x1800ccc22
mov rdx, qword [rbp + 0xa0]
cmp r15d, dword [rdx + 0x28]
jle 0x1800ccc15
mov dword [rdx + 0x28], r15d
mov dword [rdx + 0x2c], r13d
mov r15d, dword [rsp + 0x4c]
mov r13, qword [rbp - 0x68]
mov rsi, qword [rbp - 0x60]
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800ccc4f
mov r9d, dword [rsp + 0x58]
mov edx, 0xa
mov r8d, dword [rsp + 0x5c]
mov rcx, rdi
mov dword [rsp + 0x20], r12d
call fcn.180053f80
jmp 0x1800ccc84
mov edx, dword [rsp + 0x5c]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x58]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0xa
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
test r14d, r14d
je 0x1800cccb6
mov rax, qword [rdi]
mov edx, dword [rdi + 0x90]
cmp byte [rax + 0x67], r12b
je 0x1800ccca1
lea rax, [0x180197378]
jmp 0x1800cccb3
movsxd rax, r14d
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov eax, dword [rbx + 0x44]
mov edx, 1
mov ecx, dword [rsp + 0x54]
test al, 2
cmovne ecx, edx
mov rdx, qword [rbx + 0x3c0]
mov dword [rsp + 0x54], ecx
mov ecx, eax
test dword [rdx + 0x38], 0x200
je 0x1800ccd08
test r15d, r15d
je 0x1800cccec
mov r8, qword [rbp - 0x48]
cmp qword [rdx + 0x20], r8
jne 0x1800ccd08
mov r8, qword [rbp - 0x30]
test byte [r8 + 0x30], 0x80
je 0x1800ccd41
mov rdx, qword [rdx + 0x20]
mov qword [rbp - 0x48], rdx
mov eax, dword [rdx + 0x64]
and al, 3
cmp al, 2
jne 0x1800ccd0c
mov qword [rbp - 0x48], r12
test cl, 1
je 0x1800ccd1c
mov rax, qword [rbp + 0xb0]
or dword [rax + 0x44], 1
mov rcx, rbx
call fcn.1800d9f20
mov rbx, qword [rbp + 0xa0]
movsxd rcx, dword [rbx + 0x140]
test ecx, ecx
jne 0x1800ccd4d
mov eax, r12d
mov dword [rbx + 0x140], eax
jmp 0x1800ccd8d
mov ecx, eax
mov rax, qword [rdx + 0x20]
mov qword [rbp - 0x48], rax
jmp 0x1800ccd0c
mov rdx, qword [rbx + 0x10]
mov rax, qword [rdx]
cmp byte [rax + 0x67], r12b
je 0x1800ccd6c
lea rax, [0x180197378]
mov eax, dword [rax + 8]
mov dword [rbx + 0x140], eax
jmp 0x1800ccd8d
mov rax, qword [rdx + 0x88]
lea rcx, [rcx + rcx*2]
lea rax, [rax + rcx*8]
mov eax, dword [rax + 8]
mov dword [rbx + 0x140], eax
jmp 0x1800ccd8d
mov rbx, qword [rbp + 0xa0]
test rsi, rsi
je 0x1800cc7cc
mov rcx, qword [rbp - 0x80]
mov rdx, rsi
call fcn.18006e2c0
jmp 0x1800cc7cc
mov rdx, qword [rbx + 0x10]
mov rax, qword [rdx]
cmp byte [rax + 0x67], r12b
je 0x1800ccdbd
lea rax, [0x180197378]
jmp 0x1800ccdcc
mov rax, qword [rdx + 0x88]
lea rcx, [rcx + rcx*2]
lea rax, [rax + rcx*8]
mov eax, dword [rax + 8]
mov r8, qword [rbp + 0xc0]
mov dword [rbx + 0x140], eax
mov rax, qword [rbp - 0x48]
mov qword [r8 + 0x50], rax
test rax, rax
je 0x1800ccdf1
mov eax, dword [rsp + 0x50]
mov dword [r8 + 8], eax
mov rbx, qword [rbp - 0x80]
test r13, r13
je 0x1800cce10
mov rdx, r13
mov qword [r13 + 0x10], r12
mov rcx, rbx
call fcn.18006e2c0
mov r8, qword [rbp + 0xc0]
mov rax, qword [rdi]
mov edx, dword [rdi + 0x90]
cmp byte [rax + 0x67], r12b
je 0x1800cce28
lea rax, [0x180197378]
jmp 0x1800cce3b
movsxd rax, dword [rbp - 0x70]
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 4], edx
movsxd rcx, dword [rdi + 0x90]
mov edx, dword [r8 + 0xc]
cmp dword [rdi + 0x94], ecx
jg 0x1800cce6a
xor r8d, r8d
mov dword [rsp + 0x20], r12d
mov r9d, edx
mov rcx, rdi
lea edx, [r8 + 9]
call fcn.180053f80
jmp 0x1800cce94
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov rcx, qword [rdi + 0x18]
mov edx, dword [rsp + 0x58]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1800cceb3
mov r8d, edx
mov rdx, rdi
call fcn.1800549d0
jmp 0x1800ccec3
mov rcx, qword [rcx + 0x50]
mov eax, dword [rdi + 0x90]
movsxd rdx, edx
mov dword [rcx + rdx*4], eax
mov eax, dword [rdi + 0x90]
mov r9, qword [rbp + 0xc0]
mov dword [r9 + 0x48], eax
mov rax, qword [rbp + 0xb0]
cmp byte [rax + 0x40], 1
jbe 0x1800ccf4d
mov rcx, qword [rbp - 0x40]
test rbx, rbx
je 0x1800ccf41
cmp rcx, qword [rbx + 0x1f0]
jae 0x1800ccf2b
cmp rcx, qword [rbx + 0x1e0]
jb 0x1800ccf0f
mov rax, qword [rbx + 0x1d8]
mov qword [rcx], rax
mov qword [rbx + 0x1d8], rcx
jmp 0x1800ccf4d
cmp rcx, qword [rbx + 0x1e8]
jb 0x1800ccf2b
mov rax, qword [rbx + 0x1c8]
mov qword [rcx], rax
mov qword [rbx + 0x1c8], rcx
jmp 0x1800ccf4d
cmp qword [rbx + 0x308], r12
je 0x1800ccf41
mov rdx, rcx
mov rcx, rbx
call fcn.18002a490
jmp 0x1800ccf46
call fcn.18002a420
mov r9, qword [rbp + 0xc0]
cmp dword [rsp + 0x54], r12d
jne 0x1800ca054
test byte [r14 + 0x12], 4
mov edx, r12d
jne 0x1800ca054
cmp dword [r9], r12d
je 0x1800ccf78
mov rax, qword [r14]
test byte [rax + 4], 1
je 0x1800ca054
mov rax, qword [r14 + 0x30]
test qword [r9 + 0x68], rax
jne 0x1800ca054
test edx, edx
je 0x1800ccfa5
movzx eax, word [r14 + 0x12]
bt ax, 0xa
jae 0x1800ccfa5
mov esi, 0x200
or ax, si
mov word [r14 + 0x12], ax
jmp 0x1800ccfab
or word [r14 + 0x12], 4
movsxd rax, dword [r14 + 0x18]
test eax, eax
js 0x1800ca054
mov rcx, qword [r14 + 8]
imul r14, rax, 0x38
add r14, qword [rcx + 0x20]
add byte [r14 + 0x16], 0xff
jne 0x1800ca054
inc edx
test byte [r14 + 0x12], 4
je 0x1800ccf66
jmp 0x1800ca054
test r8b, 0x40
je 0x1800ccfee
mov r9, rbx
mov byte [rbx + 0x41], 0xb9
jmp 0x1800ca054
mov esi, dword [rsp + 0x48]
lea rdx, [0x180000000]
mov ecx, r10d
mov dword [rbx + 0x44], esi
movzx eax, byte [rcx + rdx + 0x16886c]
movzx r8d, byte [rcx + rdx + 0x165ad8]
mov byte [rbx + 0x41], al
movsxd rdx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], edx
jg 0x1800cd049
mov edx, r8d
mov dword [rsp + 0x20], r12d
mov r8d, esi
mov rcx, rdi
call fcn.180053f80
mov edx, eax
mov byte [rbx + 0x43], 1
mov r9, rbx
lea eax, [rax + 1]
mov dword [rbx + 0x48], eax
jmp 0x1800ca054
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rdi + 0x90], eax
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8 + 8], r9d
mov r9, rbx
mov byte [rax + rcx*8], r8b
mov word [rax + rcx*8 + 2], r12w
mov dword [rax + rcx*8 + 4], esi
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov byte [rax + rcx*8 + 1], r12b
lea eax, [rdx + 1]
mov dword [rbx + 0x48], eax
mov byte [rbx + 0x43], 1
jmp 0x1800ca054
mov rcx, qword [rbp - 0x78]
jmp 0x1800ca057
mov rax, qword [rbp - 0x38]
mov r14, qword [rbx]
movzx eax, byte [rax + 0x3c]
test al, 0x58
je 0x1800cd138
mov ecx, dword [r14 + 4]
test cl, 3
je 0x1800cd277
test al, 8
je 0x1800cd0c7
test cl, 1
je 0x1800cd277
mov rcx, qword [rbp + 0xb0]
mov r8d, dword [r14 + 0x34]
cmp dword [rcx + 0x260], r8d
jne 0x1800cd0e2
mov eax, 1
jmp 0x1800cd124
movsxd r9, dword [rcx + 0x25c]
mov edx, 1
mov eax, 2
cmp rdx, r9
jge 0x1800cd114
add rcx, 0x264
nop
cmp dword [rcx], r8d
je 0x1800cd117
rol rax, 1
inc rdx
add rcx, 4
cmp rdx, r9
jl 0x1800cd100
mov rax, r12
mov r9, qword [rbp + 0xc0]
mov edx, dword [rbp + 0xb8]
test rax, r11
jne 0x1800cd277
mov rcx, qword [rbp - 0x78]
lea r8, [0x180078270]
cmp edx, 1
jne 0x1800cd18e
mov eax, dword [r9 + 4]
xorps xmm0, xmm0
mov dword [rbp - 0x10], eax
lea rax, [rbp - 0x18]
mov qword [rbp + 0x28], rax
mov qword [rbp], r12
mov qword [rbp + 0x20], r12
mov qword [rbp - 0x18], rcx
mov qword [rbp + 8], r8
movdqu xmmword [rbp + 0x10], xmm0
test r14, r14
je 0x1800cd17c
mov rdx, r14
lea rcx, [rbp]
call fcn.180068830
mov r9, qword [rbp + 0xc0]
cmp word [rbp + 0x24], 0
je 0x1800cd193
mov r15d, 2
jmp 0x1800cd277
cmp edx, 3
jge 0x1800cd1b4
movzx r10d, word [rbx + 0x12]
bt r10w, 0xc
jae 0x1800cd1b4
test r15d, r15d
jne 0x1800cd277
mov r15d, 3
jmp 0x1800cd277
bt r10w, 9
jae 0x1800cd228
mov edx, dword [r9 + 0x2c]
test edx, edx
je 0x1800cd228
movsxd rsi, dword [rdi + 0x90]
mov r8d, edx
and edx, 1
shr r8d, 1
or edx, 0x10
cmp dword [rdi + 0x94], esi
jg 0x1800cd1f3
xor r9d, r9d
mov dword [rsp + 0x20], r12d
mov rcx, rdi
call fcn.180053f80
mov esi, eax
jmp 0x1800cd228
lea rcx, [rsi + rsi*2]
lea eax, [rsi + 1]
mov dword [rdi + 0x90], eax
mov rax, qword [rdi + 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 - 0x58]
mov r9d, 0x10
mov rcx, qword [rbp + 0xa0]
mov rdx, r14
call fcn.180077290
test esi, esi
je 0x1800cd272
mov rax, qword [rdi]
mov edx, dword [rdi + 0x90]
cmp byte [rax + 0x67], 0
je 0x1800cd25d
lea rax, [0x180197378]
jmp 0x1800cd26f
movsxd rax, esi
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
or word [rbx + 0x12], 4
mov edx, dword [rbp + 0xb8]
lea r8, [0x180078270]
mov r9, qword [rbp + 0xc0]
dec r13d
mov rcx, qword [rbp - 0x78]
add rbx, 0x38
test r13d, r13d
jg 0x1800ca094
mov r10, qword [rbp - 0x50]
lea r8, [0x180078270]
mov rbx, qword [r10 + 0x20]
mov r9, qword [rbp + 0xc0]
mov edx, r15d
mov dword [rbp + 0xb8], edx
test r15d, r15d
jg 0x1800ca080
mov r14d, dword [r10 + 0x1c]
test r14d, r14d
jle 0x1800cd3de
mov rdi, qword [rbp + 0xa0]
lea rsi, [rbx + 0x14]
mov r13, qword [rbp - 0x38]
test byte [rsi - 2], 6
jne 0x1800cd3c7
movzx eax, word [rsi]
mov edx, 0xb
test al, 0x82
setne cl
bt ax, dx
setb al
test al, cl
je 0x1800cd3c7
mov eax, dword [rsp + 0x48]
cmp dword [rsi + 8], eax
jne 0x1800cd3c7
test byte [r13 + 0x3c], 0x58
jne 0x1800cd3c7
mov r9, qword [rbp + 0xc8]
mov edx, eax
mov r8d, dword [rsi + 0xc]
mov rcx, r10
mov r15, qword [rsi - 0x14]
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x83
call fcn.1800d1790
mov rbx, rax
test rax, rax
je 0x1800cd3c3
test byte [rax + 0x12], 4
jne 0x1800cd3c3
test byte [rax + 0x14], 1
je 0x1800cd374
mov rax, qword [rax]
test dword [rax + 4], 0x1000
je 0x1800cd374
mov rax, qword [rax + 0x20]
mov rcx, qword [rax + 0x20]
cmp dword [rcx], 1
jg 0x1800cd3c3
mov rax, qword [rbx]
lea rdx, [rbp]
mov r8d, dword [rbp - 0x58]
mov r9d, 0x10
mov rcx, rdi
movups xmm0, xmmword [rax]
movaps xmmword [rbp], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rbp + 0x30], xmm1
movsd xmm0, qword [rax + 0x40]
movsd qword [rbp + 0x40], xmm0
mov rax, qword [r15 + 0x10]
mov qword [rbp + 0x10], rax
call fcn.180077290
or word [rbx + 0x12], 4
mov r10, qword [rbp - 0x50]
dec r14d
add rsi, 0x38
test r14d, r14d
jg 0x1800cd2e3
mov rdi, qword [rbp + 0xa8]
mov r8, qword [rbp + 0xc0]
mov r15, qword [r8 + 0x38]
mov qword [rbp - 0x18], r15
test r15, r15
je 0x1800cd7a2
movzx eax, byte [r8 + 0x40]
imul rcx, rax, 0x68
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax + 8]
mov rbx, qword [rcx + rax + 0x28]
mov qword [rbp + 0xc8], rbx
test byte [rbx + 0x30], 0x80
jne 0x1800cd4ba
mov rdx, qword [rbp + 0xa0]
mov ecx, dword [rdx + 0x28]
mov esi, dword [rdx + 0x2c]
cmp ecx, 2
jl 0x1800cd440
lea eax, [rsi + 2]
mov dword [rdx + 0x2c], eax
lea eax, [rcx - 2]
mov dword [rdx + 0x28], eax
jmp 0x1800cd44c
mov eax, dword [rdx + 0x38]
lea esi, [rax + 1]
add eax, 2
mov dword [rdx + 0x38], eax
movsxd rcx, dword [rdi + 0x90]
lea r9d, [rsi + 1]
mov r8d, dword [r8 + 4]
cmp dword [rdi + 0x94], ecx
jg 0x1800cd480
mov edx, 0x87
mov dword [rsp + 0x20], r12d
mov rcx, rdi
call fcn.180053f80
mov r13d, 1
jmp 0x1800cd5ab
lea eax, [rcx + 1]
mov r13d, 1
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x87
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
jmp 0x1800cd5ab
mov rbx, qword [rbx + 0x10]
test rbx, rbx
je 0x1800cd4d5
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x1800cd4d5
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x1800cd4c3
movzx r13d, word [rbx + 0x5e]
mov dword [rbp + 0xb0], r13d
lea ecx, [r13 + 1]
cmp ecx, 1
jne 0x1800cd512
mov rcx, qword [rbp + 0xa0]
movzx eax, byte [rcx + 0x1f]
test al, al
jne 0x1800cd501
inc dword [rcx + 0x38]
mov esi, dword [rcx + 0x38]
jmp 0x1800cd547
dec al
movzx eax, al
mov byte [rcx + 0x1f], al
mov esi, dword [rcx + rax*4 + 0xe8]
jmp 0x1800cd547
mov r8, qword [rbp + 0xa0]
mov edx, dword [r8 + 0x28]
mov esi, dword [r8 + 0x2c]
mov dword [rbp + 0xb8], esi
cmp ecx, edx
jg 0x1800cd53a
lea eax, [rsi + rcx]
sub edx, ecx
mov dword [r8 + 0x2c], eax
mov dword [r8 + 0x28], edx
jmp 0x1800cd54d
mov eax, dword [r8 + 0x38]
lea esi, [rax + 1]
add eax, ecx
mov dword [r8 + 0x38], eax
mov dword [rbp + 0xb8], esi
mov r12, r13
test r13, r13
je 0x1800cd5a8
mov r13, qword [rbp + 0xc8]
lea r15d, [rsi + 1]
mov esi, dword [rsp + 0x48]
xor r14d, r14d
nop word [rax + rax]
mov rax, qword [rbx + 8]
mov r8d, esi
mov rdx, r13
mov dword [rsp + 0x20], r15d
mov rcx, rdi
movsx r9d, word [rax + r14*2]
call fcn.1800736b0
inc r15d
inc r14
cmp r14, r12
jl 0x1800cd570
mov esi, dword [rbp + 0xb8]
mov r13d, dword [rbp + 0xb0]
mov r15, qword [rbp - 0x18]
xor r12d, r12d
movsxd r14, dword [rdi + 0x90]
lea ebx, [rsi + 1]
mov r8d, dword [r15]
cmp dword [rdi + 0x94], r14d
jg 0x1800cd5de
xor r9d, r9d
mov dword [rsp + 0x28], r13d
mov rcx, rdi
mov dword [rsp + 0x20], ebx
lea edx, [r9 + 0x1d]
call fcn.180053fe0
mov r14d, eax
jmp 0x1800cd60d
lea rcx, [r14 + r14*2]
lea eax, [r14 + 1]
mov dword [rdi + 0x90], eax
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0xfd1d
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], ebx
mov dword [rax + rcx*8 + 0x10], r13d
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800cd635
mov r9d, r13d
mov dword [rsp + 0x20], esi
mov r8d, ebx
mov edx, 0x61
mov rcx, rdi
call fcn.180053f80
jmp 0x1800cd662
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x61
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], r12
movsxd rcx, dword [rdi + 0x90]
mov r8d, dword [r15]
cmp dword [rdi + 0x94], ecx
jg 0x1800cd68f
mov dword [rsp + 0x28], r13d
mov r9d, esi
mov edx, 0x8a
mov dword [rsp + 0x20], ebx
mov rcx, rdi
call fcn.180053fe0
jmp 0x1800cd6bc
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0xfd8a
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], ebx
mov dword [rax + rcx*8 + 0x10], r13d
movsxd rcx, dword [rdi + 0x90]
mov edx, dword [r15 + 4]
cmp dword [rdi + 0x94], ecx
jg 0x1800cd6ed
mov r8d, edx
mov dword [rsp + 0x28], r13d
mov edx, 0xb5
mov dword [rsp + 0x20], ebx
xor r9d, r9d
mov rcx, rdi
call fcn.180053fe0
jmp 0x1800cd71a
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0xfdb5
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], ebx
mov dword [rax + rcx*8 + 0x10], r13d
movsxd rdx, dword [rdi + 0x90]
test edx, edx
jle 0x1800cd740
mov rax, qword [rdi + 0x88]
lea rcx, [rdx + rdx*2]
mov edx, 0x10
mov word [rax + rcx*8 - 0x16], dx
mov edx, dword [rdi + 0x90]
mov rax, qword [rdi]
cmp byte [rax + 0x67], 0
je 0x1800cd752
lea rax, [0x180197378]
jmp 0x1800cd764
movsxd rax, r14d
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
lea rax, [rax + rcx*8]
mov r14, qword [rbp + 0xa0]
inc r13d
mov dword [rax + 8], edx
cmp r13d, 1
jne 0x1800cd792
test esi, esi
je 0x1800cd7a9
movzx eax, byte [r14 + 0x1f]
cmp al, 8
jae 0x1800cd7a9
mov dword [r14 + rax*4 + 0xe8], esi
inc byte [r14 + 0x1f]
jmp 0x1800cd7a9
cmp r13d, dword [r14 + 0x28]
jle 0x1800cd7a9
mov dword [r14 + 0x28], r13d
mov dword [r14 + 0x2c], esi
jmp 0x1800cd7a9
mov r14, qword [rbp + 0xa0]
mov r15, qword [rbp + 0xc0]
mov r9d, dword [r15]
test r9d, r9d
je 0x1800cd828
mov eax, dword [rdi + 0x90]
mov dword [r15 + 0x1c], eax
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1800cd7e9
mov edx, 0x47
mov dword [rsp + 0x20], r12d
mov rcx, rdi
lea r8d, [rdx - 0x46]
call fcn.180053f80
jmp 0x1800cd81b
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 4], 1
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
cmp qword [r15 + 0x38], 0
je 0x1800cd897
mov rbx, qword [r15 + 0x38]
jmp 0x1800cd835
mov rbx, qword [r15 + 0x38]
test rbx, rbx
je 0x1800cd8e6
movsxd rcx, dword [rdi + 0x90]
mov edx, dword [rbx + 8]
cmp dword [rdi + 0x94], ecx
jg 0x1800cd860
xor r8d, r8d
mov dword [rsp + 0x20], r12d
mov r9d, edx
mov rcx, rdi
lea edx, [r8 + 0x4a]
call fcn.180053f80
jmp 0x1800cd88a
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 0x4a
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov eax, dword [rdi + 0x90]
mov dword [rbx + 0xc], eax
inc byte [r14 + 0x26]
mov rdi, qword [rbp - 0x50]
cmp dword [rdi + 0x1c], 0
mov rbx, qword [rdi + 0x20]
jle 0x1800cd8e6
test byte [rbx + 0x12], 6
jne 0x1800cd8d9
mov rax, qword [rbx + 0x30]
test qword [r15 + 0x68], rax
jne 0x1800cd8d9
mov rax, qword [rbp - 0x38]
test byte [rax + 0x3c], 0x40
jne 0x1800cd8d9
mov r8d, dword [rbp - 0x58]
mov r9d, 0x10
mov rdx, qword [rbx]
mov rcx, r14
call fcn.180077290
or word [rbx + 0x12], 4
inc r12d
add rbx, 0x38
cmp r12d, dword [rdi + 0x1c]
jl 0x1800cd8a5
mov rax, qword [r15 + 0x68]
add rsp, 0x158
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret