Function at 0x14008b570
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 [0x1400f4010]
xor rax, rsp
mov qword [rsp + 0x6e8], rax
call fcn.140029120
mov qword [rsp + 0x118], rax
mov rax, qword [rsp + 0x118]
movzx eax, byte [rax + 0xbb]
test eax, eax
je 0x14008b5c6
xor al, al
jmp 0x14008fef2
mov rax, qword [0x14010bc48]
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 0x14008b618
mov byte [rsp + 0xc4], 1
jmp 0x14008b620
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 0x14008b646
mov byte [rsp + 0xc5], 1
jmp 0x14008b64e
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 0x14008b674
mov byte [rsp + 0xc6], 1
jmp 0x14008b67c
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 0x14008b6a2
mov byte [rsp + 0xc7], 1
jmp 0x14008b6aa
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 0x14008b6d3
mov byte [rsp + 0xc8], 1
jmp 0x14008b6db
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 0x14008b700
call fcn.140046390
xor r8d, r8d
mov rdx, qword [rsp + 0x710]
mov rcx, qword [rsp + 0x118]
call fcn.140032180
mov dword [rsp + 0x64], eax
vmovss xmm0, dword [0x1400eb2ac]
vmovss dword [rsp + 0x20], xmm0
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rsp + 0x710]
lea rcx, [rsp + 0x630]
call fcn.1400366e0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008b76e
mov rax, qword [rsp + 0x70]
vmovss xmm0, dword [rax + 0x3c20]
vmulss xmm0, xmm0, dword [0x1400eb12c]
vmovss dword [rsp + 0x200], xmm0
jmp 0x14008b780
vmovss xmm0, dword [rsp + 0x634]
vmovss dword [rsp + 0x200], xmm0
mov rax, qword [rsp + 0xe0]
vmovss xmm0, dword [rax + 0x40]
vmulss xmm0, xmm0, dword [0x1400eb0a0]
vmovss xmm1, dword [rsp + 0x200]
vaddss xmm0, xmm1, xmm0
vmovss dword [rsp + 0x284], xmm0
call fcn.140045fe0
vmovss 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
vmovss xmm3, dword [rsp + 0x284]
vmovss xmm2, dword [rsp + 0x280]
mov rdx, qword [rsp + 0x3d0]
lea rcx, [rsp + 0x640]
call fcn.1400460b0
vmovss xmm0, dword [rsp + 0x644]
vmovss dword [rsp + 0x27c], xmm0
vmovss xmm0, dword [rsp + 0x630]
vcomiss xmm0, dword [0x1400ead2c]
jbe 0x14008b849
mov rax, qword [rsp + 0xe0]
vmovss xmm0, dword [rax + 0x54]
vaddss xmm0, xmm0, dword [rsp + 0x630]
vmovss dword [rsp + 0x204], xmm0
jmp 0x14008b856
vxorps xmm0, xmm0, xmm0
vmovss dword [rsp + 0x204], xmm0
vmovss xmm0, dword [rsp + 0x640]
vaddss xmm0, xmm0, dword [rsp + 0x204]
vmovss xmm2, dword [rsp + 0x27c]
vmovups xmm1, xmm0
lea rcx, [rsp + 0x690]
call fcn.140006dc0
mov rax, qword [rsp + 0x118]
add rax, 0x100
lea r8, [rsp + 0x640]
mov rdx, rax
lea rcx, [rsp + 0x4a8]
call fcn.140025410
mov rcx, qword [rsp + 0x118]
add rcx, 0x100
mov r8, rax
mov rdx, rcx
lea rcx, [rsp + 0x528]
call fcn.140026300
lea r8, [rsp + 0x690]
lea rdx, [rsp + 0x528]
lea rcx, [rsp + 0x4b0]
call fcn.140025410
mov r8, rax
lea rdx, [rsp + 0x528]
lea rcx, [rsp + 0x668]
call fcn.140026300
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.140026f90
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008bb73
mov rax, qword [rsp + 0x118]
mov rax, qword [rax + 0x100]
mov qword [rsp + 0x688], rax
mov rax, qword [rsp + 0xe0]
vmovss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x668]
call fcn.14007a5a0
mov r9d, 0x400
lea r8, [rsp + 0x528]
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x668]
call fcn.140045930
movzx eax, al
test eax, eax
jne 0x14008b9a7
call fcn.140046590
xor al, al
jmp 0x14008fef2
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.14002f2e0
mov rax, qword [rsp + 0xe0]
vmovss xmm1, dword [rax + 0x44]
mov ecx, 7
call fcn.14002f470
mov rax, qword [rsp + 0xe0]
vmovss xmm1, dword [rax + 0x48]
mov ecx, 8
call fcn.14002f470
vxorps xmm2, xmm2, xmm2
vxorps xmm1, xmm1, xmm1
lea rcx, [rsp + 0x4b8]
call fcn.140006dc0
mov rdx, rax
mov ecx, 2
call fcn.14002f520
lea rdx, [rsp + 0x4c0]
lea rcx, [rsp + 0x528]
call fcn.140026480
mov dword [rsp + 0x20], 4
mov r9b, 1
mov r8, rax
mov edx, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x710]
call fcn.140036e60
mov byte [rsp + 0xed], al
mov ecx, 3
call fcn.14002f5d0
mov ecx, 1
call fcn.14002f3a0
movzx eax, byte [rsp + 0xed]
test eax, eax
jne 0x14008bad0
call fcn.1400371d0
call fcn.140046590
xor al, al
jmp 0x14008fef2
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.140025590
mov rax, qword [rsp + 0xd0]
vmovss xmm0, dword [rsp + 0x518]
vsubss xmm0, xmm0, dword [rax + 0xac]
vmovss dword [rsp + 0x518], xmm0
jmp 0x14008bbdc
mov rax, qword [rsp + 0xe0]
vmovss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x668]
call fcn.14007a5a0
mov eax, dword [rsp + 0x738]
and eax, 0x10000000
test eax, eax
jne 0x14008bbca
mov r9d, 0x400
lea r8, [rsp + 0x528]
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x668]
call fcn.140045930
movzx eax, al
test eax, eax
jne 0x14008bbca
xor al, al
jmp 0x14008fef2
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.140032da0
mov byte [rsp + 0x89], al
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x14008bc0f
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x4a98], 1
mov ecx, dword [rsp + 0x64]
call fcn.14007e4d0
mov qword [rsp + 0x58], rax
mov eax, dword [rsp + 0x14c]
and eax, 0x100
test eax, eax
je 0x14008bc37
mov byte [rsp + 0xc9], 1
jmp 0x14008bc3f
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 0x14008bc9a
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x48e8], ecx
jne 0x14008bc9a
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x48f4]
and eax, 1
test eax, eax
jne 0x14008bc90
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x490c], 2
jne 0x14008bc9a
mov byte [rsp + 0xca], 1
jmp 0x14008bca2
mov byte [rsp + 0xca], 0
movzx eax, byte [rsp + 0xca]
mov byte [rsp + 0x8f], al
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x14008bce4
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0x3740]
test eax, eax
je 0x14008bce4
mov byte [rsp + 0xcb], 1
jmp 0x14008bcec
mov byte [rsp + 0xcb], 0
movzx eax, byte [rsp + 0xcb]
mov byte [rsp + 0x8d], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008bd43
cmp qword [rsp + 0x58], 0
je 0x14008bd43
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x3f58], 0
jne 0x14008bd43
mov edx, 1
mov rcx, qword [rsp + 0xd0]
call fcn.140080950
mov rcx, qword [rsp + 0x70]
cmp dword [rcx + 0x3f88], eax
jne 0x14008bd43
mov byte [rsp + 0xa4], 1
jmp 0x14008bd4b
mov byte [rsp + 0xa4], 0
movzx eax, byte [rsp + 0xa4]
mov byte [rsp + 0xee], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008bd94
cmp qword [rsp + 0x58], 0
je 0x14008bd94
mov edx, 1
mov rcx, qword [rsp + 0xd0]
call fcn.140080950
mov rcx, qword [rsp + 0x70]
cmp dword [rcx + 0x3f58], eax
jne 0x14008bd94
mov byte [rsp + 0xa5], 1
jmp 0x14008bd9c
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 0x14008bdd9
mov rax, qword [rsp + 0xd0]
vmovss xmm0, dword [rax + 0x88]
vmovss dword [rsp + 0x208], xmm0
jmp 0x14008bdea
vmovss xmm0, dword [0x1400eb280]
vmovss dword [rsp + 0x208], xmm0
vmovss xmm0, dword [rsp + 0x208]
vmovss dword [rsp + 0xa0], xmm0
cmp qword [rsp + 0x58], 0
je 0x14008be41
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14008be1a
mov dword [rsp + 0x20c], 1
jmp 0x14008be25
mov dword [rsp + 0x20c], 0
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x6b]
cmp eax, dword [rsp + 0x20c]
je 0x14008be41
mov byte [rsp + 0xa6], 1
jmp 0x14008be49
mov byte [rsp + 0xa6], 0
movzx eax, byte [rsp + 0xa6]
mov byte [rsp + 0xa9], al
movzx eax, byte [rsp + 0x8d]
test eax, eax
jne 0x14008be92
movzx eax, byte [rsp + 0xee]
test eax, eax
jne 0x14008be92
movzx eax, byte [rsp + 0x8f]
test eax, eax
jne 0x14008be92
movzx eax, byte [rsp + 0xaa]
test eax, eax
jne 0x14008be92
mov byte [rsp + 0xa7], 0
jmp 0x14008be9a
mov byte [rsp + 0xa7], 1
movzx eax, byte [rsp + 0xa7]
mov byte [rsp + 0x8e], al
movzx eax, byte [rsp + 0x8e]
test eax, eax
jne 0x14008becb
movzx eax, byte [rsp + 0xac]
test eax, eax
jne 0x14008becb
mov byte [rsp + 0xa8], 0
jmp 0x14008bed3
mov byte [rsp + 0xa8], 1
movzx eax, byte [rsp + 0xa8]
mov byte [rsp + 0xab], al
movzx eax, byte [rsp + 0xab]
test eax, eax
je 0x14008beff
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x14008bf0f
movzx eax, byte [rsp + 0xa9]
test eax, eax
je 0x14008c212
mov rax, qword [rsp + 0x70]
add rax, 0x4c28
mov qword [rsp + 0x58], rax
mov rcx, qword [rsp + 0x58]
call fcn.14007e240
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 8]
call fcn.14008b4a0
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 0x14008bf52
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.140052dc0
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 0x14008bff0
movzx eax, byte [rsp + 0xa9]
test eax, eax
jne 0x14008bff0
mov dword [rsp + 0x170], 1
jmp 0x14008bffb
mov dword [rsp + 0x170], 0
movzx eax, byte [rsp + 0x170]
mov byte [rsp + 0x88], al
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x14008c062
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x134]
cmp dword [rax + 0x10], ecx
jne 0x14008c05a
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x48]
test eax, eax
je 0x14008c062
movsxd rax, dword [rsp + 0x134]
mov r8, rax
mov rdx, qword [rsp + 0x720]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x30]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
je 0x14008c062
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.140052430
mov rax, qword [rsp + 0x58]
add rax, 0x28
mov qword [rsp + 0x3f8], rax
xor edx, edx
mov rcx, qword [rsp + 0x3f8]
call fcn.140052dc0
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.14002c8d0
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 0x14008c137
mov rcx, qword [rsp + 0x58]
call fcn.14007e260
jmp 0x14008c17e
mov rax, qword [rsp + 0x58]
vxorps xmm0, xmm0, xmm0
vmovss dword [rax + 0x50], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14008c15b
mov dword [rsp + 0x174], 1
jmp 0x14008c166
mov dword [rsp + 0x174], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov edx, dword [rsp + 0x174]
mov rcx, rax
call fcn.14008ad30
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14008c1f9
mov eax, dword [rsp + 0x738]
and eax, 0x10
test eax, eax
je 0x14008c19a
mov byte [rsp + 0x7c], 1
movzx eax, byte [rsp + 0x8f]
test eax, eax
je 0x14008c1c9
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x14008c1c4
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x48f4]
and eax, 4
test eax, eax
jne 0x14008c1c9
mov byte [rsp + 0x7c], 1
movzx eax, byte [rsp + 0xaa]
test eax, eax
jne 0x14008c1f4
movzx eax, byte [rsp + 0x8d]
test eax, eax
je 0x14008c1f9
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x14008c1f9
mov byte [rsp + 0x7c], 1
mov eax, dword [rsp + 0x738]
and eax, 0x2000
test eax, eax
je 0x14008c212
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 0x14008c270
movzx eax, byte [rsp + 0x8e]
test eax, eax
je 0x14008c270
mov rdx, qword [rsp + 0x118]
mov ecx, dword [rsp + 0x64]
call fcn.140032590
mov rdx, qword [rsp + 0x118]
mov ecx, dword [rsp + 0x64]
call fcn.1400496a0
xor edx, edx
mov rcx, qword [rsp + 0x118]
call fcn.14003f890
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x14008c375
movzx eax, byte [rsp + 0x8d]
test eax, eax
je 0x14008c2a2
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x281
call fcn.140045190
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 0x14008c2d4
mov eax, dword [rsp + 0x738]
and eax, 0x80
test eax, eax
je 0x14008c2ed
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.140045190
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x208
call fcn.140045190
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008c33a
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x205
call fcn.140045190
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x206
call fcn.140045190
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x14008c354
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x4000
call fcn.140045190
mov eax, dword [rsp + 0x738]
and eax, 0x440
test eax, eax
je 0x14008c375
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x200
call fcn.140041970
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x14008c393
cmp qword [rsp + 0x58], 0
jne 0x14008c393
call fcn.140032870
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x14008c3de
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0x3740]
test eax, eax
je 0x14008c3de
movzx eax, byte [rsp + 0xab]
test eax, eax
jne 0x14008c3de
movzx eax, byte [rsp + 0x8e]
test eax, eax
jne 0x14008c3de
mov byte [rsp + 0x7a], 1
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
je 0x14008c410
cmp qword [rsp + 0x58], 0
je 0x14008c403
movzx eax, byte [rsp + 0xac]
test eax, eax
jne 0x14008c410
mov dword [rsp + 0x178], 0
jmp 0x14008c41b
mov dword [rsp + 0x178], 1
movzx eax, byte [rsp + 0x178]
mov byte [rsp + 0x68], al
cmp qword [rsp + 0x58], 0
je 0x14008c465
mov rcx, qword [rsp + 0x58]
call fcn.14007e2d0
movzx eax, al
test eax, eax
jne 0x14008c449
movzx eax, byte [rsp + 0x7c]
test eax, eax
je 0x14008c465
xor eax, eax
test eax, eax
jne 0x14008c458
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x14008c465
mov dword [rsp + 0x17c], 1
jmp 0x14008c470
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 0x14008c573
cmp qword [rsp + 0x58], 0
je 0x14008c573
movzx eax, byte [rsp + 0x68]
test eax, eax
jne 0x14008c4b8
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x14008c573
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.140052430
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.14002c8d0
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.14007e260
movzx eax, byte [rsp + 0x61]
mov dword [rsp + 0x2a0], eax
mov rcx, qword [rsp + 0x58]
call fcn.14007e2d0
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 0x14008c596
movzx eax, byte [rsp + 0x61]
test eax, eax
jne 0x14008c596
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x14008c5be
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14008c5be
cmp qword [rsp + 0x58], 0
je 0x14008c5be
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x48]
test eax, eax
je 0x14008c5be
mov byte [rsp + 0xad], 1
jmp 0x14008c5c6
mov byte [rsp + 0xad], 0
movzx eax, byte [rsp + 0xad]
mov byte [rsp + 0xc3], al
cmp qword [rsp + 0x718], 0
je 0x14008c632
movzx eax, byte [rsp + 0xc3]
test eax, eax
je 0x14008c5ff
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x2d0], rax
jmp 0x14008c60f
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 0x14008c632
mov byte [rsp + 0xae], 1
jmp 0x14008c63a
mov byte [rsp + 0xae], 0
movzx eax, byte [rsp + 0xae]
mov byte [rsp + 0x78], al
movzx eax, byte [rsp + 0x7e]
test eax, eax
je 0x14008c76f
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x14008c76f
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.140071b40
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]
vmovss xmm0, dword [rax + 0x14]
vmovss dword [rcx + 0x14], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3c18]
mov rcx, qword [rsp + 0x140]
vmovss xmm0, dword [rax + 0x64]
vmovss dword [rcx + 0x64], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3c18]
mov rcx, qword [rsp + 0x140]
vmovss xmm0, dword [rax + 0x68]
vmovss dword [rcx + 0x68], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3c18]
mov rcx, qword [rsp + 0x140]
vmovss xmm0, dword [rax + 0x6c]
vmovss 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]
vmovss xmm0, dword [rcx + 4]
vmovss dword [rax + 0x10], xmm0
mov rcx, qword [rsp + 0x140]
call fcn.14003fe60
mov dword [rsp + 0x148], 0
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x14008ceb0
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 0x14008c7f5
mov dword [rsp + 0x180], 1
jmp 0x14008c800
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]
vmovss xmm0, dword [rax + 0xe00]
vsubss xmm0, xmm0, dword [rsp + 0x528]
mov rax, qword [rsp + 0xe0]
vsubss xmm0, xmm0, dword [rax + 0x3c]
mov rax, qword [rsp + 0x58]
vaddss xmm0, xmm0, dword [rax + 0x50]
vmovss dword [rsp + 0x128], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008c880
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0xd0]
vmovss xmm0, dword [rax + 0xe04]
vsubss xmm0, xmm0, dword [rcx + 0x104]
vmovss dword [rsp + 0x184], xmm0
jmp 0x14008c89e
mov rax, qword [rsp + 0x70]
vmovss xmm0, dword [rax + 0x3c20]
vmulss xmm0, xmm0, dword [0x1400eaee8]
vmovss dword [rsp + 0x184], xmm0
vmovss xmm0, dword [rsp + 0x184]
vmovss dword [rsp + 0x138], xmm0
movzx eax, byte [rsp + 0x7c]
test eax, eax
je 0x14008c8d4
mov rcx, qword [rsp + 0x58]
call fcn.14007e340
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe85], 1
jmp 0x14008cc6c
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x14008cb20
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, word [rcx + rax + 0x374a]
cmp eax, 2
jl 0x14008cb20
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1d]
test eax, eax
jne 0x14008cb20
mov rax, qword [rsp + 0x58]
add rax, 0x54
vmovss xmm3, dword [rsp + 0x138]
vmovss xmm2, dword [rsp + 0x128]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1400886b0
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 0x14008ca5e
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x54], 0
je 0x14008c9b2
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
dec eax
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140087a90
movzx eax, ax
cmp eax, 0xa
je 0x14008c9b2
mov byte [rsp + 0xaf], 0
jmp 0x14008c9ba
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 0x14008c9e7
movzx eax, byte [rsp + 0xef]
test eax, eax
jne 0x14008c9f6
mov edx, 0x20000c
mov rcx, qword [rsp + 0x58]
call fcn.14008ae60
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
cmp dword [rax + 0x58], ecx
jne 0x14008ca19
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov rcx, rax
call fcn.140088d70
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x54]
mov rcx, qword [rsp + 0x58]
call fcn.140088000
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.140088a60
jmp 0x14008cb11
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x54]
mov rcx, qword [rsp + 0x58]
call fcn.140087a90
movzx eax, ax
cmp eax, 0xa
jne 0x14008ca82
mov byte [rsp + 0xb0], 1
jmp 0x14008ca8a
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.14008ae60
mov edx, 0x600005
mov rcx, qword [rsp + 0x58]
call fcn.14008ae60
mov edx, 0x600001
mov rcx, qword [rsp + 0x58]
call fcn.14008ae60
movzx eax, byte [rsp + 0xf0]
test eax, eax
jne 0x14008cb05
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008cb05
mov rax, qword [rsp + 0x58]
add rax, 0x5c
mov rcx, qword [rsp + 0x58]
add rcx, 0x58
mov rdx, rax
call fcn.1400a6430
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.14007e240
jmp 0x14008cc6c
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0x3740]
test eax, eax
je 0x14008cbd5
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
jne 0x14008cbd5
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x14008cbd0
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1d]
test eax, eax
je 0x14008cb9e
mov rax, qword [rsp + 0x58]
add rax, 0x54
vmovss xmm3, dword [rsp + 0x138]
vmovss xmm2, dword [rsp + 0x128]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.140088760
jmp 0x14008cbc6
mov rax, qword [rsp + 0x58]
add rax, 0x54
vmovss xmm3, dword [rsp + 0x138]
vmovss xmm2, dword [rsp + 0x128]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1400886b0
mov rcx, qword [rsp + 0x58]
call fcn.14007e240
jmp 0x14008cc6c
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0xe08]
test eax, eax
je 0x14008cc6c
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
jne 0x14008cc6c
mov rax, qword [rsp + 0x80]
vxorps xmm0, xmm0, xmm0
vucomiss xmm0, dword [rax + 0xf0]
jne 0x14008cc2e
mov rax, qword [rsp + 0x80]
vxorps xmm0, xmm0, xmm0
vucomiss xmm0, dword [rax + 0xf4]
je 0x14008cc6c
mov rax, qword [rsp + 0x58]
add rax, 0x54
vmovss xmm3, dword [rsp + 0x138]
vmovss xmm2, dword [rsp + 0x128]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.140088760
mov rcx, qword [rsp + 0x58]
call fcn.14007e240
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
je 0x14008cca5
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0xe08]
test eax, eax
jne 0x14008cca5
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe85], 0
mov eax, dword [rsp + 0x738]
and eax, 0x400
test eax, eax
je 0x14008cd25
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x200
call fcn.140045320
movzx eax, al
test eax, eax
je 0x14008cd25
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14008cd25
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.14008aed0
movzx eax, al
test eax, eax
je 0x14008cd25
mov edx, dword [rsp + 0x620]
mov rcx, qword [rsp + 0x58]
call fcn.14008ae60
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x14008cd4b
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1e]
test eax, eax
je 0x14008cd71
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x14008cd67
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1f]
test eax, eax
jne 0x14008cd71
mov byte [rsp + 0xb1], 0
jmp 0x14008cd79
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 0x14008ceb0
movzx eax, byte [rsp + 0xf1]
test eax, eax
jne 0x14008ce8b
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14008ce8b
movzx eax, byte [rsp + 0x8f]
test eax, eax
jne 0x14008ce8b
mov dword [rsp + 0x12c], 0
jmp 0x14008cde7
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 0x14008ce8b
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.140052480
movzx eax, word [rax]
mov dword [rsp + 0x610], eax
cmp dword [rsp + 0x610], 9
jne 0x14008ce42
jmp 0x14008cdd7
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.14008aed0
movzx eax, al
test eax, eax
je 0x14008ce86
mov edx, dword [rsp + 0x610]
mov rcx, qword [rsp + 0x58]
call fcn.14008ae60
jmp 0x14008cdd7
mov rax, qword [rsp + 0x80]
add rax, 0x37b8
mov qword [rsp + 0x418], rax
xor edx, edx
mov rcx, qword [rsp + 0x418]
call fcn.140052430
mov byte [rsp + 0x7d], 0
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x14008ded0
mov rax, qword [rsp + 0x70]
movzx eax, byte [rax + 0x3f64]
test eax, eax
jne 0x14008ded0
movzx eax, byte [rsp + 0x7a]
test eax, eax
jne 0x14008ded0
mov rax, qword [rsp + 0xe0]
vmovss xmm0, dword [rsp + 0x51c]
vsubss xmm0, xmm0, dword [rax + 0x40]
mov rax, qword [rsp + 0x70]
vdivss xmm0, xmm0, dword [rax + 0x3c20]
vcvttss2si eax, xmm0
mov edx, 1
mov ecx, eax
call fcn.140054e70
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 0x14008cf54
mov dword [rsp + 0x1fc], 0x400000
jmp 0x14008cf5f
mov dword [rsp + 0x1fc], 0
mov eax, dword [rsp + 0x1fc]
mov dword [rsp + 0x94], eax
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x14008cf8e
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1e]
mov byte [rsp + 0xb2], al
jmp 0x14008cfa4
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 0x14008cfff
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1f]
test eax, eax
je 0x14008cfff
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
jne 0x14008cfff
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1e]
test eax, eax
jne 0x14008cfff
mov byte [rsp + 0xb3], 1
jmp 0x14008d007
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.140045320
movzx eax, al
test eax, eax
jne 0x14008d057
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x220a
call fcn.140045320
movzx eax, al
test eax, eax
je 0x14008d08d
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14008d08d
movzx eax, byte [rsp + 0x7e]
test eax, eax
jne 0x14008d08d
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008d083
mov rcx, qword [rsp + 0x58]
call fcn.14007e2d0
movzx eax, al
test eax, eax
je 0x14008d08d
mov byte [rsp + 0xb4], 1
jmp 0x14008d095
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.140045320
movzx eax, al
test eax, eax
jne 0x14008d0d4
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x1209
call fcn.140045320
movzx eax, al
test eax, eax
je 0x14008d101
movzx eax, byte [rsp + 0x7e]
test eax, eax
jne 0x14008d101
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008d0f7
mov rcx, qword [rsp + 0x58]
call fcn.14007e2d0
movzx eax, al
test eax, eax
je 0x14008d101
mov byte [rsp + 0xb5], 1
jmp 0x14008d109
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.140045320
movzx eax, al
test eax, eax
jne 0x14008d14e
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x2209
call fcn.140045320
movzx eax, al
test eax, eax
je 0x14008d161
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14008d161
mov byte [rsp + 0xb6], 1
jmp 0x14008d169
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.140045320
movzx eax, al
test eax, eax
je 0x14008d1b2
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14008d1b2
movzx eax, byte [rsp + 0xb8]
test eax, eax
je 0x14008d1b2
mov byte [rsp + 0xb7], 1
jmp 0x14008d1ba
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.140045320
movzx eax, al
test eax, eax
jne 0x14008d208
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x14008d227
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x2a3b
call fcn.140045320
movzx eax, al
test eax, eax
je 0x14008d227
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14008d227
movzx eax, byte [rsp + 0xb8]
test eax, eax
je 0x14008d227
mov byte [rsp + 0xb9], 1
jmp 0x14008d22f
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.140045320
mov byte [rsp + 0xe8], al
mov rax, qword [rsp + 0x80]
mov eax, dword [rax]
and eax, 2
test eax, eax
je 0x14008d283
mov rax, qword [rsp + 0x80]
mov eax, dword [rax + 4]
and eax, 1
test eax, eax
je 0x14008d283
mov byte [rsp + 0xba], 1
jmp 0x14008d28b
mov byte [rsp + 0xba], 0
movzx eax, byte [rsp + 0xba]
mov byte [rsp + 0xbd], al
mov dl, 1
mov ecx, 0x20d
call fcn.140041af0
movzx eax, al
test eax, eax
jne 0x14008d2ca
mov dl, 1
mov ecx, 0x267
call fcn.140041af0
movzx eax, al
test eax, eax
jne 0x14008d2ca
mov byte [rsp + 0xbb], 0
jmp 0x14008d2d2
mov byte [rsp + 0xbb], 1
movzx eax, byte [rsp + 0xbb]
mov byte [rsp + 0xf8], al
movzx eax, byte [rsp + 0xbd]
test eax, eax
je 0x14008d31d
xor edx, edx
mov ecx, 0x26e
call fcn.140041af0
movzx eax, al
test eax, eax
jne 0x14008d313
xor edx, edx
mov ecx, 0x26d
call fcn.140041af0
movzx eax, al
test eax, eax
je 0x14008d31d
mov byte [rsp + 0xbc], 1
jmp 0x14008d325
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.140045320
movzx eax, al
test eax, eax
jne 0x14008d380
movzx eax, byte [rsp + 0xbd]
test eax, eax
je 0x14008d376
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x26c
call fcn.140045320
movzx eax, al
test eax, eax
jne 0x14008d380
mov byte [rsp + 0xbe], 0
jmp 0x14008d388
mov byte [rsp + 0xbe], 1
movzx eax, byte [rsp + 0xbe]
mov byte [rsp + 0xf9], al
mov dl, 1
mov ecx, 0x201
call fcn.140041af0
movzx eax, al
test eax, eax
je 0x14008d418
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x14008d3c3
mov dword [rsp + 0x18c], 0x200004
jmp 0x14008d3f5
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x14008d3dc
mov dword [rsp + 0x188], 0x20000c
jmp 0x14008d3e7
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.14008ae60
jmp 0x14008de88
mov dl, 1
mov ecx, 0x202
call fcn.140041af0
movzx eax, al
test eax, eax
je 0x14008d499
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x14008d444
mov dword [rsp + 0x194], 0x200005
jmp 0x14008d476
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x14008d45d
mov dword [rsp + 0x190], 0x20000d
jmp 0x14008d468
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.14008ae60
jmp 0x14008de88
mov dl, 1
mov ecx, 0x203
call fcn.140041af0
movzx eax, al
test eax, eax
je 0x14008d550
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008d550
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x14008d509
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x70]
vmovss xmm0, dword [rax + 0x88]
vsubss xmm0, xmm0, dword [rcx + 0x3c20]
vxorps xmm1, xmm1, xmm1
call fcn.140054d40
vmovups xmm1, xmm0
mov rcx, qword [rsp + 0xd0]
call fcn.140047650
jmp 0x14008d54b
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x14008d522
mov dword [rsp + 0x198], 0x200006
jmp 0x14008d52d
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.14008ae60
jmp 0x14008de88
mov dl, 1
mov ecx, 0x204
call fcn.140041af0
movzx eax, al
test eax, eax
je 0x14008d62c
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008d62c
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x14008d5e5
call fcn.1400475d0
vmovss dword [rsp + 0x2bc], xmm0
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x70]
vmovss xmm0, dword [rax + 0x88]
vaddss xmm0, xmm0, dword [rcx + 0x3c20]
vmovss dword [rsp + 0x2c0], xmm0
vmovss xmm1, dword [rsp + 0x2bc]
vmovss xmm0, dword [rsp + 0x2c0]
call fcn.140054d00
vmovups xmm1, xmm0
mov rcx, qword [rsp + 0xd0]
call fcn.140047650
jmp 0x14008d627
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x14008d5fe
mov dword [rsp + 0x19c], 0x200007
jmp 0x14008d609
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.14008ae60
jmp 0x14008de88
mov dl, 1
mov ecx, 0x205
call fcn.140041af0
movzx eax, al
test eax, eax
je 0x14008d691
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008d691
mov eax, dword [rsp + 0x94]
or eax, 0x20000e
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14008ae60
vcvtsi2ss xmm0, xmm0, dword [rsp + 0x154]
mov rax, qword [rsp + 0x70]
vmulss xmm0, xmm0, dword [rax + 0x3c20]
vmovss xmm1, dword [rsp + 0xa0]
vsubss xmm0, xmm1, xmm0
vmovss dword [rsp + 0xa0], xmm0
jmp 0x14008de88
mov dl, 1
mov ecx, 0x206
call fcn.140041af0
movzx eax, al
test eax, eax
je 0x14008d6f6
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008d6f6
mov eax, dword [rsp + 0x94]
or eax, 0x20000f
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14008ae60
vcvtsi2ss xmm0, xmm0, dword [rsp + 0x154]
mov rax, qword [rsp + 0x70]
vmulss xmm0, xmm0, dword [rax + 0x3c20]
vmovss xmm1, dword [rsp + 0xa0]
vaddss xmm0, xmm1, xmm0
vmovss dword [rsp + 0xa0], xmm0
jmp 0x14008de88
mov dl, 1
mov ecx, 0x207
call fcn.140041af0
movzx eax, al
test eax, eax
je 0x14008d75a
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x14008d731
mov eax, dword [rsp + 0x94]
or eax, 0x200006
mov dword [rsp + 0x1a0], eax
jmp 0x14008d744
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.14008ae60
jmp 0x14008de88
mov dl, 1
mov ecx, 0x208
call fcn.140041af0
movzx eax, al
test eax, eax
je 0x14008d7be
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x14008d795
mov eax, dword [rsp + 0x94]
or eax, 0x200007
mov dword [rsp + 0x1a4], eax
jmp 0x14008d7a8
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.14008ae60
jmp 0x14008de88
mov dl, 1
mov ecx, 0x20a
call fcn.140041af0
movzx eax, al
test eax, eax
je 0x14008d82f
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14008d82f
movzx eax, byte [rsp + 0x90]
test eax, eax
jne 0x14008d82f
mov rcx, qword [rsp + 0x58]
call fcn.14007e2d0
movzx eax, al
test eax, eax
jne 0x14008d812
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x14008d812
mov edx, 0x60000d
mov rcx, qword [rsp + 0x58]
call fcn.14008ae60
mov eax, dword [rsp + 0x94]
or eax, 0x200008
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14008ae60
jmp 0x14008de88
mov dl, 1
mov ecx, 0x20b
call fcn.140041af0
movzx eax, al
test eax, eax
je 0x14008d8ef
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14008d8ef
mov rcx, qword [rsp + 0x58]
call fcn.14007e2d0
movzx eax, al
test eax, eax
jne 0x14008d8d2
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x14008d881
mov edx, 0x60000c
mov rcx, qword [rsp + 0x58]
call fcn.14008ae60
jmp 0x14008d8d2
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x14008d8d2
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1f]
test eax, eax
je 0x14008d8d2
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1e]
test eax, eax
jne 0x14008d8d2
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
jne 0x14008d8d2
mov edx, 0x600004
mov rcx, qword [rsp + 0x58]
call fcn.14008ae60
mov eax, dword [rsp + 0x94]
or eax, 0x200009
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14008ae60
jmp 0x14008de88
movzx eax, byte [rsp + 0xf8]
test eax, eax
jne 0x14008d90b
movzx eax, byte [rsp + 0xbf]
test eax, eax
je 0x14008da26
mov eax, dword [rsp + 0x738]
and eax, 0x800
test eax, eax
je 0x14008d928
mov dword [rsp + 0x1a8], 1
jmp 0x14008d933
mov dword [rsp + 0x1a8], 0
movzx eax, byte [rsp + 0x1a8]
mov byte [rsp + 0xc0], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008d995
movzx eax, byte [rsp + 0xbf]
test eax, eax
jne 0x14008d995
movzx eax, byte [rsp + 0xc0]
test eax, eax
je 0x14008d976
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x14008d995
movzx eax, byte [rsp + 0xc0]
test eax, eax
jne 0x14008d9c9
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe1c]
test eax, eax
je 0x14008d9c9
mov byte [rsp + 0x92], 1
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x74]
test eax, eax
je 0x14008d9c2
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14008d9c2
mov rcx, qword [rsp + 0x58]
call fcn.14007e340
jmp 0x14008d9c7
mov byte [rsp + 0x7a], 1
jmp 0x14008da21
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14008da21
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.14008aed0
movzx eax, al
test eax, eax
je 0x14008da21
mov edx, dword [rsp + 0x624]
mov rcx, qword [rsp + 0x58]
call fcn.14008ae60
jmp 0x14008de88
movzx eax, byte [rsp + 0xf9]
test eax, eax
je 0x14008da8a
mov eax, dword [rsp + 0x738]
and eax, 0x100000
test eax, eax
je 0x14008da69
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x10], 0
jle 0x14008da54
mov byte [rsp + 0x7d], 1
jmp 0x14008da67
mov byte [rsp + 0x61], 0
movzx eax, byte [rsp + 0x61]
mov byte [rsp + 0x68], al
mov byte [rsp + 0x7a], 1
jmp 0x14008da85
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 0x14008de88
movzx eax, byte [rsp + 0xc1]
test eax, eax
jne 0x14008daa2
movzx eax, byte [rsp + 0xfa]
test eax, eax
je 0x14008dae6
movzx eax, byte [rsp + 0xc1]
test eax, eax
je 0x14008dabb
mov dword [rsp + 0x1ac], 0x20000a
jmp 0x14008dac6
mov dword [rsp + 0x1ac], 0x20000b
mov edx, dword [rsp + 0x1ac]
mov rcx, qword [rsp + 0x58]
call fcn.14008ae60
mov rcx, qword [rsp + 0x58]
call fcn.14007e310
jmp 0x14008de88
movzx eax, byte [rsp + 0xe8]
test eax, eax
je 0x14008db0d
mov rcx, qword [rsp + 0x58]
call fcn.14007e340
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
jmp 0x14008de88
movzx eax, byte [rsp + 0x90]
test eax, eax
jne 0x14008db29
movzx eax, byte [rsp + 0xe9]
test eax, eax
je 0x14008dcd2
mov rax, qword [rsp + 0x80]
cmp qword [rax + 0xb0], 0
je 0x14008dc84
mov rcx, qword [rsp + 0x58]
call fcn.14007e2d0
movzx eax, al
test eax, eax
je 0x14008db6e
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.140054d80
mov dword [rsp + 0x1b0], eax
jmp 0x14008db79
mov dword [rsp + 0x1b0], 0
mov eax, dword [rsp + 0x1b0]
mov dword [rsp + 0x1bc], eax
mov rcx, qword [rsp + 0x58]
call fcn.14007e2d0
movzx eax, al
test eax, eax
je 0x14008dbb6
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.140054e70
mov dword [rsp + 0x1b4], eax
jmp 0x14008dbc5
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.14002cdc0
inc eax
mov dword [rsp + 0x1c0], eax
movsxd rax, dword [rsp + 0x1c0]
mov rcx, rax
call fcn.1400331c0
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.14002ccb0
mov rcx, qword [rsp + 0x290]
call fcn.1400332e0
mov rcx, qword [rsp + 0x290]
call fcn.140033220
movzx eax, byte [rsp + 0x90]
test eax, eax
je 0x14008dccd
mov rcx, qword [rsp + 0x58]
call fcn.14007e2d0
movzx eax, al
test eax, eax
jne 0x14008dcab
mov rcx, qword [rsp + 0x58]
call fcn.14007e340
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.140088dc0
jmp 0x14008de88
movzx eax, byte [rsp + 0xea]
test eax, eax
je 0x14008de88
call fcn.140033280
mov qword [rsp + 0x298], rax
cmp qword [rsp + 0x298], 0
je 0x14008de88
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 0x14008dd1a
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.1400331c0
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 0x14008de29
xor r8d, r8d
mov rdx, qword [rsp + 0x228]
lea rcx, [rsp + 0x628]
call fcn.14002c440
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.14008aed0
movzx eax, al
test eax, eax
jne 0x14008ddf8
jmp 0x14008dd80
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 0x14008dd80
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 0x14008de7b
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.14008ad50
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rcx, qword [rsp + 0x218]
call fcn.140033220
mov rcx, qword [rsp + 0x58]
call fcn.14007e2d0
movzx eax, al
test eax, eax
je 0x14008deb5
xor eax, eax
test eax, eax
jne 0x14008dea8
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x14008deb5
mov dword [rsp + 0x1c4], 1
jmp 0x14008dec0
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 0x14008e6fa
movzx eax, byte [rsp + 0x7d]
test eax, eax
je 0x14008e0a9
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14008e0a9
mov eax, dword [rsp + 0x738]
and eax, 0x100000
test eax, eax
je 0x14008df66
lea rax, [0x1400ca3a7]
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.14008ad90
jmp 0x14008e0a9
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 0x14008df8d
inc rax
test dl, dl
jne 0x14008df7a
xor eax, eax
jmp 0x14008df92
sbb eax, eax
or eax, 1
test eax, eax
je 0x14008e0a9
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.1400524d0
nop
cmp dword [rsp + 0x98], 0
jle 0x14008e04e
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.14002c9d0
inc eax
mov edx, eax
lea rcx, [rsp + 0x598]
call fcn.140052430
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.14002c8d0
cmp dword [rsp + 0x98], 0
jle 0x14008e06a
mov eax, dword [rsp + 0x598]
dec eax
mov dword [rsp + 0x1c8], eax
jmp 0x14008e075
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.14008ad90
nop
lea rcx, [rsp + 0x598]
call fcn.1400524a0
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14008e10c
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.140052dc0
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.14002ccb0
movzx eax, byte [rsp + 0x7d]
test eax, eax
je 0x14008e139
movzx eax, byte [rsp + 0x92]
test eax, eax
je 0x14008e12f
mov eax, dword [rsp + 0x738]
and eax, 0x20
test eax, eax
jne 0x14008e139
mov byte [rsp + 0xc2], 0
jmp 0x14008e141
mov byte [rsp + 0xc2], 1
movzx eax, byte [rsp + 0xc2]
mov byte [rsp + 0xeb], al
movzx eax, byte [rsp + 0xeb]
test eax, eax
je 0x14008e6fa
mov eax, dword [rsp + 0x738]
and eax, 0x801c0
test eax, eax
je 0x14008e69c
mov dword [rsp + 0xf4], 0
mov dword [rsp + 0x130], 0
mov eax, dword [rsp + 0x738]
and eax, 0x40
test eax, eax
je 0x14008e1cb
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x200
call fcn.140045320
movzx eax, al
test eax, eax
je 0x14008e1cb
mov dword [rsp + 0xf4], 0x40
mov dword [rsp + 0x130], 0x200
jmp 0x14008e28c
mov eax, dword [rsp + 0x738]
and eax, 0x80
test eax, eax
je 0x14008e209
mov dl, 1
mov ecx, 0x203
call fcn.140041af0
movzx eax, al
test eax, eax
je 0x14008e209
mov dword [rsp + 0xf4], 0x80
mov dword [rsp + 0x130], 0x203
jmp 0x14008e28c
mov eax, dword [rsp + 0x738]
and eax, 0x80
test eax, eax
je 0x14008e244
mov dl, 1
mov ecx, 0x204
call fcn.140041af0
movzx eax, al
test eax, eax
je 0x14008e244
mov dword [rsp + 0xf4], 0x80
mov dword [rsp + 0x130], 0x204
jmp 0x14008e28c
mov eax, dword [rsp + 0x738]
and eax, 0x80000
test eax, eax
je 0x14008e271
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe86]
test eax, eax
je 0x14008e271
mov dword [rsp + 0xf4], 0x80000
jmp 0x14008e28c
mov eax, dword [rsp + 0x738]
and eax, 0x100
test eax, eax
je 0x14008e28c
mov dword [rsp + 0xf4], pe_nt_image_headers64
cmp dword [rsp + 0xf4], 0
je 0x14008e69c
lea rcx, [rsp + 0x550]
call fcn.14008aeb0
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 0x14008e2fb
mov rax, qword [rsp + 0x720]
mov qword [rsp + 0x2f0], rax
jmp 0x14008e30c
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.14002cdc0
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.14002cdc0
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.14002cdc0
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 0x14008e459
mov rax, qword [rsp + 0x720]
mov qword [rsp + 0x2f8], rax
jmp 0x14008e46a
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 0x14008e4a5
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x14008e4df
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.14002c9d0
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 0x14008e4fb
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x14008e558
mov eax, dword [rsp + 0x584]
cmp dword [rsp + 0x588], eax
jne 0x14008e51c
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
mov dword [rsp + 0x1cc], eax
jmp 0x14008e549
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.14002c9d0
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 0x14008e574
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x14008e5d1
mov eax, dword [rsp + 0x588]
cmp dword [rsp + 0x58c], eax
jne 0x14008e595
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x58]
mov dword [rsp + 0x1d0], eax
jmp 0x14008e5c2
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.14002c9d0
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 0x14008e69c
mov r8d, dword [rsp + 0x578]
mov rdx, qword [rsp + 0x570]
mov rcx, qword [rsp + 0x58]
call fcn.14008b240
mov eax, dword [rsp + 0x148]
cmp dword [rsp + 0x578], eax
jle 0x14008e651
movzx eax, byte [rsp + 0x91]
test eax, eax
je 0x14008e651
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.140052430
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.14002c8d0
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.14007e240
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14008e6fa
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 0x14008e6cc
inc rax
test dl, dl
jne 0x14008e6b9
xor eax, eax
jmp 0x14008e6d1
sbb eax, eax
or eax, 1
test eax, eax
je 0x14008e6fa
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 0x14008e7d3
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
je 0x14008e7c4
call fcn.140036cc0
movzx eax, al
test eax, eax
je 0x14008e7c4
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14008e7c4
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 0x14008e793
inc rax
test dl, dl
jne 0x14008e780
xor eax, eax
jmp 0x14008e798
sbb eax, eax
or eax, 1
test eax, eax
je 0x14008e7a9
mov dword [rsp + 0x1d4], 1
jmp 0x14008e7b4
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 0x14008e8fd
movzx eax, byte [rsp + 0x91]
test eax, eax
je 0x14008e8cc
lea rcx, [rsp + 0x5c0]
call fcn.14008aeb0
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.140054e70
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.140054d80
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x98]
inc eax
mov edx, dword [rsp + 0x728]
mov ecx, eax
call fcn.140054d80
cdqe
mov r8, rax
mov rdx, qword [rsp + 0x120]
mov rcx, qword [rsp + 0x720]
call fcn.14002b510
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x14008e91e
movzx eax, byte [rsp + 0x7a]
test eax, eax
je 0x14008e91e
call fcn.140032870
jmp 0x14008e93e
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x14008e93e
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x5e5c], 1
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14008e9bc
mov r8d, 1
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x528]
call fcn.140030940
mov rax, qword [rsp + 0xe0]
vmovss xmm0, dword [rax + 0x44]
vmovss dword [rsp + 0x2c8], xmm0
vmovss xmm1, dword [0x1400eb010]
mov ecx, 7
call fcn.14002f0d0
mov dword [rsp + 0x250], eax
vmovss xmm0, dword [rsp + 0x2c8]
vmovss dword [rsp + 0x20], xmm0
mov r9b, 1
mov r8d, dword [rsp + 0x250]
mov rdx, qword [rsp + 0x530]
mov rcx, qword [rsp + 0x528]
call fcn.140030580
vmovss xmm0, dword [rsp + 0x52c]
vaddss xmm0, xmm0, dword [rsp + 0x51c]
vmovss xmm1, dword [rsp + 0x528]
vaddss xmm1, xmm1, dword [rsp + 0x518]
vmovss dword [rsp + 0x20], xmm0
vmovups xmm3, xmm1
vmovss xmm2, dword [rsp + 0x52c]
vmovss xmm1, dword [rsp + 0x528]
lea rcx, [rsp + 0x650]
call fcn.140006e00
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008ea3b
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 0x14008ea67
mov rax, qword [rsp + 0xe0]
add rax, 0x3c
mov r8, rax
lea rdx, [rsp + 0x528]
lea rcx, [rsp + 0x4c8]
call fcn.140025410
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
vxorps xmm2, xmm2, xmm2
vxorps xmm1, xmm1, xmm1
lea rcx, [rsp + 0x548]
call fcn.140006dc0
mov dword [rsp + 0x318], 0x200000
movzx eax, byte [rsp + 0xc3]
test eax, eax
je 0x14008eac9
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x2d8], rax
jmp 0x14008ead9
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 0x14008eb66
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 0x14008eb2a
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 0x14008eb7c
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x14008faed
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x14008eba4
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.1400032b0
lea rcx, [rsp + 0x648]
call fcn.1400032b0
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 0x14008ec5b
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 0x14008ecbc
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.140054d80
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 0x14008ecd2
mov dword [rsp + 0x1d8], 1
jmp 0x14008ecdd
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 0x14008ed27
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 0x14008ee25
mov rax, qword [rsp + 0x168]
movzx eax, word [rax]
cmp eax, 0xa
jne 0x14008ee20
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 0x14008edbf
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x230]
cmp qword [rsp + 0x168], rax
jb 0x14008edbf
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 0x14008edbf
jmp 0x14008ee25
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0x100], 0xffffffff
jne 0x14008ee20
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x230]
cmp qword [rsp + 0x168], rax
jb 0x14008ee20
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 0x14008ee20
jmp 0x14008ee25
jmp 0x14008ed13
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 0x14008ee5f
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 0x14008ee89
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.14002b7c0
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.140087870
vmovss xmm0, dword [rax]
vmovss dword [rsp + 0x600], xmm0
mov eax, 4
imul rax, rax, 0
vcvtsi2ss xmm0, xmm0, dword [rsp + rax + 0x100]
mov rax, qword [rsp + 0x70]
vmulss xmm0, xmm0, dword [rax + 0x3c20]
vmovss dword [rsp + 0x604], xmm0
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0x100], 0
jl 0x14008effa
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.14002b7c0
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.140087870
vmovss xmm0, dword [rax]
vmovss dword [rsp + 0x648], xmm0
mov eax, 4
imul rax, rax, 1
vcvtsi2ss xmm0, xmm0, dword [rsp + rax + 0x100]
mov rax, qword [rsp + 0x70]
vmulss xmm0, xmm0, dword [rax + 0x3c20]
vmovss dword [rsp + 0x64c], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008f03e
vcvtsi2ss xmm0, xmm0, dword [rsp + 0xd8]
mov rax, qword [rsp + 0x70]
vmulss xmm0, xmm0, dword [rax + 0x3c20]
vmovups xmm2, xmm0
vmovss xmm1, dword [rsp + 0x518]
lea rcx, [rsp + 0x4a0]
call fcn.140006dc0
mov rax, qword [rax]
mov qword [rsp + 0x548], rax
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x14008f2ce
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe84]
test eax, eax
je 0x14008f2ce
mov eax, dword [rsp + 0x738]
and eax, 0x1000
test eax, eax
jne 0x14008f141
vmovss xmm0, dword [rsp + 0x518]
vmulss xmm0, xmm0, dword [0x1400eae30]
vmovss dword [rsp + 0x1e0], xmm0
mov rax, qword [rsp + 0xe0]
vmovss xmm0, dword [rsp + 0x518]
vsubss xmm0, xmm0, dword [rax + 0x3c]
vmovss dword [rsp + 0x1dc], xmm0
mov rax, qword [rsp + 0x58]
vmovss xmm0, dword [rsp + 0x600]
vcomiss xmm0, dword [rax + 0x50]
jae 0x14008f0f4
vmovss xmm0, dword [rsp + 0x600]
vsubss xmm0, xmm0, dword [rsp + 0x1e0]
vmovups xmm1, xmm0
vxorps xmm0, xmm0, xmm0
call fcn.140054d40
vcvttss2si eax, xmm0
vcvtsi2ss xmm0, xmm0, eax
mov rax, qword [rsp + 0x58]
vmovss dword [rax + 0x50], xmm0
jmp 0x14008f13f
vmovss xmm0, dword [rsp + 0x600]
vsubss xmm0, xmm0, dword [rsp + 0x1dc]
mov rax, qword [rsp + 0x58]
vcomiss xmm0, dword [rax + 0x50]
jb 0x14008f13f
vmovss xmm0, dword [rsp + 0x600]
vsubss xmm0, xmm0, dword [rsp + 0x1dc]
vaddss xmm0, xmm0, dword [rsp + 0x1e0]
vcvttss2si eax, xmm0
vcvtsi2ss xmm0, xmm0, eax
mov rax, qword [rsp + 0x58]
vmovss dword [rax + 0x50], xmm0
jmp 0x14008f14f
mov rax, qword [rsp + 0x58]
vxorps xmm0, xmm0, xmm0
vmovss dword [rax + 0x50], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008f2c2
mov rax, qword [rsp + 0x70]
vmovss xmm0, dword [rsp + 0x604]
vsubss xmm0, xmm0, dword [rax + 0x3c20]
vcomiss xmm0, dword [rsp + 0xa0]
jae 0x14008f1ab
mov rax, qword [rsp + 0x70]
vmovss xmm0, dword [rsp + 0x604]
vsubss xmm0, xmm0, dword [rax + 0x3c20]
vmovups xmm1, xmm0
vxorps xmm0, xmm0, xmm0
call fcn.140054d40
vmovss dword [rsp + 0xa0], xmm0
jmp 0x14008f219
mov rax, qword [rsp + 0xe0]
vmovss xmm0, dword [rax + 0x40]
vmulss xmm0, xmm0, dword [0x1400eb0a0]
vmovss xmm1, dword [rsp + 0x51c]
vsubss xmm0, xmm1, xmm0
vmovss xmm1, dword [rsp + 0x604]
vsubss xmm0, xmm1, xmm0
vcomiss xmm0, dword [rsp + 0xa0]
jb 0x14008f219
vmovss xmm0, dword [rsp + 0x604]
vsubss xmm0, xmm0, dword [rsp + 0x51c]
mov rax, qword [rsp + 0xe0]
vmovss xmm1, dword [rax + 0x40]
vmulss xmm1, xmm1, dword [0x1400eb0a0]
vaddss xmm0, xmm0, xmm1
vmovss dword [rsp + 0xa0], xmm0
mov rax, qword [rsp + 0xe0]
vmovss xmm0, dword [rax + 0x40]
vmulss xmm0, xmm0, dword [0x1400eb0a0]
vmovss xmm1, dword [rsp + 0x54c]
vaddss xmm0, xmm1, xmm0
vsubss xmm0, xmm0, dword [rsp + 0x51c]
vxorps xmm1, xmm1, xmm1
call fcn.140054d40
vmovss dword [rsp + 0x254], xmm0
vmovss xmm2, dword [rsp + 0x254]
vxorps xmm1, xmm1, xmm1
vmovss xmm0, dword [rsp + 0xa0]
call fcn.140054fc0
vmovss dword [rsp + 0xa0], xmm0
mov rax, qword [rsp + 0xd0]
vmovss xmm0, dword [rax + 0x88]
vsubss xmm0, xmm0, dword [rsp + 0xa0]
vmovss xmm1, dword [rsp + 0x60c]
vaddss xmm0, xmm1, xmm0
vmovss dword [rsp + 0x60c], xmm0
mov rax, qword [rsp + 0xd0]
vmovss xmm0, dword [rsp + 0xa0]
vmovss dword [rax + 0x88], xmm0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 0
vxorps xmm2, xmm2, xmm2
mov rax, qword [rsp + 0x58]
vmovss xmm1, dword [rax + 0x50]
lea rcx, [rsp + 0x638]
call fcn.140006dc0
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x14008f70a
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.140054d80
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.140054e70
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 0x14008f368
vmovss xmm0, dword [0x1400eb010]
vmovss dword [rsp + 0x1e4], xmm0
jmp 0x14008f379
vmovss xmm0, dword [0x1400eaf34]
vmovss dword [rsp + 0x1e4], xmm0
vmovss xmm1, dword [rsp + 0x1e4]
mov ecx, 0x2f
call fcn.14002f0d0
mov dword [rsp + 0x264], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008f3ab
vxorps xmm0, xmm0, xmm0
vmovss dword [rsp + 0x1e8], xmm0
jmp 0x14008f3bc
vmovss xmm0, dword [0x1400eb2ac]
vmovss dword [rsp + 0x1e8], xmm0
vmovss xmm0, dword [rsp + 0x1e8]
vmovss dword [rsp + 0x260], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008f3e6
vxorps xmm0, xmm0, xmm0
vmovss dword [rsp + 0x1ec], xmm0
jmp 0x14008f3f7
vmovss xmm0, dword [0x1400eb0a0]
vmovss dword [rsp + 0x1ec], xmm0
vmovss xmm0, dword [rsp + 0x1ec]
vmovss dword [rsp + 0x25c], xmm0
lea r8, [rsp + 0x648]
lea rdx, [rsp + 0x608]
lea rcx, [rsp + 0x498]
call fcn.140025410
lea r8, [rsp + 0x638]
mov rdx, rax
lea rcx, [rsp + 0x618]
call fcn.140025470
mov rax, qword [rsp + 0x358]
mov qword [rsp + 0x538], rax
mov rax, qword [rsp + 0x2a8]
cmp qword [rsp + 0x538], rax
jae 0x14008f70a
mov rax, qword [rsp + 0x70]
vmovss xmm0, dword [rsp + 0x65c]
vaddss xmm0, xmm0, dword [rax + 0x3c20]
vmovss xmm1, dword [rsp + 0x61c]
vcomiss xmm1, xmm0
jbe 0x14008f48e
jmp 0x14008f70a
vmovss xmm0, dword [rsp + 0x61c]
vcomiss xmm0, dword [rsp + 0x654]
jae 0x14008f4ed
mov rax, qword [rsp + 0x2a8]
cmp qword [rsp + 0x538], rax
jae 0x14008f4e8
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 0x14008f4e6
jmp 0x14008f4e8
jmp 0x14008f4a2
jmp 0x14008f6cb
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.140087870
vmovss xmm0, dword [rsp + 0x590]
vcomiss xmm0, dword [0x1400ead2c]
ja 0x14008f57b
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.14007dfa0
vmulss xmm0, xmm0, dword [0x1400eaee8]
vcvttss2si eax, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [rsp + 0x590], xmm0
vmovss xmm2, dword [rsp + 0x25c]
vmovss xmm1, dword [rsp + 0x590]
lea rcx, [rsp + 0x490]
call fcn.140006dc0
mov r8, rax
lea rdx, [rsp + 0x618]
lea rcx, [rsp + 0x488]
call fcn.140025410
mov qword [rsp + 0x370], rax
mov rax, qword [rsp + 0x70]
vmovss xmm0, dword [rsp + 0x260]
vsubss xmm0, xmm0, dword [rax + 0x3c20]
vmovups xmm2, xmm0
vxorps xmm1, xmm1, xmm1
lea rcx, [rsp + 0x480]
call fcn.140006dc0
mov r8, rax
lea rdx, [rsp + 0x618]
lea rcx, [rsp + 0x478]
call fcn.140025410
mov qword [rsp + 0x378], rax
mov r8, qword [rsp + 0x370]
mov rdx, qword [rsp + 0x378]
lea rcx, [rsp + 0x678]
call fcn.140026300
lea rdx, [rsp + 0x650]
lea rcx, [rsp + 0x4e8]
call fcn.140026340
lea rdx, [rsp + 0x4e8]
lea rcx, [rsp + 0x678]
call fcn.1400269b0
lea rdx, [rsp + 0x650]
lea rcx, [rsp + 0x4f8]
call fcn.140026340
lea rdx, [rsp + 0x4f8]
lea rcx, [rsp + 0x678]
call fcn.140026680
movzx eax, al
test eax, eax
je 0x14008f6cb
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x298]
mov qword [rsp + 0x380], rax
mov dword [rsp + 0x28], 0
vxorps xmm0, xmm0, xmm0
vmovss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x264]
lea r8, [rsp + 0x680]
lea rdx, [rsp + 0x678]
mov rcx, qword [rsp + 0x380]
call fcn.140067e70
vmovss xmm0, dword [rsp + 0x608]
vsubss xmm0, xmm0, dword [rsp + 0x638]
vmovss dword [rsp + 0x618], xmm0
mov rax, qword [rsp + 0x70]
vmovss xmm0, dword [rsp + 0x61c]
vaddss xmm0, xmm0, dword [rax + 0x3c20]
vmovss dword [rsp + 0x61c], xmm0
jmp 0x14008f44e
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14008f735
mov rax, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x520]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x14008f870
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x14008f74b
mov dword [rsp + 0x1f0], 1
jmp 0x14008f756
mov dword [rsp + 0x1f0], 0
vmovss xmm1, dword [0x1400eb010]
mov ecx, dword [rsp + 0x1f0]
call fcn.14002f0d0
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 0x14008f79f
mov qword [rsp + 0x2e0], 0
jmp 0x14008f7af
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.140025470
mov qword [rsp + 0x390], rax
mov rax, qword [rsp + 0x70]
vmovss xmm0, dword [rax + 0x3c20]
vmovss 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
vxorps xmm0, xmm0, xmm0
vmovss 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]
vmovss xmm2, dword [rsp + 0x26c]
mov rdx, qword [rsp + 0x398]
mov rcx, qword [rsp + 0x3a0]
call fcn.140068510
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x14008fae8
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x80]
vmovss xmm0, dword [rax + 0xe80]
vaddss xmm0, xmm0, dword [rcx + 0x10]
mov rax, qword [rsp + 0x58]
vmovss dword [rax + 0xe80], xmm0
mov rax, qword [rsp + 0x70]
movzx eax, byte [rax + 0x7b]
test eax, eax
je 0x14008f8f5
mov rax, qword [rsp + 0x58]
vxorps xmm0, xmm0, xmm0
vcomiss xmm0, dword [rax + 0xe80]
jae 0x14008f8f5
mov rax, qword [rsp + 0x58]
vmovss xmm0, dword [rax + 0xe80]
vmovss xmm1, dword [0x1400eb024]
call sub.api_ms_win_crt_math_l1_1_0.dll_fmodf
vcomiss xmm0, dword [0x1400eafac]
jbe 0x14008f8f5
mov dword [rsp + 0x1f4], 0
jmp 0x14008f900
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.140025410
lea r8, [rsp + 0x638]
mov rdx, rax
lea rcx, [rsp + 0x458]
call fcn.140025470
mov rdx, rax
lea rcx, [rsp + 0x540]
call fcn.140026090
vmovss xmm0, dword [rsp + 0x544]
vsubss xmm0, xmm0, dword [0x1400eb040]
vmovss xmm1, dword [rsp + 0x540]
vaddss xmm1, xmm1, dword [0x1400eb010]
mov rax, qword [rsp + 0x70]
vmovss xmm2, dword [rsp + 0x544]
vsubss xmm2, xmm2, dword [rax + 0x3c20]
vaddss xmm2, xmm2, dword [0x1400eaee8]
vmovss dword [rsp + 0x20], xmm0
vmovups xmm3, xmm1
vmovss xmm1, dword [rsp + 0x540]
lea rcx, [rsp + 0x698]
call fcn.1400263b0
movzx eax, byte [rsp + 0xec]
test eax, eax
je 0x14008fa72
lea rdx, [rsp + 0x650]
lea rcx, [rsp + 0x508]
call fcn.140026340
lea rdx, [rsp + 0x508]
lea rcx, [rsp + 0x698]
call fcn.140026680
movzx eax, al
test eax, eax
je 0x14008fa72
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x298]
mov qword [rsp + 0x3b0], rax
vmovss xmm1, dword [0x1400eb010]
xor ecx, ecx
call fcn.14002f0d0
mov dword [rsp + 0x270], eax
lea rdx, [rsp + 0x450]
lea rcx, [rsp + 0x698]
call fcn.140026510
mov qword [rsp + 0x3a8], rax
vmovss xmm0, dword [0x1400eb010]
vmovss 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.140067c00
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14008fae8
mov rax, qword [rsp + 0x70]
mov byte [rax + 0x5be8], 1
mov rax, qword [rsp + 0x70]
vmovss xmm0, dword [rsp + 0x544]
vsubss xmm0, xmm0, dword [rax + 0x3c20]
vmovss xmm1, dword [rsp + 0x540]
vsubss xmm1, xmm1, dword [0x1400eb010]
vmovups xmm2, xmm0
lea rcx, [rsp + 0x448]
call fcn.140006dc0
mov rax, qword [rax]
mov rcx, qword [rsp + 0x70]
mov qword [rcx + 0x5bec], rax
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x70]
vmovss xmm0, dword [rcx + 0x3c20]
vmovss dword [rax + 0x5bf4], xmm0
jmp 0x14008fcf1
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008fb46
lea rdx, [rsp + 0x520]
mov rcx, qword [rsp + 0x110]
call fcn.1400877b0
vcvtsi2ss xmm0, xmm0, eax
mov rax, qword [rsp + 0x70]
vmulss xmm0, xmm0, dword [rax + 0x3c20]
vmovups xmm2, xmm0
vmovss xmm1, dword [rsp + 0x518]
lea rcx, [rsp + 0x440]
call fcn.140006dc0
mov rax, qword [rax]
mov qword [rsp + 0x548], rax
jmp 0x14008fbe2
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x14008fb81
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f58], ecx
jne 0x14008fb81
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 0x14008fbe2
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x14008fbe2
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 0x14008fba6
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 0x14008fc0d
mov rax, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x520]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x14008fcf1
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x14008fc23
mov dword [rsp + 0x1f8], 1
jmp 0x14008fc2e
mov dword [rsp + 0x1f8], 0
vmovss xmm1, dword [0x1400eb010]
mov ecx, dword [rsp + 0x1f8]
call fcn.14002f0d0
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 0x14008fc77
mov qword [rsp + 0x2e8], 0
jmp 0x14008fc87
lea rax, [rsp + 0x650]
mov qword [rsp + 0x2e8], rax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x40], rax
vxorps xmm0, xmm0, xmm0
vmovss 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]
vmovss xmm2, dword [rax + 0x3c20]
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax + 0x3c18]
mov rcx, qword [rsp + 0x3c0]
call fcn.140068510
movzx eax, byte [rsp + 0x7e]
test eax, eax
je 0x14008fd08
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x14008fd08
call fcn.14003fef0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14008fdf9
mov rax, qword [rsp + 0xe0]
vmovss xmm0, dword [rsp + 0x54c]
vaddss xmm0, xmm0, dword [rax + 0x40]
vmovups xmm2, xmm0
vmovss xmm1, dword [rsp + 0x548]
lea rcx, [rsp + 0x4d8]
call fcn.140006dc0
mov rcx, rax
call fcn.1400823b0
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.1400371d0
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.140046590
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x4794], 0
jne 0x14008fdf9
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 0x14008fe4b
movzx eax, byte [rsp + 0x7e]
test eax, eax
je 0x14008fe1b
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x14008fe4b
lea rdx, [0x1400e8654]
lea rcx, [0x1400e8678]
call fcn.1400500b0
mov r8, qword [rsp + 0x520]
mov rdx, qword [rsp + 0x110]
lea rcx, [rsp + 0x608]
call fcn.14004fd30
vmovss xmm0, dword [rsp + 0x630]
vcomiss xmm0, dword [0x1400ead2c]
jbe 0x14008feb1
mov rax, qword [rsp + 0xe0]
vmovss xmm0, dword [rsp + 0x52c]
vaddss xmm0, xmm0, dword [rax + 0x40]
mov rax, qword [rsp + 0xe0]
vmovss xmm1, dword [rsp + 0x530]
vaddss xmm1, xmm1, dword [rax + 0x54]
vmovups xmm2, xmm0
lea rcx, [rsp + 0x4e0]
call fcn.140006dc0
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rsp + 0x710]
mov rcx, qword [rax]
call fcn.14002f7a0
movzx eax, byte [rsp + 0x7b]
test eax, eax
je 0x14008fed3
mov eax, dword [rsp + 0x738]
and eax, 0x8000000
test eax, eax
jne 0x14008fed3
mov ecx, dword [rsp + 0x64]
call fcn.140032960
mov eax, dword [rsp + 0x738]
and eax, 0x20
test eax, eax
je 0x14008feed
movzx eax, byte [rsp + 0x92]
jmp 0x14008fef2
movzx eax, byte [rsp + 0x7b]
mov rcx, qword [rsp + 0x6e8]
xor rcx, rsp
call fcn.1400c3c50
add rsp, 0x6f8
pop rdi
pop rsi
ret