Function at 0x1400aab50
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, 0x6f8
mov rax, qword [0x14014c340]
xor rax, rsp
mov qword [rsp + 0x6e8], rax
call fcn.1400470a0
mov qword [rsp + 0x118], rax
mov rax, qword [rsp + 0x118]
movzx eax, byte [rax + 0xbb]
test eax, eax
je 0x1400aaba6
xor al, al
jmp 0x1400af4b7
mov rax, qword [0x140173d58]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x70]
add rax, 8
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x70]
add rax, 0x37d0
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0x150], 0
mov eax, dword [rsp + 0x738]
and eax, 0x4000000
test eax, eax
je 0x1400aabf8
mov byte [rsp + 0xc4], 1
jmp 0x1400aac00
mov byte [rsp + 0xc4], 0
movzx eax, byte [rsp + 0xc4]
mov byte [rsp + 0x50], al
mov eax, dword [rsp + 0x738]
and eax, 0x4000
test eax, eax
je 0x1400aac26
mov byte [rsp + 0xc5], 1
jmp 0x1400aac2e
mov byte [rsp + 0xc5], 0
movzx eax, byte [rsp + 0xc5]
mov byte [rsp + 0x60], al
mov eax, dword [rsp + 0x738]
and eax, 0x8000
test eax, eax
je 0x1400aac54
mov byte [rsp + 0xc6], 1
jmp 0x1400aac5c
mov byte [rsp + 0xc6], 0
movzx eax, byte [rsp + 0xc6]
mov byte [rsp + 0x7e], al
mov eax, dword [rsp + 0x738]
and eax, 0x10000
test eax, eax
jne 0x1400aac82
mov byte [rsp + 0xc7], 1
jmp 0x1400aac8a
mov byte [rsp + 0xc7], 0
movzx eax, byte [rsp + 0xc7]
mov byte [rsp + 0xb8], al
mov eax, dword [rsp + 0x738]
and eax, 0x40000
test eax, eax
je 0x1400aacb3
mov byte [rsp + 0xc8], 1
jmp 0x1400aacbb
mov byte [rsp + 0xc8], 0
movzx eax, byte [rsp + 0xc8]
mov byte [rsp + 0x91], al
movzx eax, byte [rsp + 0x91]
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400aace0
call fcn.140064370
xor r8d, r8d
mov rdx, qword [rsp + 0x710]
mov rcx, qword [rsp + 0x118]
call fcn.140050010
mov dword [rsp + 0x64], eax
movss xmm0, dword [0x14013a87c]
movss dword [rsp + 0x20], xmm0
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rsp + 0x710]
lea rcx, [rsp + 0x630]
call fcn.140054560
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400aad4e
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x3c20]
mulss xmm0, dword [0x14013a66c]
movss dword [rsp + 0x200], xmm0
jmp 0x1400aad60
movss xmm0, dword [rsp + 0x634]
movss dword [rsp + 0x200], xmm0
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x14013a598]
movss xmm1, dword [rsp + 0x200]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x284], xmm0
call fcn.140063fd0
movss dword [rsp + 0x280], xmm0
mov rax, qword [rsp + 0x730]
mov rax, qword [rax]
mov qword [rsp + 0x3c8], rax
mov rax, qword [rsp + 0x3c8]
mov qword [rsp + 0x3d0], rax
movss xmm3, dword [rsp + 0x284]
movss xmm2, dword [rsp + 0x280]
mov rdx, qword [rsp + 0x3d0]
lea rcx, [rsp + 0x640]
call fcn.1400640a0
movss xmm0, dword [rsp + 0x644]
movss dword [rsp + 0x27c], xmm0
movss xmm0, dword [rsp + 0x630]
comiss xmm0, dword [0x14013a3b0]
jbe 0x1400aae2b
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x54]
addss xmm0, dword [rsp + 0x630]
movss dword [rsp + 0x204], xmm0
jmp 0x1400aae37
xorps xmm0, xmm0
movss dword [rsp + 0x204], xmm0
movss xmm0, dword [rsp + 0x640]
addss xmm0, dword [rsp + 0x204]
movss xmm2, dword [rsp + 0x27c]
movaps xmm1, xmm0
lea rcx, [rsp + 0x690]
call fcn.14000aa20
mov rax, qword [rsp + 0x118]
add rax, 0x100
lea r8, [rsp + 0x640]
mov rdx, rax
lea rcx, [rsp + 0x4a8]
call fcn.140043450
mov rcx, qword [rsp + 0x118]
add rcx, 0x100
mov r8, rax
mov rdx, rcx
lea rcx, [rsp + 0x528]
call fcn.140044290
lea r8, [rsp + 0x690]
lea rdx, [rsp + 0x528]
lea rcx, [rsp + 0x4b0]
call fcn.140043450
mov r8, rax
lea rdx, [rsp + 0x528]
lea rcx, [rsp + 0x668]
call fcn.140044290
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x640]
mov qword [rsp + 0x518], rax
mov dword [rsp + 0x14c], 0
lea rcx, [rsp + 0x6a8]
call fcn.140044f20
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400ab151
mov rax, qword [rsp + 0x118]
mov rax, qword [rax + 0x100]
mov qword [rsp + 0x688], rax
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x668]
call fcn.140099c20
mov r9d, 0x400
lea r8, [rsp + 0x528]
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x668]
call fcn.1400636f0
movzx eax, al
test eax, eax
jne 0x1400aaf87
call fcn.140064570
xor al, al
jmp 0x1400af4b7
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x479c]
mov dword [rsp + 0x14c], eax
lea rax, [rsp + 0x6a8]
mov rcx, qword [rsp + 0x70]
mov rdi, rax
lea rsi, [rcx + 0x4794]
mov ecx, 0x3c
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x688]
mov qword [rax + 0x100], rcx
mov eax, 0x10
imul rax, rax, 7
mov rcx, qword [rsp + 0xe0]
lea rax, [rcx + rax + 0xe8]
mov rdx, rax
mov ecx, 3
call fcn.14004d190
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x44]
mov ecx, 7
call fcn.14004d320
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x48]
mov ecx, 8
call fcn.14004d320
xorps xmm2, xmm2
xorps xmm1, xmm1
lea rcx, [rsp + 0x4b8]
call fcn.14000aa20
mov rdx, rax
mov ecx, 2
call fcn.14004d3d0
lea rdx, [rsp + 0x4c0]
lea rcx, [rsp + 0x528]
call fcn.140044410
mov dword [rsp + 0x20], 4
mov r9b, 1
mov r8, rax
mov edx, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x710]
call fcn.140054cd0
mov byte [rsp + 0xed], al
mov ecx, 3
call fcn.14004d480
mov ecx, 1
call fcn.14004d250
movzx eax, byte [rsp + 0xed]
test eax, eax
jne 0x1400ab0ae
call fcn.1400550a0
call fcn.140064570
xor al, al
jmp 0x1400af4b7
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3ef8]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0xd0]
mov eax, dword [rax + 0x158]
mov ecx, 1
mov dword [rsp + 0x2b0], ecx
movzx ecx, al
mov eax, dword [rsp + 0x2b0]
shl eax, cl
mov rcx, qword [rsp + 0xd0]
movsx ecx, word [rcx + 0x15e]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0xd0]
mov word [rcx + 0x15e], ax
mov rax, qword [rsp + 0xe0]
add rax, 0x3c
mov rcx, qword [rsp + 0xd0]
add rcx, 0x100
mov rdx, rax
call fcn.140043590
mov rax, qword [rsp + 0xd0]
movss xmm0, dword [rsp + 0x518]
subss xmm0, dword [rax + 0xac]
movss dword [rsp + 0x518], xmm0
jmp 0x1400ab1ba
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x668]
call fcn.140099c20
mov eax, dword [rsp + 0x738]
and eax, 0x10000000
test eax, eax
jne 0x1400ab1a8
mov r9d, 0x400
lea r8, [rsp + 0x528]
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x668]
call fcn.1400636f0
movzx eax, al
test eax, eax
jne 0x1400ab1a8
xor al, al
jmp 0x1400af4b7
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x479c]
mov dword [rsp + 0x14c], eax
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x528]
call fcn.140050c30
mov byte [rsp + 0x89], al
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x1400ab1ed
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x4a98], 1
mov ecx, dword [rsp + 0x64]
call fcn.14009daa0
mov qword [rsp + 0x58], rax
mov eax, dword [rsp + 0x14c]
and eax, 0x100
test eax, eax
je 0x1400ab215
mov byte [rsp + 0xc9], 1
jmp 0x1400ab21d
mov byte [rsp + 0xc9], 0
movzx eax, byte [rsp + 0xc9]
mov byte [rsp + 0xaa], al
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
je 0x1400ab278
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x48e8], ecx
jne 0x1400ab278
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x48f4]
and eax, 1
test eax, eax
jne 0x1400ab26e
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x490c], 2
jne 0x1400ab278
mov byte [rsp + 0xca], 1
jmp 0x1400ab280
mov byte [rsp + 0xca], 0
movzx eax, byte [rsp + 0xca]
mov byte [rsp + 0x8f], al
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x1400ab2c2
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0x3740]
test eax, eax
je 0x1400ab2c2
mov byte [rsp + 0xcb], 1
jmp 0x1400ab2ca
mov byte [rsp + 0xcb], 0
movzx eax, byte [rsp + 0xcb]
mov byte [rsp + 0x8d], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400ab321
cmp qword [rsp + 0x58], 0
je 0x1400ab321
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x3f58], 0
jne 0x1400ab321
mov edx, 1
mov rcx, qword [rsp + 0xd0]
call fcn.14009fca0
mov rcx, qword [rsp + 0x70]
cmp dword [rcx + 0x3f88], eax
jne 0x1400ab321
mov byte [rsp + 0xa4], 1
jmp 0x1400ab329
mov byte [rsp + 0xa4], 0
movzx eax, byte [rsp + 0xa4]
mov byte [rsp + 0xee], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400ab372
cmp qword [rsp + 0x58], 0
je 0x1400ab372
mov edx, 1
mov rcx, qword [rsp + 0xd0]
call fcn.14009fca0
mov rcx, qword [rsp + 0x70]
cmp dword [rcx + 0x3f58], eax
jne 0x1400ab372
mov byte [rsp + 0xa5], 1
jmp 0x1400ab37a
mov byte [rsp + 0xa5], 0
movzx eax, byte [rsp + 0xa5]
mov byte [rsp + 0xac], al
mov byte [rsp + 0x7a], 0
mov byte [rsp + 0x7c], 0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400ab3b7
mov rax, qword [rsp + 0xd0]
movss xmm0, dword [rax + 0x88]
movss dword [rsp + 0x208], xmm0
jmp 0x1400ab3c8
movss xmm0, dword [0x14013a848]
movss dword [rsp + 0x208], xmm0
movss xmm0, dword [rsp + 0x208]
movss dword [rsp + 0xa0], xmm0
cmp qword [rsp + 0x58], 0
je 0x1400ab41f
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1400ab3f8
mov dword [rsp + 0x20c], 1
jmp 0x1400ab403
mov dword [rsp + 0x20c], 0
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x6b]
cmp eax, dword [rsp + 0x20c]
je 0x1400ab41f
mov byte [rsp + 0xa6], 1
jmp 0x1400ab427
mov byte [rsp + 0xa6], 0
movzx eax, byte [rsp + 0xa6]
mov byte [rsp + 0xa9], al
movzx eax, byte [rsp + 0x8d]
test eax, eax
jne 0x1400ab470
movzx eax, byte [rsp + 0xee]
test eax, eax
jne 0x1400ab470
movzx eax, byte [rsp + 0x8f]
test eax, eax
jne 0x1400ab470
movzx eax, byte [rsp + 0xaa]
test eax, eax
jne 0x1400ab470
mov byte [rsp + 0xa7], 0
jmp 0x1400ab478
mov byte [rsp + 0xa7], 1
movzx eax, byte [rsp + 0xa7]
mov byte [rsp + 0x8e], al
movzx eax, byte [rsp + 0x8e]
test eax, eax
jne 0x1400ab4a9
movzx eax, byte [rsp + 0xac]
test eax, eax
jne 0x1400ab4a9
mov byte [rsp + 0xa8], 0
jmp 0x1400ab4b1
mov byte [rsp + 0xa8], 1
movzx eax, byte [rsp + 0xa8]
mov byte [rsp + 0xab], al
movzx eax, byte [rsp + 0xab]
test eax, eax
je 0x1400ab4dd
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x1400ab4ed
movzx eax, byte [rsp + 0xa9]
test eax, eax
je 0x1400ab7ef
mov rax, qword [rsp + 0x70]
add rax, 0x4c28
mov qword [rsp + 0x58], rax
mov rcx, qword [rsp + 0x58]
call fcn.14009d910
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 8]
call fcn.1400aaa80
mov rax, qword [rsp + 0x720]
mov qword [rsp + 0x3e0], rax
mov qword [rsp + 0x240], 0xffffffffffffffff
inc qword [rsp + 0x240]
mov rax, qword [rsp + 0x3e0]
mov rcx, qword [rsp + 0x240]
cmp byte [rax + rcx], 0
jne 0x1400ab530
mov rax, qword [rsp + 0x240]
mov dword [rsp + 0x134], eax
mov rax, qword [rsp + 0x58]
add rax, 0x38
mov qword [rsp + 0x3e8], rax
mov eax, dword [rsp + 0x134]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x3e8]
call fcn.140070cc0
mov eax, dword [rsp + 0x134]
inc eax
cdqe
mov rcx, qword [rsp + 0x58]
mov rdi, qword [rcx + 0x40]
mov rsi, qword [rsp + 0x720]
mov rcx, rax
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 8], ecx
jne 0x1400ab5ce
movzx eax, byte [rsp + 0xa9]
test eax, eax
jne 0x1400ab5ce
mov dword [rsp + 0x170], 1
jmp 0x1400ab5d9
mov dword [rsp + 0x170], 0
movzx eax, byte [rsp + 0x170]
mov byte [rsp + 0x88], al
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x1400ab640
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x134]
cmp dword [rax + 0x10], ecx
jne 0x1400ab638
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x48]
test eax, eax
je 0x1400ab640
movsxd rax, dword [rsp + 0x134]
mov r8, rax
mov rdx, qword [rsp + 0x720]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x30]
call 0x1402989eb
int3
mov byte [rsp + 0x88], 0
mov qword [rsp + 0x5a8], 0
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x64]
mov dword [rax + 8], ecx
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x3f0], rax
mov eax, dword [rsp + 0x728]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x3f0]
call fcn.140070350
mov rax, qword [rsp + 0x58]
add rax, 0x28
mov qword [rsp + 0x3f8], rax
xor edx, edx
mov rcx, qword [rsp + 0x3f8]
call fcn.140070cc0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x48], 0
lea rax, [rsp + 0x5a8]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x720]
mov edx, dword [rsp + 0x728]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.14004a830
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x720]
mov rcx, qword [rsp + 0x5a8]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x10], eax
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x1400ab715
mov rcx, qword [rsp + 0x58]
call fcn.14009d930
jmp 0x1400ab75b
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
movss dword [rax + 0x50], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1400ab738
mov dword [rsp + 0x174], 1
jmp 0x1400ab743
mov dword [rsp + 0x174], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov edx, dword [rsp + 0x174]
mov rcx, rax
call fcn.1400aa310
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1400ab7d6
mov eax, dword [rsp + 0x738]
and eax, 0x10
test eax, eax
je 0x1400ab777
mov byte [rsp + 0x7c], 1
movzx eax, byte [rsp + 0x8f]
test eax, eax
je 0x1400ab7a6
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x1400ab7a1
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x48f4]
and eax, 4
test eax, eax
jne 0x1400ab7a6
mov byte [rsp + 0x7c], 1
movzx eax, byte [rsp + 0xaa]
test eax, eax
jne 0x1400ab7d1
movzx eax, byte [rsp + 0x8d]
test eax, eax
je 0x1400ab7d6
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x1400ab7d6
mov byte [rsp + 0x7c], 1
mov eax, dword [rsp + 0x738]
and eax, 0x2000
test eax, eax
je 0x1400ab7ef
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x60], 1
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x71]
mov byte [rsp + 0x79], al
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
je 0x1400ab84d
movzx eax, byte [rsp + 0x8e]
test eax, eax
je 0x1400ab84d
mov rdx, qword [rsp + 0x118]
mov ecx, dword [rsp + 0x64]
call fcn.140050420
mov rdx, qword [rsp + 0x118]
mov ecx, dword [rsp + 0x64]
call fcn.140067640
xor edx, edx
mov rcx, qword [rsp + 0x118]
call fcn.14005d710
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x1400ab952
movzx eax, byte [rsp + 0x8d]
test eax, eax
je 0x1400ab87f
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x281
call fcn.140062f50
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4768]
or eax, 3
mov rcx, qword [rsp + 0x70]
mov dword [rcx + 0x4768], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1400ab8b1
mov eax, dword [rsp + 0x738]
and eax, 0x80
test eax, eax
je 0x1400ab8ca
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4768]
or eax, 0xc
mov rcx, qword [rsp + 0x70]
mov dword [rcx + 0x4768], eax
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x207
call fcn.140062f50
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x208
call fcn.140062f50
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400ab917
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x205
call fcn.140062f50
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x206
call fcn.140062f50
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x1400ab931
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x4000
call fcn.140062f50
mov eax, dword [rsp + 0x738]
and eax, 0x440
test eax, eax
je 0x1400ab952
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x200
call fcn.14005f770
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x1400ab970
cmp qword [rsp + 0x58], 0
jne 0x1400ab970
call fcn.140050700
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x1400ab9bb
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0x3740]
test eax, eax
je 0x1400ab9bb
movzx eax, byte [rsp + 0xab]
test eax, eax
jne 0x1400ab9bb
movzx eax, byte [rsp + 0x8e]
test eax, eax
jne 0x1400ab9bb
mov byte [rsp + 0x7a], 1
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
je 0x1400ab9ed
cmp qword [rsp + 0x58], 0
je 0x1400ab9e0
movzx eax, byte [rsp + 0xac]
test eax, eax
jne 0x1400ab9ed
mov dword [rsp + 0x178], 0
jmp 0x1400ab9f8
mov dword [rsp + 0x178], 1
movzx eax, byte [rsp + 0x178]
mov byte [rsp + 0x68], al
cmp qword [rsp + 0x58], 0
je 0x1400aba42
mov rcx, qword [rsp + 0x58]
call fcn.14009d9a0
movzx eax, al
test eax, eax
jne 0x1400aba26
movzx eax, byte [rsp + 0x7c]
test eax, eax
je 0x1400aba42
xor eax, eax
test eax, eax
jne 0x1400aba35
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x1400aba42
mov dword [rsp + 0x17c], 1
jmp 0x1400aba4d
mov dword [rsp + 0x17c], 0
movzx eax, byte [rsp + 0x17c]
mov byte [rsp + 0x61], al
mov byte [rsp + 0x7b], 0
mov byte [rsp + 0x92], 0
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x1400abb50
cmp qword [rsp + 0x58], 0
je 0x1400abb50
movzx eax, byte [rsp + 0x68]
test eax, eax
jne 0x1400aba95
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x1400abb50
mov qword [rsp + 0x5b0], 0
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x400], rax
mov eax, dword [rsp + 0x728]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x400]
call fcn.140070350
lea rax, [rsp + 0x5b0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x720]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x18]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.14004a830
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x720]
mov rcx, qword [rsp + 0x5b0]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x10], eax
mov rcx, qword [rsp + 0x58]
call fcn.14009d930
movzx eax, byte [rsp + 0x61]
mov dword [rsp + 0x2a0], eax
mov rcx, qword [rsp + 0x58]
call fcn.14009d9a0
movzx eax, al
mov ecx, dword [rsp + 0x2a0]
and ecx, eax
mov eax, ecx
mov byte [rsp + 0x61], al
movzx eax, byte [rsp + 0x68]
test eax, eax
jne 0x1400abb73
movzx eax, byte [rsp + 0x61]
test eax, eax
jne 0x1400abb73
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x1400abb9b
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400abb9b
cmp qword [rsp + 0x58], 0
je 0x1400abb9b
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x48]
test eax, eax
je 0x1400abb9b
mov byte [rsp + 0xad], 1
jmp 0x1400abba3
mov byte [rsp + 0xad], 0
movzx eax, byte [rsp + 0xad]
mov byte [rsp + 0xc3], al
cmp qword [rsp + 0x718], 0
je 0x1400abc0f
movzx eax, byte [rsp + 0xc3]
test eax, eax
je 0x1400abbdc
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x2d0], rax
jmp 0x1400abbec
mov rax, qword [rsp + 0x720]
mov qword [rsp + 0x2d0], rax
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x2d0]
movsx eax, byte [rcx + rax]
test eax, eax
jne 0x1400abc0f
mov byte [rsp + 0xae], 1
jmp 0x1400abc17
mov byte [rsp + 0xae], 0
movzx eax, byte [rsp + 0xae]
mov byte [rsp + 0x78], al
movzx eax, byte [rsp + 0x7e]
test eax, eax
je 0x1400abd4c
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x1400abd4c
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3c18]
mov qword [rsp + 0x408], rax
mov dx, 0x2a
mov rcx, qword [rsp + 0x408]
call fcn.140090b20
mov qword [rsp + 0x310], rax
mov rax, qword [rsp + 0x70]
add rax, 0x5ad0
mov qword [rsp + 0x140], rax
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3c18]
mov rcx, qword [rsp + 0x140]
movss xmm0, dword [rax + 0x14]
movss dword [rcx + 0x14], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3c18]
mov rcx, qword [rsp + 0x140]
movss xmm0, dword [rax + 0x64]
movss dword [rcx + 0x64], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3c18]
mov rcx, qword [rsp + 0x140]
movss xmm0, dword [rax + 0x68]
movss dword [rcx + 0x68], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3c18]
mov rcx, qword [rsp + 0x140]
movss xmm0, dword [rax + 0x6c]
movss dword [rcx + 0x6c], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3c18]
mov rcx, qword [rsp + 0x140]
mov rax, qword [rax + 0x40]
mov qword [rcx + 0x40], rax
mov rax, qword [rsp + 0x140]
mov rcx, qword [rsp + 0x310]
mov qword [rax + 0x38], rcx
mov rax, qword [rsp + 0x140]
mov rcx, qword [rsp + 0x310]
movss xmm0, dword [rcx + 4]
movss dword [rax + 0x10], xmm0
mov rcx, qword [rsp + 0x140]
call fcn.14005dcd0
mov dword [rsp + 0x148], 0
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x1400ac489
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x148], eax
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe86], 0
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x728]
mov dword [rax + 0x4c], ecx
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x738]
mov dword [rax + 0xe88], ecx
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0xe08]
test eax, eax
jne 0x1400abdd2
mov dword [rsp + 0x180], 1
jmp 0x1400abddd
mov dword [rsp + 0x180], 0
mov rax, qword [rsp + 0x70]
movzx ecx, byte [rsp + 0x180]
mov byte [rax + 0x3f65], cl
mov rax, qword [rsp + 0x80]
movss xmm0, dword [rax + 0xe00]
subss xmm0, dword [rsp + 0x528]
mov rax, qword [rsp + 0xe0]
subss xmm0, dword [rax + 0x3c]
mov rax, qword [rsp + 0x58]
addss xmm0, dword [rax + 0x50]
movss dword [rsp + 0x128], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400abe5d
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0xd0]
movss xmm0, dword [rax + 0xe04]
subss xmm0, dword [rcx + 0x104]
movss dword [rsp + 0x184], xmm0
jmp 0x1400abe7b
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x3c20]
mulss xmm0, dword [0x14013a48c]
movss dword [rsp + 0x184], xmm0
movss xmm0, dword [rsp + 0x184]
movss dword [rsp + 0x138], xmm0
movzx eax, byte [rsp + 0x7c]
test eax, eax
je 0x1400abeb1
mov rcx, qword [rsp + 0x58]
call fcn.14009da10
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe85], 1
jmp 0x1400ac245
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x1400ac0fd
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, word [rcx + rax + 0x374a]
cmp eax, 2
jl 0x1400ac0fd
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1d]
test eax, eax
jne 0x1400ac0fd
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x138]
movss xmm2, dword [rsp + 0x128]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1400a7c90
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, word [rcx + rax + 0x374a]
sub eax, 2
mov dword [rsp + 0x288], eax
mov eax, dword [rsp + 0x288]
cdq
and eax, 1
xor eax, edx
sub eax, edx
test eax, eax
jne 0x1400ac03b
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x54], 0
je 0x1400abf8f
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
dec eax
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1400a7070
movzx eax, ax
cmp eax, 0xa
je 0x1400abf8f
mov byte [rsp + 0xaf], 0
jmp 0x1400abf97
mov byte [rsp + 0xaf], 1
movzx eax, byte [rsp + 0xaf]
mov byte [rsp + 0xef], al
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
cmp dword [rax + 0x58], ecx
jne 0x1400abfc4
movzx eax, byte [rsp + 0xef]
test eax, eax
jne 0x1400abfd3
mov edx, 0x20000c
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
cmp dword [rax + 0x58], ecx
jne 0x1400abff6
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov rcx, rax
call fcn.1400a8350
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x54]
mov rcx, qword [rsp + 0x58]
call fcn.1400a75e0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x54], eax
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x54]
mov dword [rax + 0x5c], ecx
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1400a8040
jmp 0x1400ac0ee
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x54]
mov rcx, qword [rsp + 0x58]
call fcn.1400a7070
movzx eax, ax
cmp eax, 0xa
jne 0x1400ac05f
mov byte [rsp + 0xb0], 1
jmp 0x1400ac067
mov byte [rsp + 0xb0], 0
movzx eax, byte [rsp + 0xb0]
mov byte [rsp + 0xf0], al
mov edx, 0x200004
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
mov edx, 0x600005
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
mov edx, 0x600001
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
movzx eax, byte [rsp + 0xf0]
test eax, eax
jne 0x1400ac0e2
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400ac0e2
mov rax, qword [rsp + 0x58]
add rax, 0x5c
mov rcx, qword [rsp + 0x58]
add rcx, 0x58
mov rdx, rax
call fcn.1400c0c70
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
mov dword [rax + 0x54], ecx
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 0
mov rcx, qword [rsp + 0x58]
call fcn.14009d910
jmp 0x1400ac245
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0x3740]
test eax, eax
je 0x1400ac1b2
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
jne 0x1400ac1b2
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x1400ac1ad
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1d]
test eax, eax
je 0x1400ac17b
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x138]
movss xmm2, dword [rsp + 0x128]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1400a7d40
jmp 0x1400ac1a3
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x138]
movss xmm2, dword [rsp + 0x128]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1400a7c90
mov rcx, qword [rsp + 0x58]
call fcn.14009d910
jmp 0x1400ac245
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0xe08]
test eax, eax
je 0x1400ac245
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
jne 0x1400ac245
mov rax, qword [rsp + 0x80]
xorps xmm0, xmm0
ucomiss xmm0, dword [rax + 0xf0]
jne 0x1400ac207
mov rax, qword [rsp + 0x80]
xorps xmm0, xmm0
ucomiss xmm0, dword [rax + 0xf4]
je 0x1400ac245
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x138]
movss xmm2, dword [rsp + 0x128]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1400a7d40
mov rcx, qword [rsp + 0x58]
call fcn.14009d910
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
je 0x1400ac27e
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0xe08]
test eax, eax
jne 0x1400ac27e
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe85], 0
mov eax, dword [rsp + 0x738]
and eax, 0x400
test eax, eax
je 0x1400ac2fe
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x200
call fcn.1400630e0
movzx eax, al
test eax, eax
je 0x1400ac2fe
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400ac2fe
mov dword [rsp + 0x620], 9
mov dword [rsp + 0x20], 2
mov r9, qword [rsp + 0x748]
mov r8, qword [rsp + 0x740]
mov edx, dword [rsp + 0x738]
lea rcx, [rsp + 0x620]
call fcn.1400aa4b0
movzx eax, al
test eax, eax
je 0x1400ac2fe
mov edx, dword [rsp + 0x620]
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x1400ac324
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1e]
test eax, eax
je 0x1400ac34a
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x1400ac340
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1f]
test eax, eax
jne 0x1400ac34a
mov byte [rsp + 0xb1], 0
jmp 0x1400ac352
mov byte [rsp + 0xb1], 1
movzx eax, byte [rsp + 0xb1]
mov byte [rsp + 0xf1], al
mov rax, qword [rsp + 0x80]
cmp dword [rax + 0x37b8], 0
jle 0x1400ac489
movzx eax, byte [rsp + 0xf1]
test eax, eax
jne 0x1400ac464
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400ac464
movzx eax, byte [rsp + 0x8f]
test eax, eax
jne 0x1400ac464
mov dword [rsp + 0x12c], 0
jmp 0x1400ac3c0
mov eax, dword [rsp + 0x12c]
inc eax
mov dword [rsp + 0x12c], eax
mov rax, qword [rsp + 0x80]
mov eax, dword [rax + 0x37b8]
cmp dword [rsp + 0x12c], eax
jge 0x1400ac464
mov rax, qword [rsp + 0x80]
add rax, 0x37b8
mov qword [rsp + 0x410], rax
mov edx, dword [rsp + 0x12c]
mov rcx, qword [rsp + 0x410]
call fcn.1400703a0
movzx eax, word [rax]
mov dword [rsp + 0x610], eax
cmp dword [rsp + 0x610], 9
jne 0x1400ac41b
jmp 0x1400ac3b0
mov dword [rsp + 0x20], 2
mov r9, qword [rsp + 0x748]
mov r8, qword [rsp + 0x740]
mov edx, dword [rsp + 0x738]
lea rcx, [rsp + 0x610]
call fcn.1400aa4b0
movzx eax, al
test eax, eax
je 0x1400ac45f
mov edx, dword [rsp + 0x610]
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
jmp 0x1400ac3b0
mov rax, qword [rsp + 0x80]
add rax, 0x37b8
mov qword [rsp + 0x418], rax
xor edx, edx
mov rcx, qword [rsp + 0x418]
call fcn.140070350
mov byte [rsp + 0x7d], 0
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x1400ad4ac
mov rax, qword [rsp + 0x70]
movzx eax, byte [rax + 0x3f64]
test eax, eax
jne 0x1400ad4ac
movzx eax, byte [rsp + 0x7a]
test eax, eax
jne 0x1400ad4ac
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rsp + 0x51c]
subss xmm0, dword [rax + 0x40]
mov rax, qword [rsp + 0x70]
divss xmm0, dword [rax + 0x3c20]
cvttss2si eax, xmm0
mov edx, 1
mov ecx, eax
call fcn.140072d50
mov dword [rsp + 0x154], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x154]
mov dword [rax + 0x64], ecx
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1d]
test eax, eax
je 0x1400ac52d
mov dword [rsp + 0x1fc], 0x400000
jmp 0x1400ac538
mov dword [rsp + 0x1fc], 0
mov eax, dword [rsp + 0x1fc]
mov dword [rsp + 0x94], eax
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x1400ac567
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1e]
mov byte [rsp + 0xb2], al
jmp 0x1400ac57d
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
mov byte [rsp + 0xb2], al
movzx eax, byte [rsp + 0xb2]
mov byte [rsp + 0x8b], al
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x1400ac5d8
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1f]
test eax, eax
je 0x1400ac5d8
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
jne 0x1400ac5d8
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1e]
test eax, eax
jne 0x1400ac5d8
mov byte [rsp + 0xb3], 1
jmp 0x1400ac5e0
mov byte [rsp + 0xb3], 0
movzx eax, byte [rsp + 0xb3]
mov byte [rsp + 0x8a], al
mov dword [rsp + 0x368], 1
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0xa39
call fcn.1400630e0
movzx eax, al
test eax, eax
jne 0x1400ac630
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x220a
call fcn.1400630e0
movzx eax, al
test eax, eax
je 0x1400ac666
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400ac666
movzx eax, byte [rsp + 0x7e]
test eax, eax
jne 0x1400ac666
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400ac65c
mov rcx, qword [rsp + 0x58]
call fcn.14009d9a0
movzx eax, al
test eax, eax
je 0x1400ac666
mov byte [rsp + 0xb4], 1
jmp 0x1400ac66e
mov byte [rsp + 0xb4], 0
movzx eax, byte [rsp + 0xb4]
mov byte [rsp + 0x90], al
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0xa24
call fcn.1400630e0
movzx eax, al
test eax, eax
jne 0x1400ac6ad
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x1209
call fcn.1400630e0
movzx eax, al
test eax, eax
je 0x1400ac6da
movzx eax, byte [rsp + 0x7e]
test eax, eax
jne 0x1400ac6da
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400ac6d0
mov rcx, qword [rsp + 0x58]
call fcn.14009d9a0
movzx eax, al
test eax, eax
je 0x1400ac6da
mov byte [rsp + 0xb5], 1
jmp 0x1400ac6e2
mov byte [rsp + 0xb5], 0
movzx eax, byte [rsp + 0xb5]
mov byte [rsp + 0xe9], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0xa37
call fcn.1400630e0
movzx eax, al
test eax, eax
jne 0x1400ac727
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x2209
call fcn.1400630e0
movzx eax, al
test eax, eax
je 0x1400ac73a
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400ac73a
mov byte [rsp + 0xb6], 1
jmp 0x1400ac742
mov byte [rsp + 0xb6], 0
movzx eax, byte [rsp + 0xb6]
mov byte [rsp + 0xea], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0xa3b
call fcn.1400630e0
movzx eax, al
test eax, eax
je 0x1400ac78b
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400ac78b
movzx eax, byte [rsp + 0xb8]
test eax, eax
je 0x1400ac78b
mov byte [rsp + 0xb7], 1
jmp 0x1400ac793
mov byte [rsp + 0xb7], 0
movzx eax, byte [rsp + 0xb7]
mov byte [rsp + 0xc1], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0xa3a
call fcn.1400630e0
movzx eax, al
test eax, eax
jne 0x1400ac7e1
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x1400ac800
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x2a3b
call fcn.1400630e0
movzx eax, al
test eax, eax
je 0x1400ac800
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400ac800
movzx eax, byte [rsp + 0xb8]
test eax, eax
je 0x1400ac800
mov byte [rsp + 0xb9], 1
jmp 0x1400ac808
mov byte [rsp + 0xb9], 0
movzx eax, byte [rsp + 0xb9]
mov byte [rsp + 0xfa], al
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0xa22
call fcn.1400630e0
mov byte [rsp + 0xe8], al
mov rax, qword [rsp + 0x80]
mov eax, dword [rax]
and eax, 2
test eax, eax
je 0x1400ac85c
mov rax, qword [rsp + 0x80]
mov eax, dword [rax + 4]
and eax, 1
test eax, eax
je 0x1400ac85c
mov byte [rsp + 0xba], 1
jmp 0x1400ac864
mov byte [rsp + 0xba], 0
movzx eax, byte [rsp + 0xba]
mov byte [rsp + 0xbd], al
mov dl, 1
mov ecx, 0x20d
call fcn.14005f8f0
movzx eax, al
test eax, eax
jne 0x1400ac8a3
mov dl, 1
mov ecx, 0x267
call fcn.14005f8f0
movzx eax, al
test eax, eax
jne 0x1400ac8a3
mov byte [rsp + 0xbb], 0
jmp 0x1400ac8ab
mov byte [rsp + 0xbb], 1
movzx eax, byte [rsp + 0xbb]
mov byte [rsp + 0xf8], al
movzx eax, byte [rsp + 0xbd]
test eax, eax
je 0x1400ac8f6
xor edx, edx
mov ecx, 0x26e
call fcn.14005f8f0
movzx eax, al
test eax, eax
jne 0x1400ac8ec
xor edx, edx
mov ecx, 0x26d
call fcn.14005f8f0
movzx eax, al
test eax, eax
je 0x1400ac8f6
mov byte [rsp + 0xbc], 1
jmp 0x1400ac8fe
mov byte [rsp + 0xbc], 0
movzx eax, byte [rsp + 0xbc]
mov byte [rsp + 0xbf], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x20e
call fcn.1400630e0
movzx eax, al
test eax, eax
jne 0x1400ac959
movzx eax, byte [rsp + 0xbd]
test eax, eax
je 0x1400ac94f
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x26c
call fcn.1400630e0
movzx eax, al
test eax, eax
jne 0x1400ac959
mov byte [rsp + 0xbe], 0
jmp 0x1400ac961
mov byte [rsp + 0xbe], 1
movzx eax, byte [rsp + 0xbe]
mov byte [rsp + 0xf9], al
mov dl, 1
mov ecx, 0x201
call fcn.14005f8f0
movzx eax, al
test eax, eax
je 0x1400ac9f1
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x1400ac99c
mov dword [rsp + 0x18c], 0x200004
jmp 0x1400ac9ce
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x1400ac9b5
mov dword [rsp + 0x188], 0x20000c
jmp 0x1400ac9c0
mov dword [rsp + 0x188], 0x200000
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0x18c], eax
mov eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x18c]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
jmp 0x1400ad464
mov dl, 1
mov ecx, 0x202
call fcn.14005f8f0
movzx eax, al
test eax, eax
je 0x1400aca72
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x1400aca1d
mov dword [rsp + 0x194], 0x200005
jmp 0x1400aca4f
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x1400aca36
mov dword [rsp + 0x190], 0x20000d
jmp 0x1400aca41
mov dword [rsp + 0x190], 0x200001
mov eax, dword [rsp + 0x190]
mov dword [rsp + 0x194], eax
mov eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x194]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
jmp 0x1400ad464
mov dl, 1
mov ecx, 0x203
call fcn.14005f8f0
movzx eax, al
test eax, eax
je 0x1400acb27
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400acb27
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x1400acae0
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x88]
subss xmm0, dword [rcx + 0x3c20]
xorps xmm1, xmm1
call fcn.140072c20
movaps xmm1, xmm0
mov rcx, qword [rsp + 0xd0]
call fcn.140065610
jmp 0x1400acb22
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x1400acaf9
mov dword [rsp + 0x198], 0x200006
jmp 0x1400acb04
mov dword [rsp + 0x198], 0x200002
mov eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x198]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
jmp 0x1400ad464
mov dl, 1
mov ecx, 0x204
call fcn.14005f8f0
movzx eax, al
test eax, eax
je 0x1400acc02
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400acc02
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x1400acbbb
call fcn.1400655a0
movss dword [rsp + 0x2bc], xmm0
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x88]
addss xmm0, dword [rcx + 0x3c20]
movss dword [rsp + 0x2c0], xmm0
movss xmm1, dword [rsp + 0x2bc]
movss xmm0, dword [rsp + 0x2c0]
call fcn.140072be0
movaps xmm1, xmm0
mov rcx, qword [rsp + 0xd0]
call fcn.140065610
jmp 0x1400acbfd
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x1400acbd4
mov dword [rsp + 0x19c], 0x200007
jmp 0x1400acbdf
mov dword [rsp + 0x19c], 0x200003
mov eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x19c]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
jmp 0x1400ad464
mov dl, 1
mov ecx, 0x205
call fcn.14005f8f0
movzx eax, al
test eax, eax
je 0x1400acc6a
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400acc6a
mov eax, dword [rsp + 0x94]
or eax, 0x20000e
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
cvtsi2ss xmm0, dword [rsp + 0x154]
mov rax, qword [rsp + 0x70]
mulss xmm0, dword [rax + 0x3c20]
movss xmm1, dword [rsp + 0xa0]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0xa0], xmm0
jmp 0x1400ad464
mov dl, 1
mov ecx, 0x206
call fcn.14005f8f0
movzx eax, al
test eax, eax
je 0x1400accd2
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400accd2
mov eax, dword [rsp + 0x94]
or eax, 0x20000f
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
cvtsi2ss xmm0, dword [rsp + 0x154]
mov rax, qword [rsp + 0x70]
mulss xmm0, dword [rax + 0x3c20]
movss xmm1, dword [rsp + 0xa0]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0xa0], xmm0
jmp 0x1400ad464
mov dl, 1
mov ecx, 0x207
call fcn.14005f8f0
movzx eax, al
test eax, eax
je 0x1400acd36
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x1400acd0d
mov eax, dword [rsp + 0x94]
or eax, 0x200006
mov dword [rsp + 0x1a0], eax
jmp 0x1400acd20
mov eax, dword [rsp + 0x94]
or eax, 0x200004
mov dword [rsp + 0x1a0], eax
mov edx, dword [rsp + 0x1a0]
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
jmp 0x1400ad464
mov dl, 1
mov ecx, 0x208
call fcn.14005f8f0
movzx eax, al
test eax, eax
je 0x1400acd9a
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x1400acd71
mov eax, dword [rsp + 0x94]
or eax, 0x200007
mov dword [rsp + 0x1a4], eax
jmp 0x1400acd84
mov eax, dword [rsp + 0x94]
or eax, 0x200005
mov dword [rsp + 0x1a4], eax
mov edx, dword [rsp + 0x1a4]
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
jmp 0x1400ad464
mov dl, 1
mov ecx, 0x20a
call fcn.14005f8f0
movzx eax, al
test eax, eax
je 0x1400ace0b
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400ace0b
movzx eax, byte [rsp + 0x90]
test eax, eax
jne 0x1400ace0b
mov rcx, qword [rsp + 0x58]
call fcn.14009d9a0
movzx eax, al
test eax, eax
jne 0x1400acdee
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x1400acdee
mov edx, 0x60000d
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
mov eax, dword [rsp + 0x94]
or eax, 0x200008
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
jmp 0x1400ad464
mov dl, 1
mov ecx, 0x20b
call fcn.14005f8f0
movzx eax, al
test eax, eax
je 0x1400acecb
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400acecb
mov rcx, qword [rsp + 0x58]
call fcn.14009d9a0
movzx eax, al
test eax, eax
jne 0x1400aceae
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x1400ace5d
mov edx, 0x60000c
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
jmp 0x1400aceae
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x1400aceae
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1f]
test eax, eax
je 0x1400aceae
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1e]
test eax, eax
jne 0x1400aceae
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
jne 0x1400aceae
mov edx, 0x600004
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
mov eax, dword [rsp + 0x94]
or eax, 0x200009
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
jmp 0x1400ad464
movzx eax, byte [rsp + 0xf8]
test eax, eax
jne 0x1400acee7
movzx eax, byte [rsp + 0xbf]
test eax, eax
je 0x1400ad002
mov eax, dword [rsp + 0x738]
and eax, 0x800
test eax, eax
je 0x1400acf04
mov dword [rsp + 0x1a8], 1
jmp 0x1400acf0f
mov dword [rsp + 0x1a8], 0
movzx eax, byte [rsp + 0x1a8]
mov byte [rsp + 0xc0], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400acf71
movzx eax, byte [rsp + 0xbf]
test eax, eax
jne 0x1400acf71
movzx eax, byte [rsp + 0xc0]
test eax, eax
je 0x1400acf52
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x1400acf71
movzx eax, byte [rsp + 0xc0]
test eax, eax
jne 0x1400acfa5
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x1400acfa5
mov byte [rsp + 0x92], 1
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x74]
test eax, eax
je 0x1400acf9e
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1400acf9e
mov rcx, qword [rsp + 0x58]
call fcn.14009da10
jmp 0x1400acfa3
mov byte [rsp + 0x7a], 1
jmp 0x1400acffd
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400acffd
mov dword [rsp + 0x624], 0xa
mov dword [rsp + 0x20], 2
mov r9, qword [rsp + 0x748]
mov r8, qword [rsp + 0x740]
mov edx, dword [rsp + 0x738]
lea rcx, [rsp + 0x624]
call fcn.1400aa4b0
movzx eax, al
test eax, eax
je 0x1400acffd
mov edx, dword [rsp + 0x624]
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
jmp 0x1400ad464
movzx eax, byte [rsp + 0xf9]
test eax, eax
je 0x1400ad066
mov eax, dword [rsp + 0x738]
and eax, 0x100000
test eax, eax
je 0x1400ad045
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x10], 0
jle 0x1400ad030
mov byte [rsp + 0x7d], 1
jmp 0x1400ad043
mov byte [rsp + 0x61], 0
movzx eax, byte [rsp + 0x61]
mov byte [rsp + 0x68], al
mov byte [rsp + 0x7a], 1
jmp 0x1400ad061
mov byte [rsp + 0x7d], 1
movzx eax, byte [rsp + 0x7d]
mov byte [rsp + 0x7a], al
mov byte [rsp + 0x61], 0
movzx eax, byte [rsp + 0x61]
mov byte [rsp + 0x68], al
jmp 0x1400ad464
movzx eax, byte [rsp + 0xc1]
test eax, eax
jne 0x1400ad07e
movzx eax, byte [rsp + 0xfa]
test eax, eax
je 0x1400ad0c2
movzx eax, byte [rsp + 0xc1]
test eax, eax
je 0x1400ad097
mov dword [rsp + 0x1ac], 0x20000a
jmp 0x1400ad0a2
mov dword [rsp + 0x1ac], 0x20000b
mov edx, dword [rsp + 0x1ac]
mov rcx, qword [rsp + 0x58]
call fcn.1400aa440
mov rcx, qword [rsp + 0x58]
call fcn.14009d9e0
jmp 0x1400ad464
movzx eax, byte [rsp + 0xe8]
test eax, eax
je 0x1400ad0e9
mov rcx, qword [rsp + 0x58]
call fcn.14009da10
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
jmp 0x1400ad464
movzx eax, byte [rsp + 0x90]
test eax, eax
jne 0x1400ad105
movzx eax, byte [rsp + 0xe9]
test eax, eax
je 0x1400ad2ae
mov rax, qword [rsp + 0x80]
cmp qword [rax + 0xb0], 0
je 0x1400ad260
mov rcx, qword [rsp + 0x58]
call fcn.14009d9a0
movzx eax, al
test eax, eax
je 0x1400ad14a
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.140072c60
mov dword [rsp + 0x1b0], eax
jmp 0x1400ad155
mov dword [rsp + 0x1b0], 0
mov eax, dword [rsp + 0x1b0]
mov dword [rsp + 0x1bc], eax
mov rcx, qword [rsp + 0x58]
call fcn.14009d9a0
movzx eax, al
test eax, eax
je 0x1400ad192
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.140072d50
mov dword [rsp + 0x1b4], eax
jmp 0x1400ad1a1
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0xc]
mov dword [rsp + 0x1b4], eax
mov eax, dword [rsp + 0x1b4]
mov dword [rsp + 0x1b8], eax
movsxd rax, dword [rsp + 0x1b8]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x20]
lea rax, [rcx + rax*2]
movsxd rcx, dword [rsp + 0x1bc]
mov rdx, qword [rsp + 0x58]
mov rdx, qword [rdx + 0x20]
lea rcx, [rdx + rcx*2]
mov rdx, rax
call fcn.14004ad20
inc eax
mov dword [rsp + 0x1c0], eax
movsxd rax, dword [rsp + 0x1c0]
mov rcx, rax
call fcn.140051050
mov qword [rsp + 0x290], rax
movsxd rax, dword [rsp + 0x1b8]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x20]
lea rax, [rcx + rax*2]
movsxd rcx, dword [rsp + 0x1bc]
mov rdx, qword [rsp + 0x58]
mov rdx, qword [rdx + 0x20]
lea rcx, [rdx + rcx*2]
mov r9, rax
mov r8, rcx
mov edx, dword [rsp + 0x1c0]
mov rcx, qword [rsp + 0x290]
call fcn.14004ac10
mov rcx, qword [rsp + 0x290]
call fcn.140051170
mov rcx, qword [rsp + 0x290]
call fcn.1400510b0
movzx eax, byte [rsp + 0x90]
test eax, eax
je 0x1400ad2a9
mov rcx, qword [rsp + 0x58]
call fcn.14009d9a0
movzx eax, al
test eax, eax
jne 0x1400ad287
mov rcx, qword [rsp + 0x58]
call fcn.14009da10
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1400a83a0
jmp 0x1400ad464
movzx eax, byte [rsp + 0xea]
test eax, eax
je 0x1400ad464
call fcn.140051110
mov qword [rsp + 0x298], rax
cmp qword [rsp + 0x298], 0
je 0x1400ad464
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x420], rax
mov qword [rsp + 0x248], 0xffffffffffffffff
inc qword [rsp + 0x248]
mov rax, qword [rsp + 0x420]
mov rcx, qword [rsp + 0x248]
cmp byte [rax + rcx], 0
jne 0x1400ad2f6
mov rax, qword [rsp + 0x248]
mov dword [rsp + 0x28c], eax
mov eax, dword [rsp + 0x28c]
inc eax
cdqe
shl rax, 1
mov rcx, rax
call fcn.140051050
mov qword [rsp + 0x218], rax
mov dword [rsp + 0x108], 0
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x228], rax
mov rax, qword [rsp + 0x228]
movsx eax, byte [rax]
test eax, eax
je 0x1400ad405
xor r8d, r8d
mov rdx, qword [rsp + 0x228]
lea rcx, [rsp + 0x628]
call fcn.14004a3a0
cdqe
mov rcx, qword [rsp + 0x228]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x228], rax
mov dword [rsp + 0x20], 4
mov r9, qword [rsp + 0x748]
mov r8, qword [rsp + 0x740]
mov edx, dword [rsp + 0x738]
lea rcx, [rsp + 0x628]
call fcn.1400aa4b0
movzx eax, al
test eax, eax
jne 0x1400ad3d4
jmp 0x1400ad35c
movsxd rax, dword [rsp + 0x108]
mov rcx, qword [rsp + 0x218]
movzx edx, word [rsp + 0x628]
mov word [rcx + rax*2], dx
mov eax, dword [rsp + 0x108]
inc eax
mov dword [rsp + 0x108], eax
jmp 0x1400ad35c
movsxd rax, dword [rsp + 0x108]
xor ecx, ecx
mov rdx, qword [rsp + 0x218]
mov word [rdx + rax*2], cx
cmp dword [rsp + 0x108], 0
jle 0x1400ad457
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov r9d, dword [rsp + 0x108]
mov r8, qword [rsp + 0x218]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1400aa330
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rcx, qword [rsp + 0x218]
call fcn.1400510b0
mov rcx, qword [rsp + 0x58]
call fcn.14009d9a0
movzx eax, al
test eax, eax
je 0x1400ad491
xor eax, eax
test eax, eax
jne 0x1400ad484
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x1400ad491
mov dword [rsp + 0x1c4], 1
jmp 0x1400ad49c
mov dword [rsp + 0x1c4], 0
movzx eax, byte [rsp + 0x61]
or eax, dword [rsp + 0x1c4]
mov byte [rsp + 0x61], al
mov qword [rsp + 0x120], 0
mov dword [rsp + 0x98], 0
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x1400adcd6
movzx eax, byte [rsp + 0x7d]
test eax, eax
je 0x1400ad685
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400ad685
mov eax, dword [rsp + 0x738]
and eax, 0x100000
test eax, eax
je 0x1400ad542
lea rax, [0x1401260ee]
mov qword [rsp + 0x120], rax
mov dword [rsp + 0x98], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
xor r9d, r9d
lea r8, [rsp + 0x660]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1400aa370
jmp 0x1400ad685
mov rax, qword [rsp + 0x720]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x40]
sub rcx, rax
movzx edx, byte [rax]
cmp dl, byte [rax + rcx]
jne 0x1400ad569
inc rax
test dl, dl
jne 0x1400ad556
xor eax, eax
jmp 0x1400ad56e
sbb eax, eax
or eax, 1
test eax, eax
je 0x1400ad685
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x40]
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x38]
dec eax
mov dword [rsp + 0x98], eax
mov byte [rsp + 0x7b], 1
lea rcx, [rsp + 0x598]
call fcn.1400703f0
nop
cmp dword [rsp + 0x98], 0
jle 0x1400ad62a
movsxd rax, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x120]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x120]
call fcn.14004a930
inc eax
mov edx, eax
lea rcx, [rsp + 0x598]
call fcn.140070350
movsxd rax, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x120]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x20], 0
mov r9, rax
mov r8, qword [rsp + 0x120]
mov edx, dword [rsp + 0x598]
mov rcx, qword [rsp + 0x5a0]
call fcn.14004a830
cmp dword [rsp + 0x98], 0
jle 0x1400ad646
mov eax, dword [rsp + 0x598]
dec eax
mov dword [rsp + 0x1c8], eax
jmp 0x1400ad651
mov dword [rsp + 0x1c8], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov r9d, dword [rsp + 0x1c8]
mov r8, qword [rsp + 0x5a0]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1400aa370
nop
lea rcx, [rsp + 0x598]
call fcn.1400703c0
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400ad6e8
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x48], 1
mov rax, qword [rsp + 0x58]
add rax, 0x28
mov qword [rsp + 0x428], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x18]
lea eax, [rax*4 + 1]
mov edx, eax
mov rcx, qword [rsp + 0x428]
call fcn.140070cc0
xor r9d, r9d
mov rax, qword [rsp + 0x58]
mov r8, qword [rax + 0x20]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x28]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x30]
call fcn.14004ac10
movzx eax, byte [rsp + 0x7d]
test eax, eax
je 0x1400ad715
movzx eax, byte [rsp + 0x92]
test eax, eax
je 0x1400ad70b
mov eax, dword [rsp + 0x738]
and eax, 0x20
test eax, eax
jne 0x1400ad715
mov byte [rsp + 0xc2], 0
jmp 0x1400ad71d
mov byte [rsp + 0xc2], 1
movzx eax, byte [rsp + 0xc2]
mov byte [rsp + 0xeb], al
movzx eax, byte [rsp + 0xeb]
test eax, eax
je 0x1400adcd6
mov eax, dword [rsp + 0x738]
and eax, 0x801c0
test eax, eax
je 0x1400adc78
mov dword [rsp + 0xf4], 0
mov dword [rsp + 0x130], 0
mov eax, dword [rsp + 0x738]
and eax, 0x40
test eax, eax
je 0x1400ad7a7
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x200
call fcn.1400630e0
movzx eax, al
test eax, eax
je 0x1400ad7a7
mov dword [rsp + 0xf4], 0x40
mov dword [rsp + 0x130], 0x200
jmp 0x1400ad868
mov eax, dword [rsp + 0x738]
and eax, 0x80
test eax, eax
je 0x1400ad7e5
mov dl, 1
mov ecx, 0x203
call fcn.14005f8f0
movzx eax, al
test eax, eax
je 0x1400ad7e5
mov dword [rsp + 0xf4], pe_nt_image_headers64
mov dword [rsp + 0x130], 0x203
jmp 0x1400ad868
mov eax, dword [rsp + 0x738]
and eax, 0x80
test eax, eax
je 0x1400ad820
mov dl, 1
mov ecx, 0x204
call fcn.14005f8f0
movzx eax, al
test eax, eax
je 0x1400ad820
mov dword [rsp + 0xf4], pe_nt_image_headers64
mov dword [rsp + 0x130], 0x204
jmp 0x1400ad868
mov eax, dword [rsp + 0x738]
and eax, 0x80000
test eax, eax
je 0x1400ad84d
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe86]
test eax, eax
je 0x1400ad84d
mov dword [rsp + 0xf4], 0x80000
jmp 0x1400ad868
mov eax, dword [rsp + 0x738]
and eax, 0x100
test eax, eax
je 0x1400ad868
mov dword [rsp + 0xf4], 0x100
cmp dword [rsp + 0xf4], 0
je 0x1400adc78
lea rcx, [rsp + 0x550]
call fcn.1400aa490
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x550], rax
mov eax, dword [rsp + 0xf4]
mov dword [rsp + 0x558], eax
mov eax, dword [rsp + 0x738]
mov dword [rsp + 0x55c], eax
mov rax, qword [rsp + 0x748]
mov qword [rsp + 0x560], rax
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x1400ad8d7
mov rax, qword [rsp + 0x720]
mov qword [rsp + 0x2f0], rax
jmp 0x1400ad8e8
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x2f0], rax
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0x300], rax
mov eax, dword [rsp + 0x130]
mov dword [rsp + 0x56c], eax
mov rax, qword [rsp + 0x300]
mov qword [rsp + 0x570], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x578], eax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x4c]
mov dword [rsp + 0x57c], eax
mov byte [rsp + 0x580], 0
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x160], rax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x54]
mov rcx, qword [rsp + 0x160]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x160]
call fcn.14004ad20
mov dword [rsp + 0x584], eax
mov eax, dword [rsp + 0x584]
mov dword [rsp + 0x2b4], eax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x58]
mov rcx, qword [rsp + 0x160]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x160]
call fcn.14004ad20
mov dword [rsp + 0x588], eax
mov eax, dword [rsp + 0x588]
mov dword [rsp + 0x2b8], eax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x5c]
mov rcx, qword [rsp + 0x160]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x160]
call fcn.14004ad20
mov dword [rsp + 0x58c], eax
mov eax, dword [rsp + 0x58c]
mov dword [rsp + 0x2c4], eax
mov rax, qword [rsp + 0x740]
mov qword [rsp + 0x430], rax
lea rcx, [rsp + 0x550]
call qword [rsp + 0x430]
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x1400ada35
mov rax, qword [rsp + 0x720]
mov qword [rsp + 0x2f8], rax
jmp 0x1400ada46
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x2f8], rax
mov rax, qword [rsp + 0x2f8]
mov qword [rsp + 0x300], rax
movzx eax, byte [rsp + 0x580]
mov byte [rsp + 0x8c], al
mov eax, dword [rsp + 0x2b4]
cmp dword [rsp + 0x584], eax
jne 0x1400ada81
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x1400adabb
movsxd rax, dword [rsp + 0x584]
mov rcx, qword [rsp + 0x570]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x570]
call fcn.14004a930
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x54], eax
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov eax, dword [rsp + 0x2b8]
cmp dword [rsp + 0x588], eax
jne 0x1400adad7
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x1400adb34
mov eax, dword [rsp + 0x584]
cmp dword [rsp + 0x588], eax
jne 0x1400adaf8
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
mov dword [rsp + 0x1cc], eax
jmp 0x1400adb25
movsxd rax, dword [rsp + 0x588]
mov rcx, qword [rsp + 0x570]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x570]
call fcn.14004a930
mov dword [rsp + 0x1cc], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x1cc]
mov dword [rax + 0x58], ecx
mov eax, dword [rsp + 0x2c4]
cmp dword [rsp + 0x58c], eax
jne 0x1400adb50
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x1400adbad
mov eax, dword [rsp + 0x588]
cmp dword [rsp + 0x58c], eax
jne 0x1400adb71
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x58]
mov dword [rsp + 0x1d0], eax
jmp 0x1400adb9e
movsxd rax, dword [rsp + 0x58c]
mov rcx, qword [rsp + 0x570]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x570]
call fcn.14004a930
mov dword [rsp + 0x1d0], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x1d0]
mov dword [rax + 0x5c], ecx
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x1400adc78
mov r8d, dword [rsp + 0x578]
mov rdx, qword [rsp + 0x570]
mov rcx, qword [rsp + 0x58]
call fcn.1400aa820
mov eax, dword [rsp + 0x148]
cmp dword [rsp + 0x578], eax
jle 0x1400adc2d
movzx eax, byte [rsp + 0x91]
test eax, eax
je 0x1400adc2d
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x438], rax
mov eax, dword [rsp + 0x148]
mov ecx, dword [rsp + 0x578]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x58]
add eax, dword [rcx + 0x18]
mov edx, eax
mov rcx, qword [rsp + 0x438]
call fcn.140070350
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8, qword [rsp + 0x570]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x18]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.14004a830
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x578]
mov dword [rax + 0x10], ecx
mov rcx, qword [rsp + 0x58]
call fcn.14009d910
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400adcd6
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov rcx, qword [rsp + 0x720]
sub rcx, rax
movzx edx, byte [rax]
cmp dl, byte [rax + rcx]
jne 0x1400adca8
inc rax
test dl, dl
jne 0x1400adc95
xor eax, eax
jmp 0x1400adcad
sbb eax, eax
or eax, 1
test eax, eax
je 0x1400adcd6
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x98], eax
mov byte [rsp + 0x7b], 1
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x5ab8], ecx
jne 0x1400addaf
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
je 0x1400adda0
call fcn.140054b30
movzx eax, al
test eax, eax
je 0x1400adda0
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400adda0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x5ac8]
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x5ac0]
dec eax
mov dword [rsp + 0x98], eax
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x5ac8]
mov rcx, qword [rsp + 0x720]
sub rcx, rax
movzx edx, byte [rax]
cmp dl, byte [rax + rcx]
jne 0x1400add6f
inc rax
test dl, dl
jne 0x1400add5c
xor eax, eax
jmp 0x1400add74
sbb eax, eax
or eax, 1
test eax, eax
je 0x1400add85
mov dword [rsp + 0x1d4], 1
jmp 0x1400add90
mov dword [rsp + 0x1d4], 0
movzx eax, byte [rsp + 0x7b]
or eax, dword [rsp + 0x1d4]
mov byte [rsp + 0x7b], al
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x5ab8], 0
cmp qword [rsp + 0x120], 0
je 0x1400aded9
movzx eax, byte [rsp + 0x91]
test eax, eax
je 0x1400adea8
lea rcx, [rsp + 0x5c0]
call fcn.1400aa490
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x5c0], rax
mov dword [rsp + 0x5c8], 0x40000
mov eax, dword [rsp + 0x738]
mov dword [rsp + 0x5cc], eax
mov rax, qword [rsp + 0x720]
mov qword [rsp + 0x5e0], rax
mov eax, dword [rsp + 0x98]
mov dword [rsp + 0x5e8], eax
mov eax, dword [rsp + 0x98]
inc eax
mov edx, eax
mov ecx, dword [rsp + 0x728]
call fcn.140072d50
mov dword [rsp + 0x5ec], eax
mov rax, qword [rsp + 0x748]
mov qword [rsp + 0x5d0], rax
mov rax, qword [rsp + 0x740]
mov qword [rsp + 0x320], rax
lea rcx, [rsp + 0x5c0]
call qword [rsp + 0x320]
mov rax, qword [rsp + 0x5e0]
mov qword [rsp + 0x720], rax
mov eax, dword [rsp + 0x5ec]
mov dword [rsp + 0x728], eax
mov eax, dword [rsp + 0x728]
dec eax
mov edx, eax
mov ecx, dword [rsp + 0x5e8]
call fcn.140072c60
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x98]
inc eax
mov edx, dword [rsp + 0x728]
mov ecx, eax
call fcn.140072c60
cdqe
mov r8, rax
mov rdx, qword [rsp + 0x120]
mov rcx, qword [rsp + 0x720]
call fcn.140049470
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x1400adefa
movzx eax, byte [rsp + 0x7a]
test eax, eax
je 0x1400adefa
call fcn.140050700
jmp 0x1400adf1a
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x1400adf1a
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x5e5c], 1
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1400adf98
mov r8d, 1
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x528]
call fcn.14004e7e0
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x44]
movss dword [rsp + 0x2c8], xmm0
movss xmm1, dword [0x14013a504]
mov ecx, 7
call fcn.14004cf90
mov dword [rsp + 0x250], eax
movss xmm0, dword [rsp + 0x2c8]
movss dword [rsp + 0x20], xmm0
mov r9b, 1
mov r8d, dword [rsp + 0x250]
mov rdx, qword [rsp + 0x530]
mov rcx, qword [rsp + 0x528]
call fcn.14004e420
movss xmm0, dword [rsp + 0x52c]
addss xmm0, dword [rsp + 0x51c]
movss xmm1, dword [rsp + 0x528]
addss xmm1, dword [rsp + 0x518]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm1
movss xmm2, dword [rsp + 0x52c]
movss xmm1, dword [rsp + 0x528]
lea rcx, [rsp + 0x650]
call fcn.14000aa60
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400ae016
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x100]
mov qword [rsp + 0x328], rax
lea rax, [rsp + 0x328]
mov qword [rsp + 0x308], rax
jmp 0x1400ae042
mov rax, qword [rsp + 0xe0]
add rax, 0x3c
mov r8, rax
lea rdx, [rsp + 0x528]
lea rcx, [rsp + 0x4c8]
call fcn.140043450
mov qword [rsp + 0x308], rax
mov rax, qword [rsp + 0x308]
mov qword [rsp + 0x330], rax
mov rax, qword [rsp + 0x330]
mov rax, qword [rax]
mov qword [rsp + 0x608], rax
xorps xmm2, xmm2
xorps xmm1, xmm1
lea rcx, [rsp + 0x548]
call fcn.14000aa20
mov dword [rsp + 0x318], 0x200000
movzx eax, byte [rsp + 0xc3]
test eax, eax
je 0x1400ae0a2
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x2d8], rax
jmp 0x1400ae0b2
mov rax, qword [rsp + 0x720]
mov qword [rsp + 0x2d8], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x520], 0
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x1400ae13f
mov rax, qword [rsp + 0x718]
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x718]
mov qword [rsp + 0x3d8], rax
mov qword [rsp + 0x210], 0xffffffffffffffff
inc qword [rsp + 0x210]
mov rax, qword [rsp + 0x3d8]
mov rcx, qword [rsp + 0x210]
cmp byte [rax + rcx], 0
jne 0x1400ae103
mov rax, qword [rsp + 0x210]
mov rcx, qword [rsp + 0x718]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x520], rax
movzx eax, byte [rsp + 0x68]
test eax, eax
jne 0x1400ae155
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x1400af0b7
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x1400ae17d
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x110]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x520], rax
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x158], rax
lea rcx, [rsp + 0x600]
call fcn.1400073e0
lea rcx, [rsp + 0x648]
call fcn.1400073e0
mov qword [rsp + 0x230], 0
mov qword [rsp + 0x238], 0
mov dword [rsp + 0x100], 0xfffffc18
mov dword [rsp + 0x104], 0xfffffc18
mov dword [rsp + 0x9c], 0
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x1400ae234
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x54]
mov rcx, qword [rsp + 0x158]
lea rax, [rcx + rax*2]
mov ecx, 8
imul rcx, rcx, 0
mov qword [rsp + rcx + 0x230], rax
mov eax, 4
imul rax, rax, 0
mov dword [rsp + rax + 0x100], 0xffffffff
mov eax, dword [rsp + 0x9c]
inc eax
mov dword [rsp + 0x9c], eax
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x1400ae295
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.140072c60
cdqe
mov rcx, qword [rsp + 0x158]
lea rax, [rcx + rax*2]
mov ecx, 8
imul rcx, rcx, 1
mov qword [rsp + rcx + 0x230], rax
mov eax, 4
imul rax, rax, 1
mov dword [rsp + rax + 0x100], 0xffffffff
mov eax, dword [rsp + 0x9c]
inc eax
mov dword [rsp + 0x9c], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400ae2ab
mov dword [rsp + 0x1d8], 1
jmp 0x1400ae2b6
mov dword [rsp + 0x1d8], 0
mov eax, dword [rsp + 0x1d8]
mov ecx, dword [rsp + 0x9c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x9c], eax
mov dword [rsp + 0xd8], 0
mov rax, qword [rsp + 0x158]
mov qword [rsp + 0x168], rax
jmp 0x1400ae300
mov rax, qword [rsp + 0x168]
add rax, 2
mov qword [rsp + 0x168], rax
mov rax, qword [rsp + 0x168]
movzx eax, word [rax]
test eax, eax
je 0x1400ae3fe
mov rax, qword [rsp + 0x168]
movzx eax, word [rax]
cmp eax, 0xa
jne 0x1400ae3f9
mov eax, dword [rsp + 0xd8]
inc eax
mov dword [rsp + 0xd8], eax
mov eax, 4
imul rax, rax, 0
cmp dword [rsp + rax + 0x100], 0xffffffff
jne 0x1400ae398
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x230]
cmp qword [rsp + 0x168], rax
jb 0x1400ae398
mov eax, 4
imul rax, rax, 0
mov ecx, dword [rsp + 0xd8]
mov dword [rsp + rax + 0x100], ecx
mov eax, dword [rsp + 0x9c]
dec eax
mov dword [rsp + 0x9c], eax
cmp dword [rsp + 0x9c], 0
jg 0x1400ae398
jmp 0x1400ae3fe
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0x100], 0xffffffff
jne 0x1400ae3f9
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x230]
cmp qword [rsp + 0x168], rax
jb 0x1400ae3f9
mov eax, 4
imul rax, rax, 1
mov ecx, dword [rsp + 0xd8]
mov dword [rsp + rax + 0x100], ecx
mov eax, dword [rsp + 0x9c]
dec eax
mov dword [rsp + 0x9c], eax
cmp dword [rsp + 0x9c], 0
jg 0x1400ae3f9
jmp 0x1400ae3fe
jmp 0x1400ae2ec
mov eax, dword [rsp + 0xd8]
inc eax
mov dword [rsp + 0xd8], eax
mov eax, 4
imul rax, rax, 0
cmp dword [rsp + rax + 0x100], 0xffffffff
jne 0x1400ae438
mov eax, 4
imul rax, rax, 0
mov ecx, dword [rsp + 0xd8]
mov dword [rsp + rax + 0x100], ecx
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0x100], 0xffffffff
jne 0x1400ae462
mov eax, 4
imul rax, rax, 1
mov ecx, dword [rsp + 0xd8]
mov dword [rsp + rax + 0x100], ecx
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x230]
mov qword [rsp + 0x338], rax
mov eax, 8
imul rax, rax, 0
mov rdx, qword [rsp + 0x158]
mov rcx, qword [rsp + rax + 0x230]
call fcn.140049720
mov qword [rsp + 0x340], rax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x338]
mov r8, qword [rsp + 0x340]
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x4d0]
call fcn.1400a6e50
movss xmm0, dword [rax]
movss dword [rsp + 0x600], xmm0
mov eax, 4
imul rax, rax, 0
cvtsi2ss xmm0, dword [rsp + rax + 0x100]
mov rax, qword [rsp + 0x70]
mulss xmm0, dword [rax + 0x3c20]
movss dword [rsp + 0x604], xmm0
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0x100], 0
jl 0x1400ae5d3
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x230]
mov qword [rsp + 0x348], rax
mov eax, 8
imul rax, rax, 1
mov rdx, qword [rsp + 0x158]
mov rcx, qword [rsp + rax + 0x230]
call fcn.140049720
mov qword [rsp + 0x350], rax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x348]
mov r8, qword [rsp + 0x350]
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x460]
call fcn.1400a6e50
movss xmm0, dword [rax]
movss dword [rsp + 0x648], xmm0
mov eax, 4
imul rax, rax, 1
cvtsi2ss xmm0, dword [rsp + rax + 0x100]
mov rax, qword [rsp + 0x70]
mulss xmm0, dword [rax + 0x3c20]
movss dword [rsp + 0x64c], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400ae616
cvtsi2ss xmm0, dword [rsp + 0xd8]
mov rax, qword [rsp + 0x70]
mulss xmm0, dword [rax + 0x3c20]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x518]
lea rcx, [rsp + 0x4a0]
call fcn.14000aa20
mov rax, qword [rax]
mov qword [rsp + 0x548], rax
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x1400ae8a7
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe84]
test eax, eax
je 0x1400ae8a7
mov eax, dword [rsp + 0x738]
and eax, 0x1000
test eax, eax
jne 0x1400ae715
movss xmm0, dword [rsp + 0x518]
mulss xmm0, dword [0x14013a448]
movss dword [rsp + 0x1e0], xmm0
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rsp + 0x518]
subss xmm0, dword [rax + 0x3c]
movss dword [rsp + 0x1dc], xmm0
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rsp + 0x600]
comiss xmm0, dword [rax + 0x50]
jae 0x1400ae6c9
movss xmm0, dword [rsp + 0x600]
subss xmm0, dword [rsp + 0x1e0]
movaps xmm1, xmm0
xorps xmm0, xmm0
call fcn.140072c20
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x58]
movss dword [rax + 0x50], xmm0
jmp 0x1400ae713
movss xmm0, dword [rsp + 0x600]
subss xmm0, dword [rsp + 0x1dc]
mov rax, qword [rsp + 0x58]
comiss xmm0, dword [rax + 0x50]
jb 0x1400ae713
movss xmm0, dword [rsp + 0x600]
subss xmm0, dword [rsp + 0x1dc]
addss xmm0, dword [rsp + 0x1e0]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x58]
movss dword [rax + 0x50], xmm0
jmp 0x1400ae722
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
movss dword [rax + 0x50], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400ae89b
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x604]
subss xmm0, dword [rax + 0x3c20]
comiss xmm0, dword [rsp + 0xa0]
jae 0x1400ae77b
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x604]
subss xmm0, dword [rax + 0x3c20]
movaps xmm1, xmm0
xorps xmm0, xmm0
call fcn.140072c20
movss dword [rsp + 0xa0], xmm0
jmp 0x1400ae7ee
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x14013a598]
movss xmm1, dword [rsp + 0x51c]
subss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [rsp + 0x604]
subss xmm1, xmm0
movaps xmm0, xmm1
comiss xmm0, dword [rsp + 0xa0]
jb 0x1400ae7ee
movss xmm0, dword [rsp + 0x604]
subss xmm0, dword [rsp + 0x51c]
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x40]
mulss xmm1, dword [0x14013a598]
addss xmm0, xmm1
movss dword [rsp + 0xa0], xmm0
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x14013a598]
movss xmm1, dword [rsp + 0x54c]
addss xmm1, xmm0
movaps xmm0, xmm1
subss xmm0, dword [rsp + 0x51c]
xorps xmm1, xmm1
call fcn.140072c20
movss dword [rsp + 0x254], xmm0
movss xmm2, dword [rsp + 0x254]
xorps xmm1, xmm1
movss xmm0, dword [rsp + 0xa0]
call fcn.14002a570
movss dword [rsp + 0xa0], xmm0
mov rax, qword [rsp + 0xd0]
movss xmm0, dword [rax + 0x88]
subss xmm0, dword [rsp + 0xa0]
movss xmm1, dword [rsp + 0x60c]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x60c], xmm0
mov rax, qword [rsp + 0xd0]
movss xmm0, dword [rsp + 0xa0]
movss dword [rax + 0x88], xmm0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 0
xorps xmm2, xmm2
mov rax, qword [rsp + 0x58]
movss xmm1, dword [rax + 0x50]
lea rcx, [rsp + 0x638]
call fcn.14000aa20
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x1400aecda
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.140072c60
cdqe
mov rcx, qword [rsp + 0x158]
lea rax, [rcx + rax*2]
mov qword [rsp + 0x358], rax
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.140072d50
cdqe
mov rcx, qword [rsp + 0x158]
lea rax, [rcx + rax*2]
mov qword [rsp + 0x2a8], rax
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x1400ae940
movss xmm0, dword [0x14013a504]
movss dword [rsp + 0x1e4], xmm0
jmp 0x1400ae951
movss xmm0, dword [0x14013a4ac]
movss dword [rsp + 0x1e4], xmm0
movss xmm1, dword [rsp + 0x1e4]
mov ecx, 0x2f
call fcn.14004cf90
mov dword [rsp + 0x264], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400ae982
xorps xmm0, xmm0
movss dword [rsp + 0x1e8], xmm0
jmp 0x1400ae993
movss xmm0, dword [0x14013a87c]
movss dword [rsp + 0x1e8], xmm0
movss xmm0, dword [rsp + 0x1e8]
movss dword [rsp + 0x260], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400ae9bc
xorps xmm0, xmm0
movss dword [rsp + 0x1ec], xmm0
jmp 0x1400ae9cd
movss xmm0, dword [0x14013a598]
movss dword [rsp + 0x1ec], xmm0
movss xmm0, dword [rsp + 0x1ec]
movss dword [rsp + 0x25c], xmm0
lea r8, [rsp + 0x648]
lea rdx, [rsp + 0x608]
lea rcx, [rsp + 0x498]
call fcn.140043450
lea r8, [rsp + 0x638]
mov rdx, rax
lea rcx, [rsp + 0x618]
call fcn.1400434a0
mov rax, qword [rsp + 0x358]
mov qword [rsp + 0x538], rax
mov rax, qword [rsp + 0x2a8]
cmp qword [rsp + 0x538], rax
jae 0x1400aecda
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x65c]
addss xmm0, dword [rax + 0x3c20]
movss xmm1, dword [rsp + 0x61c]
comiss xmm1, xmm0
jbe 0x1400aea63
jmp 0x1400aecda
movss xmm0, dword [rsp + 0x61c]
comiss xmm0, dword [rsp + 0x654]
jae 0x1400aeac1
mov rax, qword [rsp + 0x2a8]
cmp qword [rsp + 0x538], rax
jae 0x1400aeabc
mov rax, qword [rsp + 0x538]
movzx eax, word [rax]
mov dword [rsp + 0x258], eax
mov rax, qword [rsp + 0x538]
add rax, 2
mov qword [rsp + 0x538], rax
cmp dword [rsp + 0x258], 0xa
jne 0x1400aeaba
jmp 0x1400aeabc
jmp 0x1400aea76
jmp 0x1400aec9b
mov byte [rsp + 0x30], 1
mov qword [rsp + 0x28], 0
lea rax, [rsp + 0x538]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x2a8]
mov r8, qword [rsp + 0x538]
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x590]
call fcn.1400a6e50
movss xmm0, dword [rsp + 0x590]
comiss xmm0, dword [0x14013a3b0]
ja 0x1400aeb4e
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3c18]
mov qword [rsp + 0x360], rax
mov dx, 0x20
mov rcx, qword [rsp + 0x360]
call fcn.14009d6f0
mulss xmm0, dword [0x14013a48c]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
movss dword [rsp + 0x590], xmm0
movss xmm2, dword [rsp + 0x25c]
movss xmm1, dword [rsp + 0x590]
lea rcx, [rsp + 0x490]
call fcn.14000aa20
mov r8, rax
lea rdx, [rsp + 0x618]
lea rcx, [rsp + 0x488]
call fcn.140043450
mov qword [rsp + 0x370], rax
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x260]
subss xmm0, dword [rax + 0x3c20]
movaps xmm2, xmm0
xorps xmm1, xmm1
lea rcx, [rsp + 0x480]
call fcn.14000aa20
mov r8, rax
lea rdx, [rsp + 0x618]
lea rcx, [rsp + 0x478]
call fcn.140043450
mov qword [rsp + 0x378], rax
mov r8, qword [rsp + 0x370]
mov rdx, qword [rsp + 0x378]
lea rcx, [rsp + 0x678]
call fcn.140044290
lea rdx, [rsp + 0x650]
lea rcx, [rsp + 0x4e8]
call fcn.1400442d0
lea rdx, [rsp + 0x4e8]
lea rcx, [rsp + 0x678]
call fcn.140044940
lea rdx, [rsp + 0x650]
lea rcx, [rsp + 0x4f8]
call fcn.1400442d0
lea rdx, [rsp + 0x4f8]
lea rcx, [rsp + 0x678]
call fcn.140044610
movzx eax, al
test eax, eax
je 0x1400aec9b
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x298]
mov qword [rsp + 0x380], rax
mov dword [rsp + 0x28], 0
xorps xmm0, xmm0
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x264]
lea r8, [rsp + 0x680]
lea rdx, [rsp + 0x678]
mov rcx, qword [rsp + 0x380]
call fcn.140086590
movss xmm0, dword [rsp + 0x608]
subss xmm0, dword [rsp + 0x638]
movss dword [rsp + 0x618], xmm0
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x61c]
addss xmm0, dword [rax + 0x3c20]
movss dword [rsp + 0x61c], xmm0
jmp 0x1400aea24
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1400aed05
mov rax, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x520]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x1400aee3f
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x1400aed1b
mov dword [rsp + 0x1f0], 1
jmp 0x1400aed26
mov dword [rsp + 0x1f0], 0
movss xmm1, dword [0x14013a504]
mov ecx, dword [rsp + 0x1f0]
call fcn.14004cf90
mov dword [rsp + 0x268], eax
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x298]
mov qword [rsp + 0x3a0], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400aed6f
mov qword [rsp + 0x2e0], 0
jmp 0x1400aed7f
lea rax, [rsp + 0x650]
mov qword [rsp + 0x2e0], rax
mov rax, qword [rsp + 0x520]
mov qword [rsp + 0x388], rax
lea r8, [rsp + 0x638]
lea rdx, [rsp + 0x608]
lea rcx, [rsp + 0x470]
call fcn.1400434a0
mov qword [rsp + 0x390], rax
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x3c20]
movss dword [rsp + 0x26c], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3c18]
mov qword [rsp + 0x398], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov rax, qword [rsp + 0x388]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x268]
mov dword [rsp + 0x20], eax
mov r9, qword [rsp + 0x390]
movss xmm2, dword [rsp + 0x26c]
mov rdx, qword [rsp + 0x398]
mov rcx, qword [rsp + 0x3a0]
call fcn.1400872c0
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x1400af0b2
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x80]
movss xmm0, dword [rax + 0xe80]
addss xmm0, dword [rcx + 0x10]
mov rax, qword [rsp + 0x58]
movss dword [rax + 0xe80], xmm0
mov rax, qword [rsp + 0x70]
movzx eax, byte [rax + 0x7b]
test eax, eax
je 0x1400aeec1
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
comiss xmm0, dword [rax + 0xe80]
jae 0x1400aeec1
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 0xe80]
movss xmm1, dword [0x14013a514]
call int.140119fa8
comiss xmm0, dword [0x14013a4d4]
jbe 0x1400aeec1
mov dword [rsp + 0x1f4], 0
jmp 0x1400aeecc
mov dword [rsp + 0x1f4], 1
movzx eax, byte [rsp + 0x1f4]
mov byte [rsp + 0xec], al
lea r8, [rsp + 0x600]
lea rdx, [rsp + 0x608]
lea rcx, [rsp + 0x468]
call fcn.140043450
lea r8, [rsp + 0x638]
mov rdx, rax
lea rcx, [rsp + 0x458]
call fcn.1400434a0
mov rdx, rax
lea rcx, [rsp + 0x540]
call fcn.140044020
movss xmm0, dword [rsp + 0x544]
subss xmm0, dword [0x14013a530]
movss xmm1, dword [rsp + 0x540]
addss xmm1, dword [0x14013a504]
mov rax, qword [rsp + 0x70]
movss xmm2, dword [rsp + 0x544]
subss xmm2, dword [rax + 0x3c20]
addss xmm2, dword [0x14013a48c]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm1
movss xmm1, dword [rsp + 0x540]
lea rcx, [rsp + 0x698]
call fcn.140044340
movzx eax, byte [rsp + 0xec]
test eax, eax
je 0x1400af03d
lea rdx, [rsp + 0x650]
lea rcx, [rsp + 0x508]
call fcn.1400442d0
lea rdx, [rsp + 0x508]
lea rcx, [rsp + 0x698]
call fcn.140044610
movzx eax, al
test eax, eax
je 0x1400af03d
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x298]
mov qword [rsp + 0x3b0], rax
movss xmm1, dword [0x14013a504]
xor ecx, ecx
call fcn.14004cf90
mov dword [rsp + 0x270], eax
lea rdx, [rsp + 0x450]
lea rcx, [rsp + 0x698]
call fcn.1400444a0
mov qword [rsp + 0x3a8], rax
movss xmm0, dword [0x14013a504]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x270]
mov r8, qword [rsp + 0x3a8]
lea rdx, [rsp + 0x698]
mov rcx, qword [rsp + 0x3b0]
call fcn.140086320
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400af0b2
mov rax, qword [rsp + 0x70]
mov byte [rax + 0x5be8], 1
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x544]
subss xmm0, dword [rax + 0x3c20]
movss xmm1, dword [rsp + 0x540]
subss xmm1, dword [0x14013a504]
movaps xmm2, xmm0
lea rcx, [rsp + 0x448]
call fcn.14000aa20
mov rax, qword [rax]
mov rcx, qword [rsp + 0x70]
mov qword [rcx + 0x5bec], rax
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x70]
movss xmm0, dword [rcx + 0x3c20]
movss dword [rax + 0x5bf4], xmm0
jmp 0x1400af2b9
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400af10f
lea rdx, [rsp + 0x520]
mov rcx, qword [rsp + 0x110]
call fcn.1400a6d90
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x70]
mulss xmm0, dword [rax + 0x3c20]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x518]
lea rcx, [rsp + 0x440]
call fcn.14000aa20
mov rax, qword [rax]
mov qword [rsp + 0x548], rax
jmp 0x1400af1ab
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x1400af14a
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x1400af14a
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x110]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x520], rax
jmp 0x1400af1ab
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x1400af1ab
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x3b8], rax
mov qword [rsp + 0x220], 0xffffffffffffffff
inc qword [rsp + 0x220]
mov rax, qword [rsp + 0x3b8]
mov rcx, qword [rsp + 0x220]
cmp byte [rax + rcx], 0
jne 0x1400af16f
mov rax, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x110]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x520], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1400af1d6
mov rax, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x520]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x1400af2b9
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x1400af1ec
mov dword [rsp + 0x1f8], 1
jmp 0x1400af1f7
mov dword [rsp + 0x1f8], 0
movss xmm1, dword [0x14013a504]
mov ecx, dword [rsp + 0x1f8]
call fcn.14004cf90
mov dword [rsp + 0x274], eax
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x298]
mov qword [rsp + 0x3c0], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400af240
mov qword [rsp + 0x2e8], 0
jmp 0x1400af250
lea rax, [rsp + 0x650]
mov qword [rsp + 0x2e8], rax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov rax, qword [rsp + 0x520]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x274]
mov dword [rsp + 0x20], eax
lea r9, [rsp + 0x608]
mov rax, qword [rsp + 0x70]
movss xmm2, dword [rax + 0x3c20]
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax + 0x3c18]
mov rcx, qword [rsp + 0x3c0]
call fcn.1400872c0
movzx eax, byte [rsp + 0x7e]
test eax, eax
je 0x1400af2d0
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x1400af2d0
call fcn.14005dd60
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400af3c0
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rsp + 0x54c]
addss xmm0, dword [rax + 0x40]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x548]
lea rcx, [rsp + 0x4d8]
call fcn.14000aa20
mov rcx, rax
call fcn.1400a1dd0
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4778]
mov dword [rsp + 0x278], eax
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4778]
or eax, 0x401
mov rcx, qword [rsp + 0x70]
mov dword [rcx + 0x4778], eax
call fcn.1400550a0
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x479c]
and eax, 0x80
mov ecx, dword [rsp + 0x6b0]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x6b0], eax
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x278]
mov dword [rax + 0x4778], ecx
call fcn.140064570
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x4794], 0
jne 0x1400af3c0
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
mov dword [rax + 0x4794], ecx
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x6ac]
mov dword [rax + 0x4798], ecx
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x6b0]
mov dword [rax + 0x479c], ecx
mov rax, qword [rsp + 0x70]
movzx eax, byte [rax + 0x5ca0]
test eax, eax
je 0x1400af412
movzx eax, byte [rsp + 0x7e]
test eax, eax
je 0x1400af3e2
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x1400af412
lea rdx, [0x1401317a8]
lea rcx, [0x1401317a4]
call fcn.14006e020
mov r8, qword [rsp + 0x520]
mov rdx, qword [rsp + 0x110]
lea rcx, [rsp + 0x608]
call fcn.14006dca0
movss xmm0, dword [rsp + 0x630]
comiss xmm0, dword [0x14013a3b0]
jbe 0x1400af476
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rsp + 0x52c]
addss xmm0, dword [rax + 0x40]
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rsp + 0x530]
addss xmm1, dword [rax + 0x54]
movaps xmm2, xmm0
lea rcx, [rsp + 0x4e0]
call fcn.14000aa20
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rsp + 0x710]
mov rcx, qword [rax]
call fcn.14004d650
movzx eax, byte [rsp + 0x7b]
test eax, eax
je 0x1400af498
mov eax, dword [rsp + 0x738]
and eax, 0x8000000
test eax, eax
jne 0x1400af498
mov ecx, dword [rsp + 0x64]
call fcn.1400507f0
mov eax, dword [rsp + 0x738]
and eax, 0x20
test eax, eax
je 0x1400af4b2
movzx eax, byte [rsp + 0x92]
jmp 0x1400af4b7
movzx eax, byte [rsp + 0x7b]
mov rcx, qword [rsp + 0x6e8]
xor rcx, rsp
call fcn.140118980
add rsp, 0x6f8
pop rdi
pop rsi
ret