Function at 0x1800cd950
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 rsi
push rdi
sub rsp, 0xb98
mov rax, qword [0x180417028]
mov qword [rsp + 0x7f0], rax
mov rax, qword [rsp + 0x7f0]
mov rax, qword [rax + 0x3dd8]
mov byte [rax + 0x90], 1
mov rax, qword [rsp + 0x7f0]
mov rax, qword [rax + 0x3dd8]
mov qword [rsp + 0x150], rax
mov rax, qword [rsp + 0x150]
movzx eax, byte [rax + 0x93]
test eax, eax
je 0x1800cd9c3
xor al, al
jmp 0x1800d304c
mov rax, qword [0x180417028]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
add rax, 8
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x68]
add rax, 0x3728
mov qword [rsp + 0xe8], rax
mov byte [rsp + 0x1c8], 0
mov eax, dword [rsp + 0xbd8]
and eax, 0x4000000
test eax, eax
je 0x1800cda15
mov byte [rsp + 0xc2], 1
jmp 0x1800cda1d
mov byte [rsp + 0xc2], 0
movzx eax, byte [rsp + 0xc2]
mov byte [rsp + 0x50], al
mov eax, dword [rsp + 0xbd8]
and eax, 0x4000
test eax, eax
je 0x1800cda43
mov byte [rsp + 0xca], 1
jmp 0x1800cda4b
mov byte [rsp + 0xca], 0
movzx eax, byte [rsp + 0xca]
mov byte [rsp + 0x60], al
mov eax, dword [rsp + 0xbd8]
and eax, 0x8000
test eax, eax
je 0x1800cda71
mov byte [rsp + 0xcc], 1
jmp 0x1800cda79
mov byte [rsp + 0xcc], 0
movzx eax, byte [rsp + 0xcc]
mov byte [rsp + 0x89], al
mov eax, dword [rsp + 0xbd8]
and eax, 0x10000
test eax, eax
jne 0x1800cdaa2
mov byte [rsp + 0xcd], 1
jmp 0x1800cdaaa
mov byte [rsp + 0xcd], 0
movzx eax, byte [rsp + 0xcd]
mov byte [rsp + 0xcb], al
mov eax, dword [rsp + 0xbd8]
and eax, 0x40000
test eax, eax
je 0x1800cdad3
mov byte [rsp + 0xce], 1
jmp 0x1800cdadb
mov byte [rsp + 0xce], 0
movzx eax, byte [rsp + 0xce]
mov byte [rsp + 0x94], al
movzx eax, byte [rsp + 0x94]
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800cdb00
call fcn.18005aa70
xor r8d, r8d
mov rdx, qword [rsp + 0xbb0]
mov rcx, qword [rsp + 0x150]
call fcn.180062b20
mov dword [rsp + 0x78], eax
movss xmm0, dword [0x18017ef04]
movss dword [rsp + 0x20], xmm0
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rsp + 0xbb0]
lea rcx, [rsp + 0x460]
call fcn.18005c020
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800cdb6e
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x3b48]
mulss xmm0, dword [0x18017ee90]
movss dword [rsp + 0x300], xmm0
jmp 0x1800cdb80
movss xmm0, dword [rsp + 0x464]
movss dword [rsp + 0x300], xmm0
mov rax, qword [rsp + 0xe8]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x18017ee68]
movss xmm1, dword [rsp + 0x300]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x590], xmm0
call fcn.18005b820
movss dword [rsp + 0x594], xmm0
mov rax, qword [rsp + 0xbd0]
mov rax, qword [rax]
mov qword [rsp + 0x970], rax
mov rax, qword [rsp + 0x970]
mov qword [rsp + 0x978], rax
movss xmm3, dword [rsp + 0x590]
movss xmm2, dword [rsp + 0x594]
mov rdx, qword [rsp + 0x978]
lea rcx, [rsp + 0x3f0]
call fcn.18005b6a0
movss xmm0, dword [rsp + 0x3f4]
movss dword [rsp + 0x5a0], xmm0
movss xmm0, dword [rsp + 0x460]
comiss xmm0, dword [0x180180be4]
jbe 0x1800cdc4b
mov rax, qword [rsp + 0xe8]
movss xmm0, dword [rax + 0x54]
addss xmm0, dword [rsp + 0x460]
movss dword [rsp + 0x390], xmm0
jmp 0x1800cdc57
xorps xmm0, xmm0
movss dword [rsp + 0x390], xmm0
movss xmm0, dword [rsp + 0x3f0]
addss xmm0, dword [rsp + 0x390]
movss dword [rsp + 0x598], xmm0
movss xmm0, dword [rsp + 0x598]
movss dword [rsp + 0x648], xmm0
movss xmm0, dword [rsp + 0x5a0]
movss dword [rsp + 0x64c], xmm0
mov rax, qword [rsp + 0x150]
add rax, 0xd8
mov qword [rsp + 0x7f8], rax
mov rax, qword [rsp + 0x7f8]
movss xmm0, dword [rax + 4]
addss xmm0, dword [rsp + 0x3f4]
movss dword [rsp + 0x5b0], xmm0
mov rax, qword [rsp + 0x7f8]
movss xmm0, dword [rax]
addss xmm0, dword [rsp + 0x3f0]
movss dword [rsp + 0x5a8], xmm0
movss xmm0, dword [rsp + 0x5a8]
movss dword [rsp + 0x800], xmm0
movss xmm0, dword [rsp + 0x5b0]
movss dword [rsp + 0x804], xmm0
mov rax, qword [rsp + 0x150]
mov rax, qword [rax + 0xd8]
mov qword [rsp + 0x158], rax
mov rax, qword [rsp + 0x800]
mov qword [rsp + 0x160], rax
movss xmm0, dword [rsp + 0x15c]
addss xmm0, dword [rsp + 0x64c]
movss dword [rsp + 0x5c0], xmm0
movss xmm0, dword [rsp + 0x158]
addss xmm0, dword [rsp + 0x648]
movss dword [rsp + 0x5b8], xmm0
movss xmm0, dword [rsp + 0x5b8]
movss dword [rsp + 0x848], xmm0
movss xmm0, dword [rsp + 0x5c0]
movss dword [rsp + 0x84c], xmm0
mov rax, qword [rsp + 0x158]
mov qword [rsp + 0x808], rax
mov rax, qword [rsp + 0x848]
mov qword [rsp + 0x810], rax
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0xd8], rax
mov rax, qword [rsp + 0x3f0]
mov qword [rsp + 0x128], rax
mov dword [rsp + 0x198], 0
lea rcx, [rsp + 0xb48]
call fcn.180053ab0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800ce085
mov rax, qword [rsp + 0x150]
mov rax, qword [rax + 0xd8]
mov qword [rsp + 0x980], rax
mov rax, qword [rsp + 0xe8]
movss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x808]
call fcn.180066830
mov r9d, 0x100
lea r8, [rsp + 0x158]
mov edx, dword [rsp + 0x78]
lea rcx, [rsp + 0x808]
call fcn.180066400
movzx eax, al
test eax, eax
jne 0x1800cde56
call fcn.18005f110
xor al, al
jmp 0x1800d304c
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x3ea8]
mov dword [rsp + 0x198], eax
lea rax, [rsp + 0xb48]
mov rcx, qword [rsp + 0x68]
mov rdi, rax
lea rsi, [rcx + 0x3ea0]
mov ecx, 0x3c
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x150]
mov rcx, qword [rsp + 0x980]
mov qword [rax + 0xd8], rcx
mov eax, 0x10
imul rax, rax, 7
mov rcx, qword [rsp + 0xe8]
lea rax, [rcx + rax + 0xc8]
mov rdx, rax
mov ecx, 3
call fcn.1800702a0
mov rax, qword [rsp + 0xe8]
movss xmm1, dword [rax + 0x44]
mov ecx, 7
call fcn.180070450
mov rax, qword [rsp + 0xe8]
movss xmm1, dword [rax + 0x48]
mov ecx, 8
call fcn.180070450
xorps xmm0, xmm0
movss dword [rsp + 0x838], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x83c], xmm0
lea rdx, [rsp + 0x838]
mov ecx, 2
call fcn.180070370
lea rdx, [rsp + 0xb40]
lea rcx, [rsp + 0x158]
call fcn.180063cb0
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 4
mov r9b, 1
mov r8, rax
mov edx, dword [rsp + 0x78]
mov rcx, qword [rsp + 0xbb0]
call fcn.180059d60
mov byte [rsp + 0xfa], al
mov ecx, 3
call fcn.18006fe60
mov ecx, 1
call fcn.18006fdb0
movzx eax, byte [rsp + 0xfa]
test eax, eax
jne 0x1800cdf90
call fcn.18005e6a0
call fcn.18005f110
xor al, al
jmp 0x1800d304c
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3dd8]
mov qword [rsp + 0xd8], rax
mov rax, qword [rsp + 0xd8]
mov eax, dword [rax + 0x12c]
mov ecx, 1
mov dword [rsp + 0x5c8], ecx
movzx ecx, al
mov eax, dword [rsp + 0x5c8]
shl eax, cl
mov rcx, qword [rsp + 0xd8]
movsx ecx, word [rcx + 0x132]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0xd8]
mov word [rcx + 0x132], ax
mov rax, qword [rsp + 0xe8]
add rax, 0x3c
mov qword [rsp + 0x840], rax
mov rax, qword [rsp + 0xd8]
add rax, 0xd8
mov qword [rsp + 0x468], rax
mov rax, qword [rsp + 0x468]
mov rcx, qword [rsp + 0x840]
movss xmm0, dword [rax]
addss xmm0, dword [rcx]
mov rax, qword [rsp + 0x468]
movss dword [rax], xmm0
mov rax, qword [rsp + 0x468]
mov rcx, qword [rsp + 0x840]
movss xmm0, dword [rax + 4]
addss xmm0, dword [rcx + 4]
mov rax, qword [rsp + 0x468]
movss dword [rax + 4], xmm0
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rsp + 0x128]
subss xmm0, dword [rax + 0x84]
movss dword [rsp + 0x128], xmm0
jmp 0x1800ce0ee
mov rax, qword [rsp + 0xe8]
movss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x808]
call fcn.180066830
mov eax, dword [rsp + 0xbd8]
and eax, 0x10000000
test eax, eax
jne 0x1800ce0dc
mov r9d, 0x100
lea r8, [rsp + 0x158]
mov edx, dword [rsp + 0x78]
lea rcx, [rsp + 0x808]
call fcn.180066400
movzx eax, al
test eax, eax
jne 0x1800ce0dc
xor al, al
jmp 0x1800d304c
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x3ea8]
mov dword [rsp + 0x198], eax
mov edx, dword [rsp + 0x78]
lea rcx, [rsp + 0x158]
call fcn.180066610
mov byte [rsp + 0x8a], al
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x1800ce121
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x4178], 1
mov rax, qword [0x180417028]
mov qword [rsp + 0x710], rax
mov rax, qword [rsp + 0x710]
mov ecx, dword [rsp + 0x78]
cmp dword [rax + 0x42f8], ecx
jne 0x1800ce15c
mov rax, qword [rsp + 0x710]
add rax, 0x42f8
mov qword [rsp + 0x718], rax
jmp 0x1800ce168
mov qword [rsp + 0x718], 0
mov rax, qword [rsp + 0x718]
mov qword [rsp + 0x58], rax
mov eax, dword [rsp + 0x198]
and eax, 0x100
test eax, eax
je 0x1800ce18f
mov byte [rsp + 0xcf], 1
jmp 0x1800ce197
mov byte [rsp + 0xcf], 0
movzx eax, byte [rsp + 0xcf]
mov byte [rsp + 0xad], al
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x78]
cmp dword [rax + 0x3e24], ecx
je 0x1800ce1f1
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x78]
cmp dword [rax + 0x4004], ecx
je 0x1800ce1e7
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x78]
cmp dword [rax + 0x3ff8], ecx
jne 0x1800ce1f1
mov rax, qword [rsp + 0x68]
cmp dword [rax + 0x4020], 2
jne 0x1800ce1f1
mov byte [rsp + 0xd0], 1
jmp 0x1800ce1f9
mov byte [rsp + 0xd0], 0
movzx eax, byte [rsp + 0xd0]
mov byte [rsp + 0x91], al
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x1800ce23b
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0x35d8]
test eax, eax
je 0x1800ce23b
mov byte [rsp + 0xa4], 1
jmp 0x1800ce243
mov byte [rsp + 0xa4], 0
movzx eax, byte [rsp + 0xa4]
mov byte [rsp + 0xae], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800ce29a
cmp qword [rsp + 0x58], 0
je 0x1800ce29a
mov rax, qword [rsp + 0x68]
cmp dword [rax + 0x3e24], 0
jne 0x1800ce29a
mov edx, 1
mov rcx, qword [rsp + 0xd8]
call fcn.1800c9330
mov rcx, qword [rsp + 0x68]
cmp dword [rcx + 0x3e70], eax
jne 0x1800ce29a
mov byte [rsp + 0xa5], 1
jmp 0x1800ce2a2
mov byte [rsp + 0xa5], 0
movzx eax, byte [rsp + 0xa5]
mov byte [rsp + 0xfb], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800ce2eb
cmp qword [rsp + 0x58], 0
je 0x1800ce2eb
mov edx, 1
mov rcx, qword [rsp + 0xd8]
call fcn.1800c9330
mov rcx, qword [rsp + 0x68]
cmp dword [rcx + 0x3e24], eax
jne 0x1800ce2eb
mov byte [rsp + 0xa6], 1
jmp 0x1800ce2f3
mov byte [rsp + 0xa6], 0
movzx eax, byte [rsp + 0xa6]
mov byte [rsp + 0xb0], al
mov byte [rsp + 0x73], 0
mov byte [rsp + 0x88], 0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800ce330
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rax + 0x60]
movss dword [rsp + 0x394], xmm0
jmp 0x1800ce341
movss xmm0, dword [0x180180c88]
movss dword [rsp + 0x394], xmm0
movss xmm0, dword [rsp + 0x394]
movss dword [rsp + 0x98], xmm0
cmp qword [rsp + 0x58], 0
je 0x1800ce398
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1800ce371
mov dword [rsp + 0x398], 1
jmp 0x1800ce37c
mov dword [rsp + 0x398], 0
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x63]
cmp eax, dword [rsp + 0x398]
je 0x1800ce398
mov byte [rsp + 0xa7], 1
jmp 0x1800ce3a0
mov byte [rsp + 0xa7], 0
movzx eax, byte [rsp + 0xa7]
mov byte [rsp + 0xaa], al
movzx eax, byte [rsp + 0xae]
test eax, eax
jne 0x1800ce3e9
movzx eax, byte [rsp + 0xfb]
test eax, eax
jne 0x1800ce3e9
movzx eax, byte [rsp + 0x91]
test eax, eax
jne 0x1800ce3e9
movzx eax, byte [rsp + 0xad]
test eax, eax
jne 0x1800ce3e9
mov byte [rsp + 0xa8], 0
jmp 0x1800ce3f1
mov byte [rsp + 0xa8], 1
movzx eax, byte [rsp + 0xa8]
mov byte [rsp + 0x90], al
movzx eax, byte [rsp + 0x90]
test eax, eax
jne 0x1800ce422
movzx eax, byte [rsp + 0xb0]
test eax, eax
jne 0x1800ce422
mov byte [rsp + 0xa9], 0
jmp 0x1800ce42a
mov byte [rsp + 0xa9], 1
movzx eax, byte [rsp + 0xa9]
mov byte [rsp + 0xaf], al
movzx eax, byte [rsp + 0xaf]
test eax, eax
je 0x1800ce456
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x78]
cmp dword [rax + 0x3e24], ecx
jne 0x1800ce466
movzx eax, byte [rsp + 0xaa]
test eax, eax
je 0x1800ce6dd
mov rax, qword [rsp + 0x68]
add rax, 0x42f8
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x58]
movss xmm0, dword [0x180183934]
movss dword [rax + 0xe78], xmm0
mov rcx, qword [rsp + 0xbc0]
call fcn.18004db30
mov dword [rsp + 0x3a0], eax
mov rax, qword [rsp + 0x58]
add rax, 0x30
mov qword [rsp + 0x988], rax
mov eax, dword [rsp + 0x3a0]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x988]
call fcn.18007ee30
mov eax, dword [rsp + 0x3a0]
inc eax
cdqe
mov r8, rax
mov rdx, qword [rsp + 0xbc0]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x38]
call fcn.180018cb0
mov qword [rsp + 0x720], 0
mov rax, qword [rsp + 0x58]
add rax, 0x10
mov qword [rsp + 0x990], rax
mov eax, dword [rsp + 0xbc8]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x990]
call fcn.18007eec0
mov rax, qword [rsp + 0x58]
add rax, 0x20
mov qword [rsp + 0x998], rax
xor edx, edx
mov rcx, qword [rsp + 0x998]
call fcn.18007ee30
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x40], 0
lea rax, [rsp + 0x720]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0xbc0]
mov edx, dword [rsp + 0xbc8]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x18]
call fcn.180065480
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 4], eax
mov rax, qword [rsp + 0xbc0]
mov rcx, qword [rsp + 0x720]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 8], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x78]
cmp dword [rax], ecx
jne 0x1800ce5c0
movzx eax, byte [rsp + 0xaa]
test eax, eax
jne 0x1800ce5c0
mov byte [rsp + 0xab], 1
jmp 0x1800ce5c8
mov byte [rsp + 0xab], 0
movzx eax, byte [rsp + 0xab]
mov byte [rsp + 0xac], al
movzx eax, byte [rsp + 0xac]
test eax, eax
je 0x1800ce5ef
mov rcx, qword [rsp + 0x58]
call fcn.1800c8990
jmp 0x1800ce640
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x78]
mov dword [rax], ecx
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
movss dword [rax + 0x48], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1800ce61d
mov dword [rsp + 0x3a4], 1
jmp 0x1800ce628
mov dword [rsp + 0x3a4], 0
mov rax, qword [rsp + 0x58]
add rax, 0x4c
mov edx, dword [rsp + 0x3a4]
mov rcx, rax
call fcn.1800dbdb0
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1800ce6c4
mov eax, dword [rsp + 0xbd8]
and eax, 0x10
test eax, eax
je 0x1800ce65f
mov byte [rsp + 0x88], 1
movzx eax, byte [rsp + 0x91]
test eax, eax
je 0x1800ce691
movzx eax, byte [rsp + 0xac]
test eax, eax
je 0x1800ce689
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4008]
and eax, 4
test eax, eax
jne 0x1800ce691
mov byte [rsp + 0x88], 1
movzx eax, byte [rsp + 0xad]
test eax, eax
jne 0x1800ce6bc
movzx eax, byte [rsp + 0xae]
test eax, eax
je 0x1800ce6c4
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0c]
test eax, eax
je 0x1800ce6c4
mov byte [rsp + 0x88], 1
mov eax, dword [rsp + 0xbd8]
and eax, 0x2000
test eax, eax
je 0x1800ce6dd
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x58], 1
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x78]
cmp dword [rax + 0x3e24], ecx
je 0x1800ce7e0
movzx eax, byte [rsp + 0x90]
test eax, eax
je 0x1800ce7e0
mov rdx, qword [rsp + 0x150]
mov ecx, dword [rsp + 0x78]
call fcn.1800757d0
mov rdx, qword [rsp + 0x150]
mov ecx, dword [rsp + 0x78]
call fcn.180075fc0
mov rcx, qword [rsp + 0x150]
call fcn.180061830
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x3e38]
or eax, 3
mov rcx, qword [rsp + 0x68]
mov dword [rcx + 0x3e38], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1800ce763
mov eax, dword [rsp + 0xbd8]
and eax, 0x80
test eax, eax
je 0x1800ce77c
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x3e38]
or eax, 0xc
mov rcx, qword [rsp + 0x68]
mov dword [rcx + 0x3e38], eax
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x3e3c]
or eax, 2
mov rcx, qword [rsp + 0x68]
mov dword [rcx + 0x3e3c], eax
mov ecx, 0x207
call fcn.1800d6780
mov ecx, 0x208
call fcn.1800d6780
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800ce7c6
mov ecx, 0x205
call fcn.1800d6780
mov ecx, 0x206
call fcn.1800d6780
mov eax, dword [rsp + 0xbd8]
and eax, 0x440
test eax, eax
je 0x1800ce7e0
mov ecx, 0x200
call fcn.1800d6780
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x78]
cmp dword [rax + 0x3e24], ecx
jne 0x1800ce7fe
cmp qword [rsp + 0x58], 0
jne 0x1800ce7fe
call fcn.18005d540
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x78]
cmp dword [rax + 0x3e24], ecx
jne 0x1800ce849
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0x35d8]
test eax, eax
je 0x1800ce849
movzx eax, byte [rsp + 0xaf]
test eax, eax
jne 0x1800ce849
movzx eax, byte [rsp + 0x90]
test eax, eax
jne 0x1800ce849
mov byte [rsp + 0x73], 1
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x78]
cmp dword [rax + 0x3e24], ecx
je 0x1800ce878
cmp qword [rsp + 0x58], 0
je 0x1800ce86e
movzx eax, byte [rsp + 0xb0]
test eax, eax
jne 0x1800ce878
mov byte [rsp + 0xb1], 0
jmp 0x1800ce880
mov byte [rsp + 0xb1], 1
movzx eax, byte [rsp + 0xb1]
mov byte [rsp + 0x71], al
cmp qword [rsp + 0x58], 0
je 0x1800ce8f2
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x54]
cmp dword [rax + 0x50], ecx
je 0x1800ce8b3
mov dword [rsp + 0x3a8], 1
jmp 0x1800ce8be
mov dword [rsp + 0x3a8], 0
movzx eax, byte [rsp + 0x3a8]
test eax, eax
jne 0x1800ce8d6
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x1800ce8f2
xor eax, eax
test eax, eax
jne 0x1800ce8e5
movzx eax, byte [rsp + 0x71]
test eax, eax
je 0x1800ce8f2
mov dword [rsp + 0x3ac], 1
jmp 0x1800ce8fd
mov dword [rsp + 0x3ac], 0
movzx eax, byte [rsp + 0x3ac]
mov byte [rsp + 0x70], al
mov byte [rsp + 0x95], 0
mov byte [rsp + 0x8f], 0
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x1800cea18
cmp qword [rsp + 0x58], 0
je 0x1800cea18
movzx eax, byte [rsp + 0x71]
test eax, eax
jne 0x1800ce948
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x1800cea18
mov qword [rsp + 0x728], 0
mov rax, qword [rsp + 0x58]
add rax, 0x10
mov qword [rsp + 0x9a0], rax
mov eax, dword [rsp + 0xbc8]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x9a0]
call fcn.18007eec0
lea rax, [rsp + 0x728]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0xbc0]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x10]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x18]
call fcn.180065480
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 4], eax
mov rax, qword [rsp + 0xbc0]
mov rcx, qword [rsp + 0x728]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 8], eax
mov rcx, qword [rsp + 0x58]
call fcn.1800c8990
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x54]
cmp dword [rax + 0x50], ecx
je 0x1800ce9fa
mov dword [rsp + 0x3b0], 1
jmp 0x1800cea05
mov dword [rsp + 0x3b0], 0
movzx eax, byte [rsp + 0x70]
movzx ecx, byte [rsp + 0x3b0]
and eax, ecx
mov byte [rsp + 0x70], al
movzx eax, byte [rsp + 0x71]
test eax, eax
jne 0x1800cea3b
movzx eax, byte [rsp + 0x70]
test eax, eax
jne 0x1800cea3b
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x78]
cmp dword [rax + 0x3e24], ecx
jne 0x1800cea63
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1800cea63
cmp qword [rsp + 0x58], 0
je 0x1800cea63
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x40]
test eax, eax
je 0x1800cea63
mov byte [rsp + 0xb2], 1
jmp 0x1800cea6b
mov byte [rsp + 0xb2], 0
movzx eax, byte [rsp + 0xb2]
mov byte [rsp + 0xc9], al
cmp qword [rsp + 0xbb8], 0
je 0x1800cead7
movzx eax, byte [rsp + 0xc9]
test eax, eax
je 0x1800ceaa4
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x28]
mov qword [rsp + 0x730], rax
jmp 0x1800ceab4
mov rax, qword [rsp + 0xbc0]
mov qword [rsp + 0x730], rax
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x730]
movsx eax, byte [rcx + rax]
test eax, eax
jne 0x1800cead7
mov byte [rsp + 0xb3], 1
jmp 0x1800ceadf
mov byte [rsp + 0xb3], 0
movzx eax, byte [rsp + 0xb3]
mov byte [rsp + 0x72], al
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x1800cec17
movzx eax, byte [rsp + 0x72]
test eax, eax
jne 0x1800cec17
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3b40]
mov qword [rsp + 0x9a8], rax
mov dx, 0x2a
mov rcx, qword [rsp + 0x9a8]
call fcn.18008bd20
mov qword [rsp + 0x738], rax
mov rax, qword [rsp + 0x68]
add rax, 0x5180
mov qword [rsp + 0x170], rax
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3b40]
mov rcx, qword [rsp + 0x170]
movss xmm0, dword [rax + 0x14]
movss dword [rcx + 0x14], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3b40]
mov rcx, qword [rsp + 0x170]
movss xmm0, dword [rax + 0x5c]
movss dword [rcx + 0x5c], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3b40]
mov rcx, qword [rsp + 0x170]
movss xmm0, dword [rax + 0x60]
movss dword [rcx + 0x60], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3b40]
mov rcx, qword [rsp + 0x170]
movss xmm0, dword [rax + 0x64]
movss dword [rcx + 0x64], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3b40]
mov rcx, qword [rsp + 0x170]
mov rax, qword [rax + 0x40]
mov qword [rcx + 0x40], rax
mov rax, qword [rsp + 0x170]
mov rcx, qword [rsp + 0x738]
mov qword [rax + 0x38], rcx
mov rax, qword [rsp + 0x170]
mov rcx, qword [rsp + 0x738]
movss xmm0, dword [rcx + 4]
movss dword [rax + 0x10], xmm0
mov rcx, qword [rsp + 0x170]
call fcn.180070090
mov dword [rsp + 0x1cc], 0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x78]
cmp dword [rax + 0x3e24], ecx
jne 0x1800cf429
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 8]
mov dword [rsp + 0x1cc], eax
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe7e], 0
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0xbc8]
mov dword [rax + 0x44], ecx
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0xbd8]
mov dword [rax + 0xe80], ecx
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0xcfc]
test eax, eax
jne 0x1800cec9d
mov dword [rsp + 0x3b4], 1
jmp 0x1800ceca8
mov dword [rsp + 0x3b4], 0
mov rax, qword [rsp + 0x68]
movzx ecx, byte [rsp + 0x3b4]
mov byte [rax + 0x3e31], cl
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x557c], 1
mov rax, qword [rsp + 0x80]
movss xmm0, dword [rax + 0xcf4]
subss xmm0, dword [rsp + 0x158]
mov rax, qword [rsp + 0xe8]
subss xmm0, dword [rax + 0x3c]
mov rax, qword [rsp + 0x58]
addss xmm0, dword [rax + 0x48]
movss dword [rsp + 0x1a0], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800ced37
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0xd8]
movss xmm0, dword [rax + 0xcf8]
subss xmm0, dword [rcx + 0xdc]
movss dword [rsp + 0x3b8], xmm0
jmp 0x1800ced55
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x3b48]
mulss xmm0, dword [0x18017ee48]
movss dword [rsp + 0x3b8], xmm0
movss xmm0, dword [rsp + 0x3b8]
movss dword [rsp + 0x19c], xmm0
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x69]
mov byte [rsp + 0xfe], al
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x1800ceda1
mov rcx, qword [rsp + 0x58]
call fcn.1800d53f0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe7d], 1
jmp 0x1800cf161
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x1800cf036
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, word [rcx + rax + 0x35e2]
cmp eax, 2
jl 0x1800cf036
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0d]
test eax, eax
jne 0x1800cf036
mov rax, qword [rsp + 0x58]
add rax, 0x4c
movss xmm3, dword [rsp + 0x19c]
movss xmm2, dword [rsp + 0x1a0]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1800db4e0
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, word [rcx + rax + 0x35e2]
sub eax, 2
mov dword [rsp + 0x5cc], eax
mov eax, dword [rsp + 0x5cc]
cdq
and eax, 1
xor eax, edx
sub eax, edx
test eax, eax
jne 0x1800cef2b
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x4c], 0
je 0x1800cee7f
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x4c]
dec eax
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1800d3d40
movzx eax, ax
cmp eax, 0xa
je 0x1800cee7f
mov byte [rsp + 0xb4], 0
jmp 0x1800cee87
mov byte [rsp + 0xb4], 1
movzx eax, byte [rsp + 0xb4]
mov byte [rsp + 0xfc], al
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x54]
cmp dword [rax + 0x50], ecx
jne 0x1800ceeb4
movzx eax, byte [rsp + 0xfc]
test eax, eax
jne 0x1800ceec3
mov edx, 0x20000c
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x54]
cmp dword [rax + 0x50], ecx
jne 0x1800ceee6
mov rax, qword [rsp + 0x58]
add rax, 0x4c
mov rcx, rax
call fcn.1800dd1d0
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x4c]
mov rcx, qword [rsp + 0x58]
call fcn.1800d4260
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x4c], eax
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x4c]
mov dword [rax + 0x54], ecx
mov rax, qword [rsp + 0x58]
add rax, 0x4c
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1800db380
jmp 0x1800cf01c
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x4c]
mov rcx, qword [rsp + 0x58]
call fcn.1800d3d40
movzx eax, ax
cmp eax, 0xa
jne 0x1800cef4f
mov byte [rsp + 0xb5], 1
jmp 0x1800cef57
mov byte [rsp + 0xb5], 0
movzx eax, byte [rsp + 0xb5]
mov byte [rsp + 0xfd], al
mov edx, 0x200004
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
mov edx, 0x600005
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
mov edx, 0x600001
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
movzx eax, byte [rsp + 0xfd]
test eax, eax
jne 0x1800cf010
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800cf010
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov qword [rsp + 0x748], rax
mov rax, qword [rsp + 0x58]
add rax, 0x50
mov qword [rsp + 0x740], rax
mov rax, qword [rsp + 0x740]
mov eax, dword [rax]
mov dword [rsp + 0x5d0], eax
mov rax, qword [rsp + 0x740]
mov rcx, qword [rsp + 0x748]
mov ecx, dword [rcx]
mov dword [rax], ecx
mov rax, qword [rsp + 0x748]
mov ecx, dword [rsp + 0x5d0]
mov dword [rax], ecx
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x54]
mov dword [rax + 0x4c], ecx
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe7c], 0
mov rax, qword [rsp + 0x58]
movss xmm0, dword [0x180183934]
movss dword [rax + 0xe78], xmm0
jmp 0x1800cf161
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0x35d8]
test eax, eax
je 0x1800cf0b1
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe7d]
test eax, eax
jne 0x1800cf0b1
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x1800cf0ac
mov rax, qword [rsp + 0x58]
add rax, 0x4c
movss xmm3, dword [rsp + 0x19c]
movss xmm2, dword [rsp + 0x1a0]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1800db4e0
mov rax, qword [rsp + 0x58]
movss xmm0, dword [0x180183934]
movss dword [rax + 0xe78], xmm0
jmp 0x1800cf161
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0xcfc]
test eax, eax
je 0x1800cf161
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe7d]
test eax, eax
jne 0x1800cf161
mov rax, qword [rsp + 0x80]
movss xmm0, dword [rax + 0xe8]
ucomiss xmm0, dword [0x180180be4]
jp 0x1800cf118
jne 0x1800cf118
mov rax, qword [rsp + 0x80]
movss xmm0, dword [rax + 0xec]
ucomiss xmm0, dword [0x180180be4]
jp 0x1800cf118
je 0x1800cf161
mov rax, qword [rsp + 0x58]
add rax, 0x4c
movss xmm3, dword [rsp + 0x19c]
movss xmm2, dword [rsp + 0x1a0]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1800dba70
mov rax, qword [rsp + 0x58]
movss xmm0, dword [0x180183934]
movss dword [rax + 0xe78], xmm0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe7c], 1
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe7d]
test eax, eax
je 0x1800cf19a
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0xcfc]
test eax, eax
jne 0x1800cf19a
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe7d], 0
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0c]
test eax, eax
je 0x1800cf1c0
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0e]
test eax, eax
je 0x1800cf1e9
movzx eax, byte [rsp + 0xfe]
test eax, eax
je 0x1800cf1df
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0f]
test eax, eax
jne 0x1800cf1e9
mov byte [rsp + 0xb6], 0
jmp 0x1800cf1f1
mov byte [rsp + 0xb6], 1
movzx eax, byte [rsp + 0xb6]
mov byte [rsp + 0xb7], al
mov eax, dword [rsp + 0xbd8]
and eax, 0x400
test eax, eax
je 0x1800cf2ed
mov dl, 1
mov ecx, 0x200
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800cf2ed
movzx eax, byte [rsp + 0xb7]
test eax, eax
jne 0x1800cf2ed
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0d]
test eax, eax
jne 0x1800cf2ed
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1800cf2ed
mov rax, qword [rsp + 0x80]
add rax, 0x36f0
mov qword [rsp + 0x9b0], rax
mov eax, 9
mov word [rsp + 0x1ca], ax
lea rdx, [rsp + 0x1ca]
mov rcx, qword [rsp + 0x9b0]
call fcn.1800da6a0
movzx eax, al
test eax, eax
jne 0x1800cf2ed
mov dword [rsp + 0x3bc], 9
mov dword [rsp + 0x20], 2
mov r9, qword [rsp + 0xbe8]
mov r8, qword [rsp + 0xbe0]
mov edx, dword [rsp + 0xbd8]
lea rcx, [rsp + 0x3bc]
call fcn.1800d3060
movzx eax, al
test eax, eax
je 0x1800cf2ed
mov edx, dword [rsp + 0x3bc]
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
mov rax, qword [rsp + 0x80]
cmp dword [rax + 0x36f0], 0
jle 0x1800cf429
movzx eax, byte [rsp + 0xb7]
test eax, eax
jne 0x1800cf404
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1800cf404
movzx eax, byte [rsp + 0x91]
test eax, eax
jne 0x1800cf404
mov dword [rsp + 0x168], 0
jmp 0x1800cf34c
mov eax, dword [rsp + 0x168]
inc eax
mov dword [rsp + 0x168], eax
mov rax, qword [rsp + 0x80]
mov eax, dword [rax + 0x36f0]
cmp dword [rsp + 0x168], eax
jge 0x1800cf404
mov rax, qword [rsp + 0x80]
add rax, 0x36f0
mov qword [rsp + 0x850], rax
movsxd rax, dword [rsp + 0x168]
mov rcx, qword [rsp + 0x850]
mov rcx, qword [rcx + 8]
movzx eax, word [rcx + rax*2]
mov dword [rsp + 0x1a4], eax
cmp dword [rsp + 0x1a4], 9
jne 0x1800cf3bb
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0d]
test eax, eax
je 0x1800cf3bb
jmp 0x1800cf33c
mov dword [rsp + 0x20], 2
mov r9, qword [rsp + 0xbe8]
mov r8, qword [rsp + 0xbe0]
mov edx, dword [rsp + 0xbd8]
lea rcx, [rsp + 0x1a4]
call fcn.1800d3060
movzx eax, al
test eax, eax
je 0x1800cf3ff
mov edx, dword [rsp + 0x1a4]
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
jmp 0x1800cf33c
mov rax, qword [rsp + 0x80]
add rax, 0x36f0
mov qword [rsp + 0x858], rax
xor edx, edx
mov rcx, qword [rsp + 0x858]
call fcn.18007eec0
mov byte [rsp + 0x8d], 0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x78]
cmp dword [rax + 0x3e24], ecx
jne 0x1800d072d
mov rax, qword [rsp + 0x68]
movzx eax, byte [rax + 0x3e30]
test eax, eax
jne 0x1800d072d
movzx eax, byte [rsp + 0x73]
test eax, eax
jne 0x1800d072d
mov rax, qword [rsp + 0xe8]
movss xmm0, dword [rsp + 0x12c]
subss xmm0, dword [rax + 0x40]
mov rax, qword [rsp + 0x68]
divss xmm0, dword [rax + 0x3b48]
cvttss2si eax, xmm0
mov dword [rsp + 0x3c0], eax
cmp dword [rsp + 0x3c0], 1
jl 0x1800cf4af
mov eax, dword [rsp + 0x3c0]
mov dword [rsp + 0x3c8], eax
jmp 0x1800cf4ba
mov dword [rsp + 0x3c8], 1
mov eax, dword [rsp + 0x3c8]
mov dword [rsp + 0x1a8], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x1a8]
mov dword [rax + 0x5c], ecx
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0d]
test eax, eax
je 0x1800cf4f7
mov dword [rsp + 0x3cc], 0x400000
jmp 0x1800cf502
mov dword [rsp + 0x3cc], 0
mov eax, dword [rsp + 0x3cc]
mov dword [rsp + 0x9c], eax
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x69]
mov byte [rsp + 0x8c], al
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x1800cf54a
mov rax, qword [rsp + 0x80]
cmp dword [rax + 0xd60], 0xa
jne 0x1800cf54a
mov byte [rsp + 0xb8], 1
jmp 0x1800cf552
mov byte [rsp + 0xb8], 0
movzx eax, byte [rsp + 0xb8]
mov byte [rsp + 0x104], al
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x1800cf585
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0e]
mov byte [rsp + 0xb9], al
jmp 0x1800cf59b
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0c]
mov byte [rsp + 0xb9], al
movzx eax, byte [rsp + 0xb9]
mov byte [rsp + 0x92], al
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x1800cf5f9
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0f]
test eax, eax
je 0x1800cf5f9
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0c]
test eax, eax
jne 0x1800cf5f9
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0e]
test eax, eax
jne 0x1800cf5f9
mov byte [rsp + 0xba], 1
jmp 0x1800cf601
mov byte [rsp + 0xba], 0
movzx eax, byte [rsp + 0xba]
mov byte [rsp + 0x8b], al
mov rax, qword [rsp + 0x80]
cmp dword [rax + 0xd60], 1
jne 0x1800cf62b
mov byte [rsp + 0xbb], 1
jmp 0x1800cf633
mov byte [rsp + 0xbb], 0
movzx eax, byte [rsp + 0xbb]
mov byte [rsp + 0xff], al
mov rax, qword [rsp + 0x80]
cmp dword [rax + 0xd60], 2
jne 0x1800cf65d
mov byte [rsp + 0xbc], 1
jmp 0x1800cf665
mov byte [rsp + 0xbc], 0
movzx eax, byte [rsp + 0xbc]
mov byte [rsp + 0xbf], al
mov rax, qword [rsp + 0x68]
movzx eax, byte [rax + 0x71]
test eax, eax
je 0x1800cf6ba
mov rax, qword [rsp + 0x80]
cmp dword [rax + 0xd60], 8
jne 0x1800cf69f
mov dword [rsp + 0x3d0], 1
jmp 0x1800cf6aa
mov dword [rsp + 0x3d0], 0
mov eax, dword [rsp + 0x3d0]
mov dword [rsp + 0x3d8], eax
jmp 0x1800cf6f1
mov rax, qword [rsp + 0x80]
cmp dword [rax + 0xd60], 1
jne 0x1800cf6d8
mov dword [rsp + 0x3d4], 1
jmp 0x1800cf6e3
mov dword [rsp + 0x3d4], 0
mov eax, dword [rsp + 0x3d4]
mov dword [rsp + 0x3d8], eax
movzx eax, byte [rsp + 0x3d8]
mov byte [rsp + 0x74], al
movzx eax, byte [rsp + 0x74]
test eax, eax
je 0x1800cf719
mov dl, 1
mov ecx, 0x239
call fcn.180065b50
movzx eax, al
test eax, eax
jne 0x1800cf738
movzx eax, byte [rsp + 0xbf]
test eax, eax
je 0x1800cf796
mov dl, 1
mov ecx, 0x20a
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800cf796
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1800cf796
movzx eax, byte [rsp + 0x89]
test eax, eax
jne 0x1800cf796
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800cf78c
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x54]
cmp dword [rax + 0x50], ecx
je 0x1800cf775
mov dword [rsp + 0x3dc], 1
jmp 0x1800cf780
mov dword [rsp + 0x3dc], 0
movzx eax, byte [rsp + 0x3dc]
test eax, eax
je 0x1800cf796
mov byte [rsp + 0xbd], 1
jmp 0x1800cf79e
mov byte [rsp + 0xbd], 0
movzx eax, byte [rsp + 0xbd]
mov byte [rsp + 0x93], al
movzx eax, byte [rsp + 0x74]
test eax, eax
je 0x1800cf7c9
mov dl, 1
mov ecx, 0x224
call fcn.180065b50
movzx eax, al
test eax, eax
jne 0x1800cf7e8
movzx eax, byte [rsp + 0xff]
test eax, eax
je 0x1800cf83d
mov dl, 1
mov ecx, 0x209
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800cf83d
movzx eax, byte [rsp + 0x89]
test eax, eax
jne 0x1800cf83d
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800cf833
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x54]
cmp dword [rax + 0x50], ecx
je 0x1800cf81c
mov dword [rsp + 0x3e0], 1
jmp 0x1800cf827
mov dword [rsp + 0x3e0], 0
movzx eax, byte [rsp + 0x3e0]
test eax, eax
je 0x1800cf83d
mov byte [rsp + 0xbe], 1
jmp 0x1800cf845
mov byte [rsp + 0xbe], 0
movzx eax, byte [rsp + 0xbe]
mov byte [rsp + 0xf0], al
movzx eax, byte [rsp + 0x74]
test eax, eax
je 0x1800cf870
mov dl, 1
mov ecx, 0x237
call fcn.180065b50
movzx eax, al
test eax, eax
jne 0x1800cf88f
movzx eax, byte [rsp + 0xbf]
test eax, eax
je 0x1800cf8a2
mov dl, 1
mov ecx, 0x209
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800cf8a2
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1800cf8a2
mov byte [rsp + 0xc0], 1
jmp 0x1800cf8aa
mov byte [rsp + 0xc0], 0
movzx eax, byte [rsp + 0xc0]
mov byte [rsp + 0xf1], al
movzx eax, byte [rsp + 0x74]
test eax, eax
je 0x1800cf8f4
mov dl, 1
mov ecx, 0x23b
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800cf8f4
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1800cf8f4
movzx eax, byte [rsp + 0xcb]
test eax, eax
je 0x1800cf8f4
mov byte [rsp + 0xc1], 1
jmp 0x1800cf8fc
mov byte [rsp + 0xc1], 0
movzx eax, byte [rsp + 0xc1]
mov byte [rsp + 0xc8], al
movzx eax, byte [rsp + 0x74]
test eax, eax
je 0x1800cf927
mov dl, 1
mov ecx, 0x23a
call fcn.180065b50
movzx eax, al
test eax, eax
jne 0x1800cf946
movzx eax, byte [rsp + 0x104]
test eax, eax
je 0x1800cf965
mov dl, 1
mov ecx, 0x23b
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800cf965
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1800cf965
movzx eax, byte [rsp + 0xcb]
test eax, eax
je 0x1800cf965
mov byte [rsp + 0xc3], 1
jmp 0x1800cf96d
mov byte [rsp + 0xc3], 0
movzx eax, byte [rsp + 0xc3]
mov byte [rsp + 0x108], al
mov dl, 1
mov ecx, 0x20d
call fcn.180065b50
movzx eax, al
test eax, eax
jne 0x1800cf9ac
mov dl, 1
mov ecx, 0x267
call fcn.180065b50
movzx eax, al
test eax, eax
jne 0x1800cf9ac
mov byte [rsp + 0xc4], 0
jmp 0x1800cf9b4
mov byte [rsp + 0xc4], 1
movzx eax, byte [rsp + 0xc4]
mov byte [rsp + 0x105], al
mov edx, 1
xor ecx, ecx
call fcn.1800634b0
comiss xmm0, dword [0x180180be4]
jbe 0x1800cf9e5
mov dword [rsp + 0x3e4], 1
jmp 0x1800cf9f0
mov dword [rsp + 0x3e4], 0
movzx eax, byte [rsp + 0x3e4]
test eax, eax
je 0x1800cfa0f
mov dl, 1
mov ecx, 0x20c
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800cfa55
mov edx, 1
mov ecx, 2
call fcn.1800634b0
comiss xmm0, dword [0x180180be4]
jbe 0x1800cfa34
mov dword [rsp + 0x3e8], 1
jmp 0x1800cfa3f
mov dword [rsp + 0x3e8], 0
movzx eax, byte [rsp + 0x3e8]
test eax, eax
jne 0x1800cfa55
mov byte [rsp + 0xc5], 0
jmp 0x1800cfa5d
mov byte [rsp + 0xc5], 1
movzx eax, byte [rsp + 0xc5]
mov byte [rsp + 0x106], al
mov dl, 1
mov ecx, 0x20e
call fcn.180065b50
movzx eax, al
test eax, eax
jne 0x1800cfac5
mov edx, 1
mov ecx, 1
call fcn.1800634b0
comiss xmm0, dword [0x180180be4]
jbe 0x1800cfaa4
mov dword [rsp + 0x400], 1
jmp 0x1800cfaaf
mov dword [rsp + 0x400], 0
movzx eax, byte [rsp + 0x400]
test eax, eax
jne 0x1800cfac5
mov byte [rsp + 0xc6], 0
jmp 0x1800cfacd
mov byte [rsp + 0xc6], 1
movzx eax, byte [rsp + 0xc6]
mov byte [rsp + 0x107], al
mov dl, 1
mov ecx, 0x201
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800cfb5d
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x1800cfb08
mov dword [rsp + 0x214], 0x200004
jmp 0x1800cfb3a
movzx eax, byte [rsp + 0x92]
test eax, eax
je 0x1800cfb21
mov dword [rsp + 0x210], 0x20000c
jmp 0x1800cfb2c
mov dword [rsp + 0x210], 0x200000
mov eax, dword [rsp + 0x210]
mov dword [rsp + 0x214], eax
mov eax, dword [rsp + 0x9c]
mov ecx, dword [rsp + 0x214]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
jmp 0x1800d06c0
mov dl, 1
mov ecx, 0x202
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800cfbde
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x1800cfb89
mov dword [rsp + 0x21c], 0x200005
jmp 0x1800cfbbb
movzx eax, byte [rsp + 0x92]
test eax, eax
je 0x1800cfba2
mov dword [rsp + 0x218], 0x20000d
jmp 0x1800cfbad
mov dword [rsp + 0x218], 0x200001
mov eax, dword [rsp + 0x218]
mov dword [rsp + 0x21c], eax
mov eax, dword [rsp + 0x9c]
mov ecx, dword [rsp + 0x21c]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
jmp 0x1800d06c0
mov dl, 1
mov ecx, 0x203
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800cfcc9
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800cfcc9
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0c]
test eax, eax
je 0x1800cfc82
mov rax, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x60]
subss xmm0, dword [rcx + 0x3b48]
movss dword [rsp + 0x220], xmm0
movss xmm0, dword [rsp + 0x220]
comiss xmm0, dword [0x180180be4]
jb 0x1800cfc5e
movss xmm0, dword [rsp + 0x220]
movss dword [rsp + 0x228], xmm0
jmp 0x1800cfc6a
xorps xmm0, xmm0
movss dword [rsp + 0x228], xmm0
movss xmm1, dword [rsp + 0x228]
mov rcx, qword [rsp + 0xd8]
call fcn.180077ee0
jmp 0x1800cfcc4
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x1800cfc9b
mov dword [rsp + 0x22c], 0x200006
jmp 0x1800cfca6
mov dword [rsp + 0x22c], 0x200002
mov eax, dword [rsp + 0x9c]
mov ecx, dword [rsp + 0x22c]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
jmp 0x1800d06c0
mov dl, 1
mov ecx, 0x204
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800cfdcd
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800cfdcd
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0c]
test eax, eax
je 0x1800cfd86
call fcn.180063c80
movss dword [rsp + 0x234], xmm0
mov rax, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x60]
addss xmm0, dword [rcx + 0x3b48]
movss dword [rsp + 0x230], xmm0
movss xmm0, dword [rsp + 0x234]
comiss xmm0, dword [rsp + 0x230]
jbe 0x1800cfd5c
movss xmm0, dword [rsp + 0x230]
movss dword [rsp + 0x238], xmm0
jmp 0x1800cfd6e
movss xmm0, dword [rsp + 0x234]
movss dword [rsp + 0x238], xmm0
movss xmm1, dword [rsp + 0x238]
mov rcx, qword [rsp + 0xd8]
call fcn.180077ee0
jmp 0x1800cfdc8
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x1800cfd9f
mov dword [rsp + 0x23c], 0x200007
jmp 0x1800cfdaa
mov dword [rsp + 0x23c], 0x200003
mov eax, dword [rsp + 0x9c]
mov ecx, dword [rsp + 0x23c]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
jmp 0x1800d06c0
mov dl, 1
mov ecx, 0x205
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800cfe35
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800cfe35
mov eax, dword [rsp + 0x9c]
or eax, 0x20000e
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
cvtsi2ss xmm0, dword [rsp + 0x1a8]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3b48]
movss xmm1, dword [rsp + 0x98]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x98], xmm0
jmp 0x1800d06c0
mov dl, 1
mov ecx, 0x206
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800cfe9d
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800cfe9d
mov eax, dword [rsp + 0x9c]
or eax, 0x20000f
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
cvtsi2ss xmm0, dword [rsp + 0x1a8]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3b48]
movss xmm1, dword [rsp + 0x98]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x98], xmm0
jmp 0x1800d06c0
mov dl, 1
mov ecx, 0x207
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800cff01
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0c]
test eax, eax
je 0x1800cfed8
mov eax, dword [rsp + 0x9c]
or eax, 0x200006
mov dword [rsp + 0x240], eax
jmp 0x1800cfeeb
mov eax, dword [rsp + 0x9c]
or eax, 0x200004
mov dword [rsp + 0x240], eax
mov edx, dword [rsp + 0x240]
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
jmp 0x1800d06c0
mov dl, 1
mov ecx, 0x208
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800cff65
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0c]
test eax, eax
je 0x1800cff3c
mov eax, dword [rsp + 0x9c]
or eax, 0x200007
mov dword [rsp + 0x244], eax
jmp 0x1800cff4f
mov eax, dword [rsp + 0x9c]
or eax, 0x200005
mov dword [rsp + 0x244], eax
mov edx, dword [rsp + 0x244]
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
jmp 0x1800d06c0
mov dl, 1
mov ecx, 0x20a
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800cffaa
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1800cffaa
movzx eax, byte [rsp + 0x93]
test eax, eax
jne 0x1800cffaa
mov eax, dword [rsp + 0x9c]
or eax, 0x200008
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
jmp 0x1800d06c0
mov dl, 1
mov ecx, 0x20b
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800d0092
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1800d0092
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x54]
cmp dword [rax + 0x50], ecx
je 0x1800cffed
mov dword [rsp + 0x248], 1
jmp 0x1800cfff8
mov dword [rsp + 0x248], 0
movzx eax, byte [rsp + 0x248]
test eax, eax
jne 0x1800d0075
movzx eax, byte [rsp + 0x92]
test eax, eax
je 0x1800d0021
mov edx, 0x60000c
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
jmp 0x1800d0075
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x1800d0075
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0f]
test eax, eax
je 0x1800d0075
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0e]
test eax, eax
jne 0x1800d0075
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0c]
test eax, eax
jne 0x1800d0075
mov edx, 0x600004
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
mov eax, dword [rsp + 0x9c]
or eax, 0x200009
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
jmp 0x1800d06c0
movzx eax, byte [rsp + 0x105]
test eax, eax
je 0x1800d0190
mov eax, dword [rsp + 0xbd8]
and eax, 0x800
test eax, eax
je 0x1800d00bf
mov dword [rsp + 0x24c], 1
jmp 0x1800d00ca
mov dword [rsp + 0x24c], 0
movzx eax, byte [rsp + 0x24c]
mov byte [rsp + 0xc7], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800d0120
movzx eax, byte [rsp + 0xc7]
test eax, eax
je 0x1800d0101
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0c]
test eax, eax
je 0x1800d0120
movzx eax, byte [rsp + 0xc7]
test eax, eax
jne 0x1800d0133
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xd0c]
test eax, eax
je 0x1800d0133
mov byte [rsp + 0x73], 1
movzx eax, byte [rsp + 0x73]
mov byte [rsp + 0x8f], al
jmp 0x1800d018b
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1800d018b
mov dword [rsp + 0x250], 0xa
mov dword [rsp + 0x20], 2
mov r9, qword [rsp + 0xbe8]
mov r8, qword [rsp + 0xbe0]
mov edx, dword [rsp + 0xbd8]
lea rcx, [rsp + 0x250]
call fcn.1800d3060
movzx eax, al
test eax, eax
je 0x1800d018b
mov edx, dword [rsp + 0x250]
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
jmp 0x1800d06c0
movzx eax, byte [rsp + 0x106]
test eax, eax
je 0x1800d01b2
mov byte [rsp + 0x73], 1
movzx eax, byte [rsp + 0x73]
mov byte [rsp + 0x8f], al
jmp 0x1800d06c0
movzx eax, byte [rsp + 0x107]
test eax, eax
je 0x1800d01d7
mov byte [rsp + 0x8d], 1
movzx eax, byte [rsp + 0x8d]
mov byte [rsp + 0x73], al
jmp 0x1800d06c0
movzx eax, byte [rsp + 0xc8]
test eax, eax
jne 0x1800d01ef
movzx eax, byte [rsp + 0x108]
test eax, eax
je 0x1800d0249
movzx eax, byte [rsp + 0xc8]
test eax, eax
je 0x1800d0208
mov dword [rsp + 0x254], 0x20000a
jmp 0x1800d0213
mov dword [rsp + 0x254], 0x20000b
mov edx, dword [rsp + 0x254]
mov rcx, qword [rsp + 0x58]
call fcn.1800d3540
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x4c]
mov dword [rax + 0x54], ecx
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x54]
mov dword [rax + 0x50], ecx
jmp 0x1800d06c0
movzx eax, byte [rsp + 0x74]
test eax, eax
je 0x1800d0280
mov dl, 1
mov ecx, 0x222
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800d0280
mov rcx, qword [rsp + 0x58]
call fcn.1800d53f0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe7c], 1
jmp 0x1800d06c0
movzx eax, byte [rsp + 0x93]
test eax, eax
jne 0x1800d029c
movzx eax, byte [rsp + 0xf0]
test eax, eax
je 0x1800d0530
mov rax, qword [rsp + 0x80]
cmp qword [rax + 0xa8], 0
je 0x1800d04bd
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x54]
cmp dword [rax + 0x50], ecx
je 0x1800d02d1
mov dword [rsp + 0x258], 1
jmp 0x1800d02dc
mov dword [rsp + 0x258], 0
movzx eax, byte [rsp + 0x258]
test eax, eax
je 0x1800d0344
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
mov dword [rsp + 0x268], eax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x50]
mov dword [rsp + 0x260], eax
mov eax, dword [rsp + 0x268]
cmp dword [rsp + 0x260], eax
jge 0x1800d0326
mov eax, dword [rsp + 0x260]
mov dword [rsp + 0x270], eax
jmp 0x1800d0334
mov eax, dword [rsp + 0x268]
mov dword [rsp + 0x270], eax
mov eax, dword [rsp + 0x270]
mov dword [rsp + 0x274], eax
jmp 0x1800d034f
mov dword [rsp + 0x274], 0
mov eax, dword [rsp + 0x274]
mov dword [rsp + 0x29c], eax
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x54]
cmp dword [rax + 0x50], ecx
je 0x1800d037c
mov dword [rsp + 0x278], 1
jmp 0x1800d0387
mov dword [rsp + 0x278], 0
movzx eax, byte [rsp + 0x278]
test eax, eax
je 0x1800d03ef
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
mov dword [rsp + 0x288], eax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x50]
mov dword [rsp + 0x280], eax
mov eax, dword [rsp + 0x288]
cmp dword [rsp + 0x280], eax
jl 0x1800d03d1
mov eax, dword [rsp + 0x280]
mov dword [rsp + 0x290], eax
jmp 0x1800d03df
mov eax, dword [rsp + 0x288]
mov dword [rsp + 0x290], eax
mov eax, dword [rsp + 0x290]
mov dword [rsp + 0x294], eax
jmp 0x1800d03fe
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 4]
mov dword [rsp + 0x294], eax
mov eax, dword [rsp + 0x294]
mov dword [rsp + 0x298], eax
movsxd rax, dword [rsp + 0x298]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x18]
lea rax, [rcx + rax*2]
movsxd rcx, dword [rsp + 0x29c]
mov rdx, qword [rsp + 0x58]
mov rdx, qword [rdx + 0x18]
lea rcx, [rdx + rcx*2]
mov rdx, rax
call fcn.180065390
inc eax
mov dword [rsp + 0x2a0], eax
movsxd rax, dword [rsp + 0x2a0]
mov rcx, rax
call fcn.180067be0
mov qword [rsp + 0x650], rax
movsxd rax, dword [rsp + 0x298]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x18]
lea rax, [rcx + rax*2]
movsxd rcx, dword [rsp + 0x29c]
mov rdx, qword [rsp + 0x58]
mov rdx, qword [rdx + 0x18]
lea rcx, [rdx + rcx*2]
mov r9, rax
mov r8, rcx
mov edx, dword [rsp + 0x2a0]
mov rcx, qword [rsp + 0x650]
call fcn.180065570
mov rcx, qword [rsp + 0x650]
call fcn.1800759f0
mov rcx, qword [rsp + 0x650]
call fcn.180067c40
movzx eax, byte [rsp + 0x93]
test eax, eax
je 0x1800d052b
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x54]
cmp dword [rax + 0x50], ecx
je 0x1800d04e8
mov dword [rsp + 0x2a4], 1
jmp 0x1800d04f3
mov dword [rsp + 0x2a4], 0
movzx eax, byte [rsp + 0x2a4]
test eax, eax
jne 0x1800d0509
mov rcx, qword [rsp + 0x58]
call fcn.1800d53f0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe7c], 1
mov rax, qword [rsp + 0x58]
add rax, 0x4c
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1800db570
jmp 0x1800d06c0
movzx eax, byte [rsp + 0xf1]
test eax, eax
je 0x1800d06c0
call fcn.180061f80
mov qword [rsp + 0x658], rax
cmp qword [rsp + 0x658], 0
je 0x1800d06c0
mov rcx, qword [rsp + 0x658]
call fcn.18004db30
mov dword [rsp + 0x5d4], eax
mov eax, dword [rsp + 0x5d4]
inc eax
cdqe
shl rax, 1
mov rcx, rax
call fcn.180067be0
mov qword [rsp + 0x458], rax
mov dword [rsp + 0x120], 0
mov rax, qword [rsp + 0x658]
mov qword [rsp + 0x450], rax
mov rax, qword [rsp + 0x450]
movsx eax, byte [rax]
test eax, eax
je 0x1800d0661
xor r8d, r8d
mov rdx, qword [rsp + 0x450]
lea rcx, [rsp + 0x1d0]
call fcn.180064d00
cdqe
mov rcx, qword [rsp + 0x450]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x450], rax
cmp dword [rsp + 0x1d0], 0
jne 0x1800d05f8
jmp 0x1800d0661
mov dword [rsp + 0x20], 4
mov r9, qword [rsp + 0xbe8]
mov r8, qword [rsp + 0xbe0]
mov edx, dword [rsp + 0xbd8]
lea rcx, [rsp + 0x1d0]
call fcn.1800d3060
movzx eax, al
test eax, eax
jne 0x1800d0630
jmp 0x1800d05a9
movsxd rax, dword [rsp + 0x120]
mov rcx, qword [rsp + 0x458]
movzx edx, word [rsp + 0x1d0]
mov word [rcx + rax*2], dx
mov eax, dword [rsp + 0x120]
inc eax
mov dword [rsp + 0x120], eax
jmp 0x1800d05a9
movsxd rax, dword [rsp + 0x120]
xor ecx, ecx
mov rdx, qword [rsp + 0x458]
mov word [rdx + rax*2], cx
cmp dword [rsp + 0x120], 0
jle 0x1800d06b3
mov rax, qword [rsp + 0x58]
add rax, 0x4c
mov r9d, dword [rsp + 0x120]
mov r8, qword [rsp + 0x458]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1800dd0f0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe7c], 1
mov rcx, qword [rsp + 0x458]
call fcn.180067c40
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x54]
cmp dword [rax + 0x50], ecx
je 0x1800d06df
mov dword [rsp + 0x2a8], 1
jmp 0x1800d06ea
mov dword [rsp + 0x2a8], 0
movzx eax, byte [rsp + 0x2a8]
test eax, eax
je 0x1800d0712
xor eax, eax
test eax, eax
jne 0x1800d0705
movzx eax, byte [rsp + 0x71]
test eax, eax
je 0x1800d0712
mov dword [rsp + 0x2ac], 1
jmp 0x1800d071d
mov dword [rsp + 0x2ac], 0
movzx eax, byte [rsp + 0x70]
or eax, dword [rsp + 0x2ac]
mov byte [rsp + 0x70], al
mov qword [rsp + 0x178], 0
mov dword [rsp + 0xd4], 0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x78]
cmp dword [rax + 0x3e24], ecx
jne 0x1800d0efe
movzx eax, byte [rsp + 0x8d]
test eax, eax
je 0x1800d08bc
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1800d08bc
mov rax, qword [rsp + 0x58]
mov rdx, qword [rax + 0x38]
mov rcx, qword [rsp + 0xbc0]
call fcn.180137f20
test eax, eax
je 0x1800d08bc
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x38]
mov qword [rsp + 0x178], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x30]
dec eax
mov dword [rsp + 0xd4], eax
mov dword [rsp + 0x474], 0
mov dword [rsp + 0x470], 0
mov qword [rsp + 0x478], 0
cmp dword [rsp + 0xd4], 0
jle 0x1800d0857
movsxd rax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x178]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x178]
call fcn.180065310
inc eax
mov edx, eax
lea rcx, [rsp + 0x470]
call fcn.18007eec0
movsxd rax, dword [rsp + 0xd4]
mov rcx, qword [rsp + 0x178]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x20], 0
mov r9, rax
mov r8, qword [rsp + 0x178]
mov edx, dword [rsp + 0x470]
mov rcx, qword [rsp + 0x478]
call fcn.180065480
cmp dword [rsp + 0xd4], 0
jle 0x1800d0873
mov eax, dword [rsp + 0x470]
dec eax
mov dword [rsp + 0x2b0], eax
jmp 0x1800d087e
mov dword [rsp + 0x2b0], 0
mov rax, qword [rsp + 0x58]
add rax, 0x4c
mov r9d, dword [rsp + 0x2b0]
mov r8, qword [rsp + 0x478]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1800dd220
cmp qword [rsp + 0x478], 0
je 0x1800d08bc
mov rcx, qword [rsp + 0x478]
call fcn.180067c40
movzx eax, byte [rsp + 0x8d]
test eax, eax
je 0x1800d08ef
movzx eax, byte [rsp + 0x8f]
test eax, eax
je 0x1800d08e2
mov eax, dword [rsp + 0xbd8]
and eax, 0x20
test eax, eax
jne 0x1800d08ef
mov dword [rsp + 0x2b4], 0
jmp 0x1800d08fa
mov dword [rsp + 0x2b4], 1
movzx eax, byte [rsp + 0x2b4]
mov byte [rsp + 0xf2], al
movzx eax, byte [rsp + 0xf2]
test eax, eax
je 0x1800d0eef
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1800d097c
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x40], 1
mov rax, qword [rsp + 0x58]
add rax, 0x20
mov qword [rsp + 0x860], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
lea eax, [rax*4 + 1]
mov edx, eax
mov rcx, qword [rsp + 0x860]
call fcn.18007ee30
xor r9d, r9d
mov rax, qword [rsp + 0x58]
mov r8, qword [rax + 0x18]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x20]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x28]
call fcn.180065570
mov eax, dword [rsp + 0xbd8]
and eax, 0x801c0
test eax, eax
je 0x1800d0eac
mov dword [rsp + 0x100], 0
mov dword [rsp + 0x16c], 0
mov eax, dword [rsp + 0xbd8]
and eax, 0x40
test eax, eax
je 0x1800d09e2
mov dl, 1
mov ecx, 0x200
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800d09e2
mov dword [rsp + 0x100], 0x40
mov dword [rsp + 0x16c], 0x200
jmp 0x1800d0aa3
mov eax, dword [rsp + 0xbd8]
and eax, 0x80
test eax, eax
je 0x1800d0a20
mov dl, 1
mov ecx, 0x203
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800d0a20
mov dword [rsp + 0x100], 0x80
mov dword [rsp + 0x16c], 0x203
jmp 0x1800d0aa3
mov eax, dword [rsp + 0xbd8]
and eax, 0x80
test eax, eax
je 0x1800d0a5b
mov dl, 1
mov ecx, 0x204
call fcn.180065b50
movzx eax, al
test eax, eax
je 0x1800d0a5b
mov dword [rsp + 0x100], 0x80
mov dword [rsp + 0x16c], 0x204
jmp 0x1800d0aa3
mov eax, dword [rsp + 0xbd8]
and eax, 0x80000
test eax, eax
je 0x1800d0a88
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe7e]
test eax, eax
je 0x1800d0a88
mov dword [rsp + 0x100], 0x80000
jmp 0x1800d0aa3
mov eax, dword [rsp + 0xbd8]
and eax, 0x100
test eax, eax
je 0x1800d0aa3
mov dword [rsp + 0x100], 0x100
cmp dword [rsp + 0x100], 0
je 0x1800d0eac
lea rcx, [rsp + 0x418]
call fcn.1800c4370
mov r8d, 0x38
xor edx, edx
lea rcx, [rsp + 0x418]
call fcn.1801287a0
mov eax, dword [rsp + 0x100]
mov dword [rsp + 0x418], eax
mov eax, dword [rsp + 0xbd8]
mov dword [rsp + 0x41c], eax
mov rax, qword [rsp + 0xbe8]
mov qword [rsp + 0x420], rax
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x1800d0b1a
mov rax, qword [rsp + 0xbc0]
mov qword [rsp + 0x750], rax
jmp 0x1800d0b2b
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x28]
mov qword [rsp + 0x750], rax
mov rax, qword [rsp + 0x750]
mov qword [rsp + 0x760], rax
mov eax, dword [rsp + 0x16c]
mov dword [rsp + 0x42c], eax
mov rax, qword [rsp + 0x760]
mov qword [rsp + 0x430], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 8]
mov dword [rsp + 0x438], eax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x44]
mov dword [rsp + 0x43c], eax
mov byte [rsp + 0x440], 0
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x1f8], rax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x4c]
mov rcx, qword [rsp + 0x1f8]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x1f8]
call fcn.180065390
mov dword [rsp + 0x444], eax
mov eax, dword [rsp + 0x444]
mov dword [rsp + 0x5d8], eax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x50]
mov rcx, qword [rsp + 0x1f8]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x1f8]
call fcn.180065390
mov dword [rsp + 0x448], eax
mov eax, dword [rsp + 0x448]
mov dword [rsp + 0x5dc], eax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x54]
mov rcx, qword [rsp + 0x1f8]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x1f8]
call fcn.180065390
mov dword [rsp + 0x44c], eax
mov eax, dword [rsp + 0x44c]
mov dword [rsp + 0x5e0], eax
mov rax, qword [rsp + 0xbe0]
mov qword [rsp + 0x868], rax
lea rcx, [rsp + 0x418]
call qword [rsp + 0x868]
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x1800d0c78
mov rax, qword [rsp + 0xbc0]
mov qword [rsp + 0x758], rax
jmp 0x1800d0c89
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x28]
mov qword [rsp + 0x758], rax
mov rax, qword [rsp + 0x758]
mov qword [rsp + 0x760], rax
movzx eax, byte [rsp + 0x440]
mov byte [rsp + 0x8e], al
mov eax, dword [rsp + 0x5d8]
cmp dword [rsp + 0x444], eax
jne 0x1800d0cc4
movzx eax, byte [rsp + 0x8e]
test eax, eax
je 0x1800d0cfe
movsxd rax, dword [rsp + 0x444]
mov rcx, qword [rsp + 0x430]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x430]
call fcn.180065310
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x4c], eax
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe7c], 1
mov eax, dword [rsp + 0x5dc]
cmp dword [rsp + 0x448], eax
jne 0x1800d0d1a
movzx eax, byte [rsp + 0x8e]
test eax, eax
je 0x1800d0d77
mov eax, dword [rsp + 0x444]
cmp dword [rsp + 0x448], eax
jne 0x1800d0d3b
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x4c]
mov dword [rsp + 0x2b8], eax
jmp 0x1800d0d68
movsxd rax, dword [rsp + 0x448]
mov rcx, qword [rsp + 0x430]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x430]
call fcn.180065310
mov dword [rsp + 0x2b8], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x2b8]
mov dword [rax + 0x50], ecx
mov eax, dword [rsp + 0x5e0]
cmp dword [rsp + 0x44c], eax
jne 0x1800d0d93
movzx eax, byte [rsp + 0x8e]
test eax, eax
je 0x1800d0df0
mov eax, dword [rsp + 0x448]
cmp dword [rsp + 0x44c], eax
jne 0x1800d0db4
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x50]
mov dword [rsp + 0x2bc], eax
jmp 0x1800d0de1
movsxd rax, dword [rsp + 0x44c]
mov rcx, qword [rsp + 0x430]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x430]
call fcn.180065310
mov dword [rsp + 0x2bc], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x2bc]
mov dword [rax + 0x54], ecx
movzx eax, byte [rsp + 0x8e]
test eax, eax
je 0x1800d0eac
mov eax, dword [rsp + 0x1cc]
cmp dword [rsp + 0x438], eax
jle 0x1800d0e56
movzx eax, byte [rsp + 0x94]
test eax, eax
je 0x1800d0e56
mov rax, qword [rsp + 0x58]
add rax, 0x10
mov qword [rsp + 0x870], rax
mov eax, dword [rsp + 0x1cc]
mov ecx, dword [rsp + 0x438]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x58]
add eax, dword [rcx + 0x10]
mov edx, eax
mov rcx, qword [rsp + 0x870]
call fcn.18007eec0
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8, qword [rsp + 0x430]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x10]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x18]
call fcn.180065480
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 4], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x438]
mov dword [rax + 8], ecx
mov rax, qword [rsp + 0x58]
movss xmm0, dword [0x180183934]
movss dword [rax + 0xe78], xmm0
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1800d0eef
mov rdx, qword [rsp + 0xbc0]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x28]
call fcn.180137f20
test eax, eax
je 0x1800d0eef
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x28]
mov qword [rsp + 0x178], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 8]
mov dword [rsp + 0xd4], eax
mov rax, qword [rsp + 0x58]
mov dword [rax + 0xe80], 0
cmp qword [rsp + 0x178], 0
je 0x1800d10ac
movzx eax, byte [rsp + 0x94]
test eax, eax
je 0x1800d1046
lea rcx, [rsp + 0xa00]
call fcn.1800c4370
mov dword [rsp + 0xa00], 0x40000
mov eax, dword [rsp + 0xbd8]
mov dword [rsp + 0xa04], eax
mov rax, qword [rsp + 0xbc0]
mov qword [rsp + 0xa18], rax
mov eax, dword [rsp + 0xd4]
mov dword [rsp + 0xa20], eax
mov eax, dword [rsp + 0xd4]
inc eax
mov dword [rsp + 0x2c0], eax
mov eax, dword [rsp + 0x2c0]
cmp dword [rsp + 0xbc8], eax
jl 0x1800d0f91
mov eax, dword [rsp + 0xbc8]
mov dword [rsp + 0x2c8], eax
jmp 0x1800d0f9f
mov eax, dword [rsp + 0x2c0]
mov dword [rsp + 0x2c8], eax
mov eax, dword [rsp + 0x2c8]
mov dword [rsp + 0xa24], eax
mov rax, qword [rsp + 0xbe8]
mov qword [rsp + 0xa08], rax
mov rax, qword [rsp + 0xbe0]
mov qword [rsp + 0x878], rax
lea rcx, [rsp + 0xa00]
call qword [rsp + 0x878]
mov rax, qword [rsp + 0xa18]
mov qword [rsp + 0xbc0], rax
mov eax, dword [rsp + 0xa24]
mov dword [rsp + 0xbc8], eax
mov eax, dword [rsp + 0xbc8]
dec eax
mov dword [rsp + 0x2d0], eax
mov eax, dword [rsp + 0x2d0]
cmp dword [rsp + 0xa20], eax
jge 0x1800d102a
mov eax, dword [rsp + 0xa20]
mov dword [rsp + 0x2d8], eax
jmp 0x1800d1038
mov eax, dword [rsp + 0x2d0]
mov dword [rsp + 0x2d8], eax
mov eax, dword [rsp + 0x2d8]
mov dword [rsp + 0xd4], eax
mov eax, dword [rsp + 0xd4]
inc eax
mov dword [rsp + 0x2e0], eax
mov eax, dword [rsp + 0xbc8]
cmp dword [rsp + 0x2e0], eax
jge 0x1800d1076
mov eax, dword [rsp + 0x2e0]
mov dword [rsp + 0x2e8], eax
jmp 0x1800d1084
mov eax, dword [rsp + 0xbc8]
mov dword [rsp + 0x2e8], eax
movsxd rax, dword [rsp + 0x2e8]
mov r8, rax
mov rdx, qword [rsp + 0x178]
mov rcx, qword [rsp + 0xbc0]
call fcn.180064ca0
mov byte [rsp + 0x95], 1
movzx eax, byte [rsp + 0x73]
test eax, eax
je 0x1800d10cb
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x78]
cmp dword [rax + 0x3e24], ecx
jne 0x1800d10cb
call fcn.18005d540
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1800d1149
mov r8d, 1
mov edx, dword [rsp + 0x78]
lea rcx, [rsp + 0x158]
call fcn.180071650
mov rax, qword [rsp + 0xe8]
movss xmm0, dword [rax + 0x44]
movss dword [rsp + 0x5e4], xmm0
movss xmm1, dword [0x18017ee58]
mov ecx, 7
call fcn.1800621d0
mov dword [rsp + 0x5e8], eax
movss xmm0, dword [rsp + 0x5e4]
movss dword [rsp + 0x20], xmm0
mov r9b, 1
mov r8d, dword [rsp + 0x5e8]
mov rdx, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x158]
call fcn.180071160
movss xmm0, dword [rsp + 0x15c]
addss xmm0, dword [rsp + 0x12c]
movss dword [rsp + 0x608], xmm0
movss xmm0, dword [rsp + 0x158]
addss xmm0, dword [rsp + 0x128]
movss dword [rsp + 0x600], xmm0
movss xmm0, dword [rsp + 0x15c]
movss dword [rsp + 0x5f8], xmm0
movss xmm0, dword [rsp + 0x158]
movss dword [rsp + 0x5f0], xmm0
movss xmm0, dword [rsp + 0x5f0]
movss dword [rsp + 0x408], xmm0
movss xmm0, dword [rsp + 0x5f8]
movss dword [rsp + 0x40c], xmm0
movss xmm0, dword [rsp + 0x600]
movss dword [rsp + 0x410], xmm0
movss xmm0, dword [rsp + 0x608]
movss dword [rsp + 0x414], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800d1220
mov rax, qword [rsp + 0xd8]
mov rax, qword [rax + 0xd8]
mov qword [rsp + 0x880], rax
lea rax, [rsp + 0x880]
mov qword [rsp + 0x778], rax
jmp 0x1800d12a5
mov rax, qword [rsp + 0xe8]
add rax, 0x3c
mov qword [rsp + 0x768], rax
mov rax, qword [rsp + 0x768]
movss xmm0, dword [rsp + 0x15c]
addss xmm0, dword [rax + 4]
movss dword [rsp + 0x618], xmm0
mov rax, qword [rsp + 0x768]
movss xmm0, dword [rsp + 0x158]
addss xmm0, dword [rax]
movss dword [rsp + 0x610], xmm0
movss xmm0, dword [rsp + 0x610]
movss dword [rsp + 0x770], xmm0
movss xmm0, dword [rsp + 0x618]
movss dword [rsp + 0x774], xmm0
lea rax, [rsp + 0x770]
mov qword [rsp + 0x778], rax
mov rax, qword [rsp + 0x778]
mov qword [rsp + 0x888], rax
mov rax, qword [rsp + 0x888]
mov rax, qword [rax]
mov qword [rsp + 0x130], rax
xorps xmm0, xmm0
movss dword [rsp + 0x208], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x20c], xmm0
mov dword [rsp + 0x968], 0x200000
movzx eax, byte [rsp + 0xc9]
test eax, eax
je 0x1800d130a
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x28]
mov qword [rsp + 0x780], rax
jmp 0x1800d131a
mov rax, qword [rsp + 0xbc0]
mov qword [rsp + 0x780], rax
mov rax, qword [rsp + 0x780]
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x140], 0
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x1800d1374
mov rax, qword [rsp + 0xbb8]
mov qword [rsp + 0x138], rax
mov rcx, qword [rsp + 0xbb8]
call fcn.18004db30
mov eax, eax
mov rcx, qword [rsp + 0xbb8]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x140], rax
movzx eax, byte [rsp + 0x71]
test eax, eax
jne 0x1800d138a
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x1800d2883
movzx eax, byte [rsp + 0x72]
test eax, eax
jne 0x1800d13b2
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 8]
mov rcx, qword [rsp + 0x138]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x140], rax
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x1d8], rax
xorps xmm0, xmm0
movss dword [rsp + 0x11c], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x118], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x3fc], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x3f8], xmm0
mov qword [rsp + 0x480], 0
mov qword [rsp + 0x488], 0
mov dword [rsp + 0x110], 0xfffffc18
mov dword [rsp + 0x114], 0xfffffc18
mov dword [rsp + 0xa0], 0
movzx eax, byte [rsp + 0x71]
test eax, eax
je 0x1800d147f
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x4c]
mov rcx, qword [rsp + 0x1d8]
lea rax, [rcx + rax*2]
mov ecx, 8
imul rcx, rcx, 0
mov qword [rsp + rcx + 0x480], rax
mov eax, 4
imul rax, rax, 0
mov dword [rsp + rax + 0x110], 0xffffffff
mov eax, dword [rsp + 0xa0]
inc eax
mov dword [rsp + 0xa0], eax
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x1800d1521
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
mov dword [rsp + 0x2f8], eax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x50]
mov dword [rsp + 0x2f0], eax
mov eax, dword [rsp + 0x2f8]
cmp dword [rsp + 0x2f0], eax
jge 0x1800d14ca
mov eax, dword [rsp + 0x2f0]
mov dword [rsp + 0x39c], eax
jmp 0x1800d14d8
mov eax, dword [rsp + 0x2f8]
mov dword [rsp + 0x39c], eax
movsxd rax, dword [rsp + 0x39c]
mov rcx, qword [rsp + 0x1d8]
lea rax, [rcx + rax*2]
mov ecx, 8
imul rcx, rcx, 1
mov qword [rsp + rcx + 0x480], rax
mov eax, 4
imul rax, rax, 1
mov dword [rsp + rax + 0x110], 0xffffffff
mov eax, dword [rsp + 0xa0]
inc eax
mov dword [rsp + 0xa0], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800d1537
mov dword [rsp + 0x304], 1
jmp 0x1800d1542
mov dword [rsp + 0x304], 0
mov eax, dword [rsp + 0x304]
mov ecx, dword [rsp + 0xa0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa0], eax
mov dword [rsp + 0xe0], 0
mov rax, qword [rsp + 0x1d8]
mov qword [rsp + 0x200], rax
jmp 0x1800d158c
mov rax, qword [rsp + 0x200]
add rax, 2
mov qword [rsp + 0x200], rax
mov rax, qword [rsp + 0x200]
movzx eax, word [rax]
test eax, eax
je 0x1800d168a
mov rax, qword [rsp + 0x200]
movzx eax, word [rax]
cmp eax, 0xa
jne 0x1800d1685
mov eax, dword [rsp + 0xe0]
inc eax
mov dword [rsp + 0xe0], eax
mov eax, 4
imul rax, rax, 0
cmp dword [rsp + rax + 0x110], 0xffffffff
jne 0x1800d1624
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x480]
cmp qword [rsp + 0x200], rax
jb 0x1800d1624
mov eax, 4
imul rax, rax, 0
mov ecx, dword [rsp + 0xe0]
mov dword [rsp + rax + 0x110], ecx
mov eax, dword [rsp + 0xa0]
dec eax
mov dword [rsp + 0xa0], eax
cmp dword [rsp + 0xa0], 0
jg 0x1800d1624
jmp 0x1800d168a
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0x110], 0xffffffff
jne 0x1800d1685
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x480]
cmp qword [rsp + 0x200], rax
jb 0x1800d1685
mov eax, 4
imul rax, rax, 1
mov ecx, dword [rsp + 0xe0]
mov dword [rsp + rax + 0x110], ecx
mov eax, dword [rsp + 0xa0]
dec eax
mov dword [rsp + 0xa0], eax
cmp dword [rsp + 0xa0], 0
jg 0x1800d1685
jmp 0x1800d168a
jmp 0x1800d1578
mov eax, dword [rsp + 0xe0]
inc eax
mov dword [rsp + 0xe0], eax
mov eax, 4
imul rax, rax, 0
cmp dword [rsp + rax + 0x110], 0xffffffff
jne 0x1800d16c4
mov eax, 4
imul rax, rax, 0
mov ecx, dword [rsp + 0xe0]
mov dword [rsp + rax + 0x110], ecx
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0x110], 0xffffffff
jne 0x1800d16ee
mov eax, 4
imul rax, rax, 1
mov ecx, dword [rsp + 0xe0]
mov dword [rsp + rax + 0x110], ecx
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x480]
mov qword [rsp + 0x890], rax
mov eax, 8
imul rax, rax, 0
mov rdx, qword [rsp + 0x1d8]
mov rcx, qword [rsp + rax + 0x480]
call fcn.180064aa0
mov qword [rsp + 0x898], rax
mov byte [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8, qword [rsp + 0x890]
mov rdx, qword [rsp + 0x898]
lea rcx, [rsp + 0xb30]
call fcn.1800cd6f0
movss xmm0, dword [rax]
movss dword [rsp + 0x118], xmm0
mov eax, 4
imul rax, rax, 0
cvtsi2ss xmm0, dword [rsp + rax + 0x110]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3b48]
movss dword [rsp + 0x11c], xmm0
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0x110], 0
jl 0x1800d1849
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x480]
mov qword [rsp + 0x8a0], rax
mov eax, 8
imul rax, rax, 1
mov rdx, qword [rsp + 0x1d8]
mov rcx, qword [rsp + rax + 0x480]
call fcn.180064aa0
mov qword [rsp + 0x8a8], rax
mov byte [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8, qword [rsp + 0x8a0]
mov rdx, qword [rsp + 0x8a8]
lea rcx, [rsp + 0xb38]
call fcn.1800cd6f0
movss xmm0, dword [rax]
movss dword [rsp + 0x3f8], xmm0
mov eax, 4
imul rax, rax, 1
cvtsi2ss xmm0, dword [rsp + rax + 0x110]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3b48]
movss dword [rsp + 0x3fc], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800d18a5
cvtsi2ss xmm0, dword [rsp + 0xe0]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3b48]
movss dword [rsp + 0x620], xmm0
movss xmm0, dword [rsp + 0x128]
movss dword [rsp + 0x788], xmm0
movss xmm0, dword [rsp + 0x620]
movss dword [rsp + 0x78c], xmm0
mov rax, qword [rsp + 0x788]
mov qword [rsp + 0x208], rax
movzx eax, byte [rsp + 0x71]
test eax, eax
je 0x1800d1c29
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe7c]
test eax, eax
je 0x1800d1c29
mov eax, dword [rsp + 0xbd8]
and eax, 0x1000
test eax, eax
jne 0x1800d19d4
movss xmm0, dword [rsp + 0x128]
mulss xmm0, dword [0x180181394]
movss dword [rsp + 0x318], xmm0
mov rax, qword [rsp + 0xe8]
movss xmm0, dword [rsp + 0x128]
subss xmm0, dword [rax + 0x3c]
movss dword [rsp + 0x314], xmm0
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 0x48]
comiss xmm0, dword [rsp + 0x118]
jbe 0x1800d1988
movss xmm0, dword [rsp + 0x118]
subss xmm0, dword [rsp + 0x318]
movss dword [rsp + 0x308], xmm0
xorps xmm0, xmm0
comiss xmm0, dword [rsp + 0x308]
jb 0x1800d195d
xorps xmm0, xmm0
movss dword [rsp + 0x310], xmm0
jmp 0x1800d196f
movss xmm0, dword [rsp + 0x308]
movss dword [rsp + 0x310], xmm0
cvttss2si eax, dword [rsp + 0x310]
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x58]
movss dword [rax + 0x48], xmm0
jmp 0x1800d19d2
movss xmm0, dword [rsp + 0x118]
subss xmm0, dword [rsp + 0x314]
mov rax, qword [rsp + 0x58]
comiss xmm0, dword [rax + 0x48]
jb 0x1800d19d2
movss xmm0, dword [rsp + 0x118]
subss xmm0, dword [rsp + 0x314]
addss xmm0, dword [rsp + 0x318]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x58]
movss dword [rax + 0x48], xmm0
jmp 0x1800d19e1
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
movss dword [rax + 0x48], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800d1c1d
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x11c]
subss xmm0, dword [rax + 0x3b48]
movss xmm1, dword [rsp + 0x98]
comiss xmm1, xmm0
jbe 0x1800d1a72
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x11c]
subss xmm0, dword [rax + 0x3b48]
movss dword [rsp + 0x320], xmm0
xorps xmm0, xmm0
comiss xmm0, dword [rsp + 0x320]
jb 0x1800d1a4c
xorps xmm0, xmm0
movss dword [rsp + 0x328], xmm0
jmp 0x1800d1a5e
movss xmm0, dword [rsp + 0x320]
movss dword [rsp + 0x328], xmm0
movss xmm0, dword [rsp + 0x328]
movss dword [rsp + 0x98], xmm0
jmp 0x1800d1ae5
mov rax, qword [rsp + 0xe8]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x18017ee68]
movss xmm1, dword [rsp + 0x12c]
subss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [rsp + 0x11c]
subss xmm1, xmm0
movaps xmm0, xmm1
comiss xmm0, dword [rsp + 0x98]
jb 0x1800d1ae5
movss xmm0, dword [rsp + 0x11c]
subss xmm0, dword [rsp + 0x12c]
mov rax, qword [rsp + 0xe8]
movss xmm1, dword [rax + 0x40]
mulss xmm1, dword [0x18017ee68]
addss xmm0, xmm1
movss dword [rsp + 0x98], xmm0
mov rax, qword [rsp + 0xe8]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x18017ee68]
movss xmm1, dword [rsp + 0x20c]
addss xmm1, xmm0
movaps xmm0, xmm1
subss xmm0, dword [rsp + 0x12c]
movss dword [rsp + 0x330], xmm0
movss xmm0, dword [rsp + 0x330]
comiss xmm0, dword [0x180180be4]
jb 0x1800d1b42
movss xmm0, dword [rsp + 0x330]
movss dword [rsp + 0x338], xmm0
jmp 0x1800d1b4e
xorps xmm0, xmm0
movss dword [rsp + 0x338], xmm0
movss xmm0, dword [rsp + 0x338]
movss dword [rsp + 0x33c], xmm0
xorps xmm0, xmm0
comiss xmm0, dword [rsp + 0x98]
jbe 0x1800d1b7b
xorps xmm0, xmm0
movss dword [rsp + 0x344], xmm0
jmp 0x1800d1bc6
movss xmm0, dword [rsp + 0x98]
comiss xmm0, dword [rsp + 0x33c]
jbe 0x1800d1ba2
movss xmm0, dword [rsp + 0x33c]
movss dword [rsp + 0x340], xmm0
jmp 0x1800d1bb4
movss xmm0, dword [rsp + 0x98]
movss dword [rsp + 0x340], xmm0
movss xmm0, dword [rsp + 0x340]
movss dword [rsp + 0x344], xmm0
movss xmm0, dword [rsp + 0x344]
movss dword [rsp + 0x98], xmm0
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rax + 0x60]
subss xmm0, dword [rsp + 0x98]
movss xmm1, dword [rsp + 0x134]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x134], xmm0
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rsp + 0x98]
movss dword [rax + 0x60], xmm0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe7c], 0
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 0x48]
movss dword [rsp + 0x628], xmm0
movss xmm0, dword [rsp + 0x628]
movss dword [rsp + 0x180], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x184], xmm0
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x1800d2281
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
mov dword [rsp + 0x350], eax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x50]
mov dword [rsp + 0x348], eax
mov eax, dword [rsp + 0x350]
cmp dword [rsp + 0x348], eax
jge 0x1800d1ca5
mov eax, dword [rsp + 0x348]
mov dword [rsp + 0x358], eax
jmp 0x1800d1cb3
mov eax, dword [rsp + 0x350]
mov dword [rsp + 0x358], eax
movsxd rax, dword [rsp + 0x358]
mov rcx, qword [rsp + 0x1d8]
lea rax, [rcx + rax*2]
mov qword [rsp + 0x8b0], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
mov dword [rsp + 0x368], eax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x50]
mov dword [rsp + 0x360], eax
mov eax, dword [rsp + 0x368]
cmp dword [rsp + 0x360], eax
jl 0x1800d1d0d
mov eax, dword [rsp + 0x360]
mov dword [rsp + 0x370], eax
jmp 0x1800d1d1b
mov eax, dword [rsp + 0x368]
mov dword [rsp + 0x370], eax
movsxd rax, dword [rsp + 0x370]
mov rcx, qword [rsp + 0x1d8]
lea rax, [rcx + rax*2]
mov qword [rsp + 0x668], rax
movzx eax, byte [rsp + 0x71]
test eax, eax
je 0x1800d1d53
movss xmm0, dword [0x18017ee58]
movss dword [rsp + 0x374], xmm0
jmp 0x1800d1d64
movss xmm0, dword [0x18017ee4c]
movss dword [rsp + 0x374], xmm0
movss xmm1, dword [rsp + 0x374]
mov ecx, 0x2f
call fcn.1800621d0
mov dword [rsp + 0x4b8], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800d1d95
xorps xmm0, xmm0
movss dword [rsp + 0x378], xmm0
jmp 0x1800d1da6
movss xmm0, dword [0x18017ef04]
movss dword [rsp + 0x378], xmm0
movss xmm0, dword [rsp + 0x378]
movss dword [rsp + 0x498], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800d1dcf
xorps xmm0, xmm0
movss dword [rsp + 0x37c], xmm0
jmp 0x1800d1de0
movss xmm0, dword [0x18017ee68]
movss dword [rsp + 0x37c], xmm0
movss xmm0, dword [rsp + 0x37c]
movss dword [rsp + 0x6b8], xmm0
movss xmm0, dword [rsp + 0x134]
addss xmm0, dword [rsp + 0x3fc]
movss dword [rsp + 0x638], xmm0
movss xmm0, dword [rsp + 0x130]
addss xmm0, dword [rsp + 0x3f8]
movss dword [rsp + 0x630], xmm0
movss xmm0, dword [rsp + 0x630]
movss dword [rsp + 0x660], xmm0
movss xmm0, dword [rsp + 0x638]
movss dword [rsp + 0x664], xmm0
movss xmm0, dword [rsp + 0x664]
subss xmm0, dword [rsp + 0x184]
movss dword [rsp + 0x6a0], xmm0
movss xmm0, dword [rsp + 0x660]
subss xmm0, dword [rsp + 0x180]
movss dword [rsp + 0x640], xmm0
movss xmm0, dword [rsp + 0x640]
movss dword [rsp + 0x148], xmm0
movss xmm0, dword [rsp + 0x6a0]
movss dword [rsp + 0x14c], xmm0
mov rax, qword [rsp + 0x8b0]
mov qword [rsp + 0x1e0], rax
mov rax, qword [rsp + 0x668]
cmp qword [rsp + 0x1e0], rax
jae 0x1800d2281
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x414]
addss xmm0, dword [rax + 0x3b48]
movss xmm1, dword [rsp + 0x14c]
comiss xmm1, xmm0
jbe 0x1800d1ef5
jmp 0x1800d2281
movss xmm0, dword [rsp + 0x40c]
comiss xmm0, dword [rsp + 0x14c]
jbe 0x1800d1f53
mov rax, qword [rsp + 0x668]
cmp qword [rsp + 0x1e0], rax
jae 0x1800d1f4e
mov rax, qword [rsp + 0x1e0]
movzx eax, word [rax]
mov dword [rsp + 0x6a8], eax
mov rax, qword [rsp + 0x1e0]
add rax, 2
mov qword [rsp + 0x1e0], rax
cmp dword [rsp + 0x6a8], 0xa
jne 0x1800d1f4c
jmp 0x1800d1f4e
jmp 0x1800d1f08
jmp 0x1800d2242
mov byte [rsp + 0x28], 1
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x1e0]
mov r8, qword [rsp + 0x668]
mov rdx, qword [rsp + 0x1e0]
lea rcx, [rsp + 0x678]
call fcn.1800cd6f0
xorps xmm0, xmm0
comiss xmm0, dword [rsp + 0x678]
jb 0x1800d202d
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3b40]
mov qword [rsp + 0x670], rax
mov eax, 0x20
movzx eax, ax
mov rcx, qword [rsp + 0x670]
cmp eax, dword [rcx]
jge 0x1800d1ff5
mov rax, qword [rsp + 0x670]
mov qword [rsp + 0x8b8], rax
mov eax, 0x20
movzx eax, ax
cdqe
mov rcx, qword [rsp + 0x8b8]
mov rcx, qword [rcx + 8]
movss xmm0, dword [rcx + rax*4]
movss dword [rsp + 0x380], xmm0
jmp 0x1800d200b
mov rax, qword [rsp + 0x670]
movss xmm0, dword [rax + 0x10]
movss dword [rsp + 0x380], xmm0
movss xmm0, dword [rsp + 0x380]
mulss xmm0, dword [0x18017ee48]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
movss dword [rsp + 0x678], xmm0
movss xmm0, dword [rsp + 0x678]
movss dword [rsp + 0x6b0], xmm0
movss xmm0, dword [rsp + 0x6b0]
movss dword [rsp + 0x680], xmm0
movss xmm0, dword [rsp + 0x6b8]
movss dword [rsp + 0x684], xmm0
movss xmm0, dword [rsp + 0x14c]
addss xmm0, dword [rsp + 0x684]
movss dword [rsp + 0x490], xmm0
movss xmm0, dword [rsp + 0x148]
addss xmm0, dword [rsp + 0x680]
movss dword [rsp + 0x6c0], xmm0
movss xmm0, dword [rsp + 0x6c0]
movss dword [rsp + 0x790], xmm0
movss xmm0, dword [rsp + 0x490]
movss dword [rsp + 0x794], xmm0
lea rax, [rsp + 0x790]
mov qword [rsp + 0x8c8], rax
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x498]
subss xmm0, dword [rax + 0x3b48]
movss dword [rsp + 0x4a0], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x688], xmm0
movss xmm0, dword [rsp + 0x4a0]
movss dword [rsp + 0x68c], xmm0
movss xmm0, dword [rsp + 0x14c]
addss xmm0, dword [rsp + 0x68c]
movss dword [rsp + 0x4b0], xmm0
movss xmm0, dword [rsp + 0x148]
addss xmm0, dword [rsp + 0x688]
movss dword [rsp + 0x4a8], xmm0
movss xmm0, dword [rsp + 0x4a8]
movss dword [rsp + 0x798], xmm0
movss xmm0, dword [rsp + 0x4b0]
movss dword [rsp + 0x79c], xmm0
lea rax, [rsp + 0x798]
mov qword [rsp + 0x8c0], rax
mov rax, qword [rsp + 0x8c0]
mov rax, qword [rax]
mov qword [rsp + 0x818], rax
mov rax, qword [rsp + 0x8c8]
mov rax, qword [rax]
mov qword [rsp + 0x820], rax
lea rdx, [rsp + 0x408]
lea rcx, [rsp + 0xa38]
call fcn.180055890
lea rdx, [rsp + 0xa38]
lea rcx, [rsp + 0x818]
call fcn.18005d790
lea rdx, [rsp + 0x408]
lea rcx, [rsp + 0xa48]
call fcn.180055890
lea rdx, [rsp + 0xa48]
lea rcx, [rsp + 0x818]
call fcn.18006faf0
movzx eax, al
test eax, eax
je 0x1800d2242
mov rax, qword [rsp + 0xd8]
mov rax, qword [rax + 0x270]
mov qword [rsp + 0x8d0], rax
mov dword [rsp + 0x28], 0
xorps xmm0, xmm0
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x4b8]
lea r8, [rsp + 0x820]
lea rdx, [rsp + 0x818]
mov rcx, qword [rsp + 0x8d0]
call fcn.18008a2c0
movss xmm0, dword [rsp + 0x130]
subss xmm0, dword [rsp + 0x180]
movss dword [rsp + 0x148], xmm0
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x14c]
addss xmm0, dword [rax + 0x3b48]
movss dword [rsp + 0x14c], xmm0
jmp 0x1800d1eb6
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1800d22ac
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x140]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x1800d242b
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x1800d22c2
mov dword [rsp + 0x384], 1
jmp 0x1800d22cd
mov dword [rsp + 0x384], 0
movss xmm1, dword [0x18017ee58]
mov ecx, dword [rsp + 0x384]
call fcn.1800621d0
mov dword [rsp + 0x4d0], eax
mov rax, qword [rsp + 0xd8]
mov rax, qword [rax + 0x270]
mov qword [rsp + 0x8f0], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800d2316
mov qword [rsp + 0x7a8], 0
jmp 0x1800d2326
lea rax, [rsp + 0x408]
mov qword [rsp + 0x7a8], rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x8d8], rax
movss xmm0, dword [rsp + 0x134]
subss xmm0, dword [rsp + 0x184]
movss dword [rsp + 0x4c8], xmm0
movss xmm0, dword [rsp + 0x130]
subss xmm0, dword [rsp + 0x180]
movss dword [rsp + 0x4c0], xmm0
movss xmm0, dword [rsp + 0x4c0]
movss dword [rsp + 0x7a0], xmm0
movss xmm0, dword [rsp + 0x4c8]
movss dword [rsp + 0x7a4], xmm0
lea rax, [rsp + 0x7a0]
mov qword [rsp + 0x8e0], rax
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x3b48]
movss dword [rsp + 0x4d4], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3b40]
mov qword [rsp + 0x8e8], rax
mov rax, qword [rsp + 0x7a8]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov rax, qword [rsp + 0x8d8]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x4d0]
mov dword [rsp + 0x20], eax
mov r9, qword [rsp + 0x8e0]
movss xmm2, dword [rsp + 0x4d4]
mov rdx, qword [rsp + 0x8e8]
mov rcx, qword [rsp + 0x8f0]
call fcn.18008a400
movzx eax, byte [rsp + 0x71]
test eax, eax
je 0x1800d287e
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x80]
movss xmm0, dword [rax + 0xe78]
addss xmm0, dword [rcx + 0x10]
mov rax, qword [rsp + 0x58]
movss dword [rax + 0xe78], xmm0
mov rax, qword [rsp + 0x68]
movzx eax, byte [rax + 0x73]
test eax, eax
je 0x1800d24dc
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
comiss xmm0, dword [rax + 0xe78]
jae 0x1800d24dc
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 0xe78]
movss dword [rsp + 0x4d8], xmm0
movsd xmm0, qword [0x1801838c0]
cvtss2sd xmm1, dword [rsp + 0x4d8]
movsd qword [rsp + 0x8f8], xmm1
movaps xmm1, xmm0
movsd xmm0, qword [rsp + 0x8f8]
call fcn.1800da090
cvtsd2ss xmm0, xmm0
movss xmm1, dword [0x18017ee50]
comiss xmm1, xmm0
jae 0x1800d24dc
mov dword [rsp + 0x388], 0
jmp 0x1800d24e7
mov dword [rsp + 0x388], 1
movzx eax, byte [rsp + 0x388]
mov byte [rsp + 0xf3], al
movss xmm0, dword [rsp + 0x134]
addss xmm0, dword [rsp + 0x11c]
movss dword [rsp + 0x4e8], xmm0
movss xmm0, dword [rsp + 0x130]
addss xmm0, dword [rsp + 0x118]
movss dword [rsp + 0x4e0], xmm0
movss xmm0, dword [rsp + 0x4e0]
movss dword [rsp + 0x690], xmm0
movss xmm0, dword [rsp + 0x4e8]
movss dword [rsp + 0x694], xmm0
movss xmm0, dword [rsp + 0x694]
subss xmm0, dword [rsp + 0x184]
movss dword [rsp + 0x4f8], xmm0
movss xmm0, dword [rsp + 0x690]
subss xmm0, dword [rsp + 0x180]
movss dword [rsp + 0x4f0], xmm0
movss xmm0, dword [rsp + 0x4f0]
movss dword [rsp + 0x698], xmm0
movss xmm0, dword [rsp + 0x4f8]
movss dword [rsp + 0x69c], xmm0
cvttss2si eax, dword [rsp + 0x69c]
cvtsi2ss xmm0, eax
movss dword [rsp + 0x508], xmm0
cvttss2si eax, dword [rsp + 0x698]
cvtsi2ss xmm0, eax
movss dword [rsp + 0x500], xmm0
movss xmm0, dword [rsp + 0x500]
movss dword [rsp + 0x1e8], xmm0
movss xmm0, dword [rsp + 0x508]
movss dword [rsp + 0x1ec], xmm0
movss xmm0, dword [rsp + 0x1ec]
subss xmm0, dword [0x180183808]
movss dword [rsp + 0x528], xmm0
movss xmm0, dword [rsp + 0x1e8]
addss xmm0, dword [0x18017ee58]
movss dword [rsp + 0x520], xmm0
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x1ec]
subss xmm0, dword [rax + 0x3b48]
addss xmm0, dword [0x18017ee48]
movss dword [rsp + 0x518], xmm0
movss xmm0, dword [rsp + 0x1e8]
movss dword [rsp + 0x510], xmm0
lea rax, [rsp + 0x828]
mov qword [rsp + 0x7b0], rax
mov rax, qword [rsp + 0x7b0]
movss xmm0, dword [rsp + 0x510]
movss dword [rax], xmm0
mov rax, qword [rsp + 0x7b0]
movss xmm0, dword [rsp + 0x518]
movss dword [rax + 4], xmm0
lea rax, [rsp + 0x830]
mov qword [rsp + 0x7b8], rax
mov rax, qword [rsp + 0x7b8]
movss xmm0, dword [rsp + 0x520]
movss dword [rax], xmm0
mov rax, qword [rsp + 0x7b8]
movss xmm0, dword [rsp + 0x528]
movss dword [rax + 4], xmm0
movzx eax, byte [rsp + 0xf3]
test eax, eax
je 0x1800d27da
lea rdx, [rsp + 0x408]
lea rcx, [rsp + 0xa58]
call fcn.180055890
lea rdx, [rsp + 0xa58]
lea rcx, [rsp + 0x828]
call fcn.18006faf0
movzx eax, al
test eax, eax
je 0x1800d27da
mov rax, qword [rsp + 0xd8]
mov rax, qword [rax + 0x270]
mov qword [rsp + 0x908], rax
movss xmm1, dword [0x18017ee58]
xor ecx, ecx
call fcn.1800621d0
mov dword [rsp + 0x540], eax
movss xmm0, dword [rsp + 0x834]
movss dword [rsp + 0x538], xmm0
movss xmm0, dword [rsp + 0x828]
movss dword [rsp + 0x530], xmm0
movss xmm0, dword [rsp + 0x530]
movss dword [rsp + 0x7c0], xmm0
movss xmm0, dword [rsp + 0x538]
movss dword [rsp + 0x7c4], xmm0
lea rax, [rsp + 0x7c0]
mov qword [rsp + 0x900], rax
movss xmm0, dword [0x18017ee58]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x540]
mov r8, qword [rsp + 0x900]
lea rdx, [rsp + 0x828]
mov rcx, qword [rsp + 0x908]
call fcn.1800878f0
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1800d287e
mov rax, qword [rsp + 0x68]
mov byte [rax + 0x5288], 1
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x1ec]
subss xmm0, dword [rax + 0x3b48]
movss dword [rsp + 0x550], xmm0
movss xmm0, dword [rsp + 0x1e8]
subss xmm0, dword [0x18017ee58]
movss dword [rsp + 0x548], xmm0
movss xmm0, dword [rsp + 0x548]
movss dword [rsp + 0x7c8], xmm0
movss xmm0, dword [rsp + 0x550]
movss dword [rsp + 0x7cc], xmm0
mov rax, qword [rsp + 0x7c8]
mov rcx, qword [rsp + 0x68]
mov qword [rcx + 0x528c], rax
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x68]
movss xmm0, dword [rcx + 0x3b48]
movss dword [rax + 0x5294], xmm0
jmp 0x1800d2a68
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800d28f1
lea rdx, [rsp + 0x140]
mov rcx, qword [rsp + 0x138]
call fcn.1800cd630
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3b48]
movss dword [rsp + 0x558], xmm0
movss xmm0, dword [rsp + 0x128]
movss dword [rsp + 0x7d0], xmm0
movss xmm0, dword [rsp + 0x558]
movss dword [rsp + 0x7d4], xmm0
mov rax, qword [rsp + 0x7d0]
mov qword [rsp + 0x208], rax
jmp 0x1800d295a
movzx eax, byte [rsp + 0x72]
test eax, eax
jne 0x1800d292c
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x78]
cmp dword [rax + 0x3e24], ecx
jne 0x1800d292c
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 8]
mov rcx, qword [rsp + 0x138]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x140], rax
jmp 0x1800d295a
movzx eax, byte [rsp + 0x72]
test eax, eax
jne 0x1800d295a
mov rcx, qword [rsp + 0x138]
call fcn.18004db30
mov eax, eax
mov rcx, qword [rsp + 0x138]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x140], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1800d2985
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x140]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x1800d2a68
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x1800d299b
mov dword [rsp + 0x38c], 1
jmp 0x1800d29a6
mov dword [rsp + 0x38c], 0
movss xmm1, dword [0x18017ee58]
mov ecx, dword [rsp + 0x38c]
call fcn.1800621d0
mov dword [rsp + 0x560], eax
mov rax, qword [rsp + 0xd8]
mov rax, qword [rax + 0x270]
mov qword [rsp + 0x910], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800d29ef
mov qword [rsp + 0x7d8], 0
jmp 0x1800d29ff
lea rax, [rsp + 0x408]
mov qword [rsp + 0x7d8], rax
mov rax, qword [rsp + 0x7d8]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x560]
mov dword [rsp + 0x20], eax
lea r9, [rsp + 0x130]
mov rax, qword [rsp + 0x68]
movss xmm2, dword [rax + 0x3b48]
mov rax, qword [rsp + 0x68]
mov rdx, qword [rax + 0x3b40]
mov rcx, qword [rsp + 0x910]
call fcn.18008a400
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x1800d2a82
movzx eax, byte [rsp + 0x72]
test eax, eax
jne 0x1800d2a82
call fcn.18006fc20
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1800d2b9d
mov rax, qword [rsp + 0xe8]
movss xmm0, dword [rsp + 0x20c]
addss xmm0, dword [rax + 0x40]
movss dword [rsp + 0x570], xmm0
movss xmm0, dword [rsp + 0x208]
movss dword [rsp + 0x568], xmm0
movss xmm0, dword [rsp + 0x568]
movss dword [rsp + 0x7e0], xmm0
movss xmm0, dword [rsp + 0x570]
movss dword [rsp + 0x7e4], xmm0
lea rcx, [rsp + 0x7e0]
call fcn.1800c91b0
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x3e88]
mov dword [rsp + 0x578], eax
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x3e88]
or eax, 0x101
mov rcx, qword [rsp + 0x68]
mov dword [rcx + 0x3e88], eax
call fcn.18005e6a0
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x3ea8]
and eax, 0x80
mov ecx, dword [rsp + 0xb50]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0xb50], eax
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x578]
mov dword [rax + 0x3e88], ecx
call fcn.18005f110
mov rax, qword [rsp + 0x68]
cmp dword [rax + 0x3ea0], 0
jne 0x1800d2b9d
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x78]
mov dword [rax + 0x3ea0], ecx
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0xb4c]
mov dword [rax + 0x3ea4], ecx
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0xb50]
mov dword [rax + 0x3ea8], ecx
mov rax, qword [rsp + 0x68]
movzx eax, byte [rax + 0x5304]
test eax, eax
je 0x1800d2f76
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x1800d2bca
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x1800d2f76
lea rax, [rsp + 0xf4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0xf5]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0xf6]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0xf7]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0xf8]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0xf9]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx eax, byte [rsp + 0xf4]
mov byte [rsp + 0x1c0], al
movzx eax, byte [rsp + 0xf5]
mov byte [rsp + 0x1b8], al
movzx eax, byte [rsp + 0xf6]
mov byte [rsp + 0x1b0], al
movabs rax, 0x41f839ada9028c28
mov qword [rsp + 0x918], rax
mov rax, qword [rsp + 0x918]
mov qword [rsp + 0x6d0], rax
movabs rax, 0x694f066c63228bea
mov qword [rsp + 0x920], rax
mov rax, qword [rsp + 0x920]
mov qword [rsp + 0x6d8], rax
movabs rax, 0x41f839ada9028c55
mov qword [rsp + 0x928], rax
mov rax, qword [rsp + 0x928]
mov qword [rsp + 0x9c0], rax
movabs rax, 0x694f066c63228bea
mov qword [rsp + 0x930], rax
mov rax, qword [rsp + 0x930]
mov qword [rsp + 0x9c8], rax
xor eax, eax
test eax, eax
je 0x1800d2cff
jmp 0x1800d2d50
movdqa xmm0, xmmword [rsp + 0x9c0]
movdqa xmmword [rsp + 0xa80], xmm0
movdqa xmm0, xmmword [rsp + 0x6d0]
movdqa xmmword [rsp + 0xa70], xmm0
movdqa xmm0, xmmword [rsp + 0xa70]
pxor xmm0, xmmword [rsp + 0xa80]
movdqa xmmword [rsp + 0xa90], xmm0
movdqa xmm0, xmmword [rsp + 0xa90]
movdqa xmmword [rsp + 0x6d0], xmm0
xor eax, eax
cmp eax, 1
je 0x1800d2d59
jmp 0x1800d2db3
lea rax, [rsp + 0x9d0]
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0xab0], xmm0
lea rax, [rsp + 0x6e0]
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0xaa0], xmm0
movdqa xmm0, xmmword [rsp + 0xaa0]
pxor xmm0, xmmword [rsp + 0xab0]
movdqa xmmword [rsp + 0xac0], xmm0
lea rax, [rsp + 0x6e0]
movdqa xmm0, xmmword [rsp + 0xac0]
movdqu xmmword [rax], xmm0
lea rax, [rsp + 0x6d0]
mov qword [rsp + 0x958], rax
movzx eax, byte [rsp + 0xf7]
mov byte [rsp + 0x1f0], al
movzx eax, byte [rsp + 0xf8]
mov byte [rsp + 0x188], al
movzx eax, byte [rsp + 0xf9]
mov byte [rsp + 0x190], al
movabs rax, 0x41f839ada9028c2e
mov qword [rsp + 0x938], rax
mov rax, qword [rsp + 0x938]
mov qword [rsp + 0x6f0], rax
movabs rax, 0x694f066c63228bea
mov qword [rsp + 0x940], rax
mov rax, qword [rsp + 0x940]
mov qword [rsp + 0x6f8], rax
movabs rax, 0x41f839ada9028c55
mov qword [rsp + 0x948], rax
mov rax, qword [rsp + 0x948]
mov qword [rsp + 0x9e0], rax
movabs rax, 0x694f066c63228bea
mov qword [rsp + 0x950], rax
mov rax, qword [rsp + 0x950]
mov qword [rsp + 0x9e8], rax
xor eax, eax
test eax, eax
je 0x1800d2e80
jmp 0x1800d2ed1
movdqa xmm0, xmmword [rsp + 0x9e0]
movdqa xmmword [rsp + 0xae0], xmm0
movdqa xmm0, xmmword [rsp + 0x6f0]
movdqa xmmword [rsp + 0xad0], xmm0
movdqa xmm0, xmmword [rsp + 0xad0]
pxor xmm0, xmmword [rsp + 0xae0]
movdqa xmmword [rsp + 0xaf0], xmm0
movdqa xmm0, xmmword [rsp + 0xaf0]
movdqa xmmword [rsp + 0x6f0], xmm0
xor eax, eax
cmp eax, 1
je 0x1800d2eda
jmp 0x1800d2f34
lea rax, [rsp + 0x9f0]
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0xb10], xmm0
lea rax, [rsp + 0x700]
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0xb00], xmm0
movdqa xmm0, xmmword [rsp + 0xb00]
pxor xmm0, xmmword [rsp + 0xb10]
movdqa xmmword [rsp + 0xb20], xmm0
lea rax, [rsp + 0x700]
movdqa xmm0, xmmword [rsp + 0xb20]
movdqu xmmword [rax], xmm0
lea rax, [rsp + 0x6f0]
mov qword [rsp + 0x960], rax
mov rdx, qword [rsp + 0x958]
mov rcx, qword [rsp + 0x960]
call fcn.180067860
mov r8, qword [rsp + 0x140]
mov rdx, qword [rsp + 0x138]
lea rcx, [rsp + 0x130]
call fcn.1800675f0
movss xmm0, dword [rsp + 0x460]
comiss xmm0, dword [0x180180be4]
jbe 0x1800d3005
mov rax, qword [rsp + 0xe8]
movss xmm0, dword [rsp + 0x15c]
addss xmm0, dword [rax + 0x40]
movss dword [rsp + 0x588], xmm0
mov rax, qword [rsp + 0xe8]
movss xmm0, dword [rsp + 0x160]
addss xmm0, dword [rax + 0x54]
movss dword [rsp + 0x580], xmm0
movss xmm0, dword [rsp + 0x580]
movss dword [rsp + 0x7e8], xmm0
movss xmm0, dword [rsp + 0x588]
movss dword [rsp + 0x7ec], xmm0
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rsp + 0xbb0]
mov rcx, qword [rsp + 0x7e8]
call fcn.180071a20
movzx eax, byte [rsp + 0x95]
test eax, eax
je 0x1800d302a
mov eax, dword [rsp + 0xbd8]
and eax, 0x8000000
test eax, eax
jne 0x1800d302a
mov ecx, dword [rsp + 0x78]
call fcn.180067b90
mov eax, dword [rsp + 0xbd8]
and eax, 0x20
test eax, eax
je 0x1800d3044
movzx eax, byte [rsp + 0x8f]
jmp 0x1800d304c
movzx eax, byte [rsp + 0x95]
add rsp, 0xb98
pop rdi
pop rsi
ret