Function at 0x1400610c0
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, 0xa28
mov rax, qword [0x1400ab040]
xor rax, rsp
mov qword [rsp + 0xa10], rax
call fcn.14000a3f0
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x110]
movzx eax, byte [rax + 0xb3]
test eax, eax
je 0x140061116
xor al, al
jmp 0x1400662c4
mov rax, qword [0x140252ee8]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
add rax, 8
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x68]
add rax, 0x37e0
mov qword [rsp + 0xd8], rax
mov byte [rsp + 0x14d], 0
mov eax, dword [rsp + 0xa68]
and eax, 0x4000000
test eax, eax
je 0x140061165
mov byte [rsp + 0xc8], 1
jmp 0x14006116d
mov byte [rsp + 0xc8], 0
movzx eax, byte [rsp + 0xc8]
mov byte [rsp + 0x50], al
mov eax, dword [rsp + 0xa68]
and eax, 0x4000
test eax, eax
je 0x140061193
mov byte [rsp + 0xc9], 1
jmp 0x14006119b
mov byte [rsp + 0xc9], 0
movzx eax, byte [rsp + 0xc9]
mov byte [rsp + 0x60], al
mov eax, dword [rsp + 0xa68]
and eax, 0x8000
test eax, eax
je 0x1400611c1
mov byte [rsp + 0xca], 1
jmp 0x1400611c9
mov byte [rsp + 0xca], 0
movzx eax, byte [rsp + 0xca]
mov byte [rsp + 0x73], al
mov eax, dword [rsp + 0xa68]
and eax, 0x10000
test eax, eax
jne 0x1400611ef
mov byte [rsp + 0xcb], 1
jmp 0x1400611f7
mov byte [rsp + 0xcb], 0
movzx eax, byte [rsp + 0xcb]
mov byte [rsp + 0xb1], al
mov eax, dword [rsp + 0xa68]
and eax, 0x40000
test eax, eax
je 0x140061220
mov byte [rsp + 0xd0], 1
jmp 0x140061228
mov byte [rsp + 0xd0], 0
movzx eax, byte [rsp + 0xd0]
mov byte [rsp + 0x8a], al
movzx eax, byte [rsp + 0x8a]
movss xmm2, dword [0x1400a4704]
movss xmm1, dword [0x1400a4704]
lea rcx, [rsp + 0x5f8]
call fcn.140006700
mov rdx, rax
mov ecx, 0xe
call fcn.14000e040
movss xmm0, dword [0x1400a4704]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x1400a46d8]
movss xmm2, dword [0x1400a46d8]
movss xmm1, dword [0x1400a46d8]
lea rcx, [rsp + 0x798]
call fcn.1400067c0
mov rdx, qword [rsp + 0xa40]
mov rcx, rax
call fcn.140058b00
call fcn.14005d3b0
mov ecx, 1
call fcn.14000e0f0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400612c9
call fcn.140023890
xor r8d, r8d
mov rdx, qword [rsp + 0xa40]
mov rcx, qword [rsp + 0x110]
call fcn.140010340
mov dword [rsp + 0x64], eax
movss xmm0, dword [0x1400a486c]
movss dword [rsp + 0x20], xmm0
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rsp + 0xa40]
lea rcx, [rsp + 0x980]
call fcn.140014630
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140061336
mov rax, qword [0x140253030]
movss xmm0, dword [rax + 0x14]
mulss xmm0, dword [0x1400a4754]
movss dword [rsp + 0x1dc], xmm0
jmp 0x140061348
movss xmm0, dword [rsp + 0x984]
movss dword [rsp + 0x1dc], xmm0
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x1400a4724]
movss xmm1, dword [rsp + 0x1dc]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x2d0], xmm0
call fcn.140023570
movss dword [rsp + 0x2d4], xmm0
xorps xmm2, xmm2
movss xmm1, dword [0x1400a47b0]
lea rcx, [rsp + 0x600]
call fcn.140006700
mov r8, rax
mov rdx, qword [rsp + 0xa60]
lea rcx, [rsp + 0x608]
call fcn.140007030
mov rax, qword [rax]
mov qword [rsp + 0x3e8], rax
mov rax, qword [rsp + 0x3e8]
mov qword [rsp + 0x3f0], rax
movss xmm3, dword [rsp + 0x2d0]
movss xmm2, dword [rsp + 0x2d4]
mov rdx, qword [rsp + 0x3f0]
lea rcx, [rsp + 0x958]
call fcn.140023640
movss xmm0, dword [rsp + 0x95c]
movss dword [rsp + 0x2d8], xmm0
movss xmm0, dword [rsp + 0x980]
comiss xmm0, dword [0x1400a45f0]
jbe 0x14006143b
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rax + 0x54]
addss xmm0, dword [rsp + 0x980]
movss dword [rsp + 0x1e0], xmm0
jmp 0x140061447
xorps xmm0, xmm0
movss dword [rsp + 0x1e0], xmm0
movss xmm0, dword [rsp + 0x958]
addss xmm0, dword [rsp + 0x1e0]
movss xmm2, dword [rsp + 0x2d8]
movaps xmm1, xmm0
lea rcx, [rsp + 0x9c0]
call fcn.140006700
xorps xmm2, xmm2
movss xmm1, dword [0x1400a47b0]
lea rcx, [rsp + 0x620]
call fcn.140006700
mov rcx, qword [rsp + 0x110]
add rcx, 0xf8
mov r8, rax
mov rdx, rcx
lea rcx, [rsp + 0x550]
call fcn.140006fe0
lea r8, [rsp + 0x958]
mov rdx, rax
lea rcx, [rsp + 0x638]
call fcn.140006fe0
mov qword [rsp + 0x3f8], rax
xorps xmm2, xmm2
movss xmm1, dword [0x1400a47b0]
lea rcx, [rsp + 0x640]
call fcn.140006700
mov rcx, qword [rsp + 0x110]
add rcx, 0xf8
mov r8, rax
mov rdx, rcx
lea rcx, [rsp + 0x648]
call fcn.140006fe0
mov qword [rsp + 0x400], rax
mov r8, qword [rsp + 0x3f8]
mov rdx, qword [rsp + 0x400]
lea rcx, [rsp + 0x850]
call fcn.1400077d0
lea r8, [rsp + 0x958]
lea rdx, [rsp + 0x850]
lea rcx, [rsp + 0x650]
call fcn.140006fe0
mov r8, rax
lea rdx, [rsp + 0x850]
lea rcx, [rsp + 0x990]
call fcn.1400077d0
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0xc0], rax
mov rax, qword [rsp + 0x958]
mov qword [rsp + 0x860], rax
mov dword [rsp + 0x150], 0
lea rcx, [rsp + 0x9d0]
call fcn.1400083c0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400617d2
mov rax, qword [rsp + 0x110]
mov rax, qword [rax + 0xf8]
mov qword [rsp + 0x9b0], rax
mov rax, qword [rsp + 0xd8]
movss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x990]
call fcn.140056040
mov r9d, 0x400
lea r8, [rsp + 0x850]
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x990]
call fcn.140022f20
movzx eax, al
test eax, eax
jne 0x140061608
call fcn.140023a90
xor al, al
jmp 0x1400662c4
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4774]
mov dword [rsp + 0x150], eax
lea rax, [rsp + 0x9d0]
mov rcx, qword [rsp + 0x68]
mov rdi, rax
lea rsi, [rcx + 0x476c]
mov ecx, 0x3c
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x9b0]
mov qword [rax + 0xf8], rcx
mov eax, 0x10
imul rax, rax, 7
mov rcx, qword [rsp + 0xd8]
lea rax, [rcx + rax + 0xd4]
mov rdx, rax
mov ecx, 3
call fcn.14000dde0
mov rax, qword [rsp + 0xd8]
movss xmm1, dword [rax + 0x44]
mov ecx, 7
call fcn.14000df90
mov rax, qword [rsp + 0xd8]
movss xmm1, dword [rax + 0x48]
mov ecx, 8
call fcn.14000df90
xorps xmm2, xmm2
xorps xmm1, xmm1
lea rcx, [rsp + 0x658]
call fcn.140006700
mov rdx, rax
mov ecx, 2
call fcn.14000e040
lea rdx, [rsp + 0x660]
lea rcx, [rsp + 0x850]
call fcn.1400078f0
mov dword [rsp + 0x20], 4
mov r9b, 1
mov r8, rax
mov edx, dword [rsp + 0x64]
mov rcx, qword [rsp + 0xa40]
call fcn.140014c30
mov byte [rsp + 0xe3], al
mov ecx, 3
call fcn.14000e0f0
mov ecx, 1
call fcn.14000dea0
movzx eax, byte [rsp + 0xe3]
test eax, eax
jne 0x14006172f
call fcn.140014f30
call fcn.140023a90
xor al, al
jmp 0x1400662c4
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3ed0]
mov qword [rsp + 0xc0], rax
mov rax, qword [rsp + 0xc0]
mov eax, dword [rax + 0x150]
mov ecx, 1
mov dword [rsp + 0x2dc], ecx
movzx ecx, al
mov eax, dword [rsp + 0x2dc]
shl eax, cl
mov rcx, qword [rsp + 0xc0]
movsx ecx, word [rcx + 0x156]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0xc0]
mov word [rcx + 0x156], ax
mov rax, qword [rsp + 0xd8]
add rax, 0x3c
mov rcx, qword [rsp + 0xc0]
add rcx, 0xf8
mov rdx, rax
call fcn.140007120
mov rax, qword [rsp + 0xc0]
movss xmm0, dword [rsp + 0x860]
subss xmm0, dword [rax + 0xa4]
movss dword [rsp + 0x860], xmm0
jmp 0x14006183b
mov rax, qword [rsp + 0xd8]
movss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x990]
call fcn.140056040
mov eax, dword [rsp + 0xa68]
and eax, 0x10000000
test eax, eax
jne 0x140061829
mov r9d, 0x400
lea r8, [rsp + 0x850]
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x990]
call fcn.140022f20
movzx eax, al
test eax, eax
jne 0x140061829
xor al, al
jmp 0x1400662c4
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4774]
mov dword [rsp + 0x150], eax
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x850]
call fcn.140010f00
mov byte [rsp + 0x81], al
movzx eax, byte [rsp + 0x81]
test eax, eax
je 0x14006186e
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x4a58], 1
mov ecx, dword [rsp + 0x64]
call fcn.1400581e0
mov qword [rsp + 0x58], rax
mov eax, dword [rsp + 0x150]
and eax, 0x100
test eax, eax
je 0x140061896
mov byte [rsp + 0xd1], 1
jmp 0x14006189e
mov byte [rsp + 0xd1], 0
movzx eax, byte [rsp + 0xd1]
mov byte [rsp + 0xa3], al
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f30], ecx
je 0x1400618f8
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x48cc], ecx
je 0x1400618ee
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x48c0], ecx
jne 0x1400618f8
mov rax, qword [rsp + 0x68]
cmp dword [rax + 0x48e8], 2
jne 0x1400618f8
mov byte [rsp + 0xd2], 1
jmp 0x140061900
mov byte [rsp + 0xd2], 0
movzx eax, byte [rsp + 0xd2]
mov byte [rsp + 0x87], al
movzx eax, byte [rsp + 0x81]
test eax, eax
je 0x14006193f
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0x3730]
test eax, eax
je 0x14006193f
mov byte [rsp + 0x9c], 1
jmp 0x140061947
mov byte [rsp + 0x9c], 0
movzx eax, byte [rsp + 0x9c]
mov byte [rsp + 0x85], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14006199e
cmp qword [rsp + 0x58], 0
je 0x14006199e
mov rax, qword [rsp + 0x68]
cmp dword [rax + 0x3f30], 0
jne 0x14006199e
mov edx, 1
mov rcx, qword [rsp + 0xc0]
call fcn.14005c550
mov rcx, qword [rsp + 0x68]
cmp dword [rcx + 0x3f60], eax
jne 0x14006199e
mov byte [rsp + 0x9d], 1
jmp 0x1400619a6
mov byte [rsp + 0x9d], 0
movzx eax, byte [rsp + 0x9d]
mov byte [rsp + 0xe5], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400619ef
cmp qword [rsp + 0x58], 0
je 0x1400619ef
mov edx, 1
mov rcx, qword [rsp + 0xc0]
call fcn.14005c550
mov rcx, qword [rsp + 0x68]
cmp dword [rcx + 0x3f30], eax
jne 0x1400619ef
mov byte [rsp + 0x9e], 1
jmp 0x1400619f7
mov byte [rsp + 0x9e], 0
movzx eax, byte [rsp + 0x9e]
mov byte [rsp + 0xa5], al
mov byte [rsp + 0x70], 0
mov byte [rsp + 0x71], 0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140061a34
mov rax, qword [rsp + 0xc0]
movss xmm0, dword [rax + 0x80]
movss dword [rsp + 0x1e4], xmm0
jmp 0x140061a45
movss xmm0, dword [0x1400a4858]
movss dword [rsp + 0x1e4], xmm0
movss xmm0, dword [rsp + 0x1e4]
movss dword [rsp + 0x98], xmm0
cmp qword [rsp + 0x58], 0
je 0x140061a9c
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140061a75
mov dword [rsp + 0x1e8], 1
jmp 0x140061a80
mov dword [rsp + 0x1e8], 0
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x6b]
cmp eax, dword [rsp + 0x1e8]
je 0x140061a9c
mov byte [rsp + 0x9f], 1
jmp 0x140061aa4
mov byte [rsp + 0x9f], 0
movzx eax, byte [rsp + 0x9f]
mov byte [rsp + 0xa2], al
movzx eax, byte [rsp + 0x85]
test eax, eax
jne 0x140061aed
movzx eax, byte [rsp + 0xe5]
test eax, eax
jne 0x140061aed
movzx eax, byte [rsp + 0x87]
test eax, eax
jne 0x140061aed
movzx eax, byte [rsp + 0xa3]
test eax, eax
jne 0x140061aed
mov byte [rsp + 0xa0], 0
jmp 0x140061af5
mov byte [rsp + 0xa0], 1
movzx eax, byte [rsp + 0xa0]
mov byte [rsp + 0x86], al
movzx eax, byte [rsp + 0x86]
test eax, eax
jne 0x140061b26
movzx eax, byte [rsp + 0xa5]
test eax, eax
jne 0x140061b26
mov byte [rsp + 0xa1], 0
jmp 0x140061b2e
mov byte [rsp + 0xa1], 1
movzx eax, byte [rsp + 0xa1]
mov byte [rsp + 0xa4], al
movzx eax, byte [rsp + 0xa4]
test eax, eax
je 0x140061b5a
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f30], ecx
jne 0x140061b6a
movzx eax, byte [rsp + 0xa2]
test eax, eax
je 0x140061e5c
mov rax, qword [rsp + 0x68]
add rax, 0x4be8
mov qword [rsp + 0x58], rax
mov rcx, qword [rsp + 0x58]
call fcn.1400580a0
mov rax, qword [rsp + 0xa50]
mov qword [rsp + 0x410], rax
mov qword [rsp + 0x200], 0xffffffffffffffff
inc qword [rsp + 0x200]
mov rax, qword [rsp + 0x410]
mov rcx, qword [rsp + 0x200]
cmp byte [rax + rcx], 0
jne 0x140061ba0
mov rax, qword [rsp + 0x200]
mov dword [rsp + 0x118], eax
mov rax, qword [rsp + 0x58]
add rax, 0x38
mov qword [rsp + 0x418], rax
mov eax, dword [rsp + 0x118]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x418]
call fcn.14002fc10
mov eax, dword [rsp + 0x118]
inc eax
cdqe
mov rcx, qword [rsp + 0x58]
mov rdi, qword [rcx + 0x40]
mov rsi, qword [rsp + 0xa50]
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 0x140061c3e
movzx eax, byte [rsp + 0xa2]
test eax, eax
jne 0x140061c3e
mov dword [rsp + 0x1ec], 1
jmp 0x140061c49
mov dword [rsp + 0x1ec], 0
movzx eax, byte [rsp + 0x1ec]
mov byte [rsp + 0x80], al
movzx eax, byte [rsp + 0x80]
test eax, eax
je 0x140061cb0
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x118]
cmp dword [rax + 0x10], ecx
jne 0x140061ca8
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x48]
test eax, eax
je 0x140061cb0
movsxd rax, dword [rsp + 0x118]
mov r8, rax
mov rdx, qword [rsp + 0xa50]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x30]
call qword [0x140087848]
test eax, eax
je 0x140061cb0
mov byte [rsp + 0x80], 0
mov qword [rsp + 0x8d8], 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 + 0x420], rax
mov eax, dword [rsp + 0xa58]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x420]
call fcn.14002fdb0
mov rax, qword [rsp + 0x58]
add rax, 0x28
mov qword [rsp + 0x428], rax
xor edx, edx
mov rcx, qword [rsp + 0x428]
call fcn.14002fc10
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x48], 0
lea rax, [rsp + 0x8d8]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0xa50]
mov edx, dword [rsp + 0xa58]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.14000cfb0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0xa50]
mov rcx, qword [rsp + 0x8d8]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x10], eax
movzx eax, byte [rsp + 0x80]
test eax, eax
je 0x140061d85
mov rcx, qword [rsp + 0x58]
call fcn.1400580c0
jmp 0x140061dcb
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
movss dword [rax + 0x50], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140061da8
mov dword [rsp + 0x1f0], 1
jmp 0x140061db3
mov dword [rsp + 0x1f0], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov edx, dword [rsp + 0x1f0]
mov rcx, rax
call fcn.140060950
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140061e43
mov eax, dword [rsp + 0xa68]
and eax, 0x10
test eax, eax
je 0x140061de7
mov byte [rsp + 0x71], 1
movzx eax, byte [rsp + 0x87]
test eax, eax
je 0x140061e16
movzx eax, byte [rsp + 0x80]
test eax, eax
je 0x140061e11
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x48d0]
and eax, 4
test eax, eax
jne 0x140061e16
mov byte [rsp + 0x71], 1
movzx eax, byte [rsp + 0xa3]
test eax, eax
jne 0x140061e3e
movzx eax, byte [rsp + 0x85]
test eax, eax
je 0x140061e43
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0c]
test eax, eax
je 0x140061e43
mov byte [rsp + 0x71], 1
mov eax, dword [rsp + 0xa68]
and eax, 0x2000
test eax, eax
je 0x140061e5c
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x60], 1
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f30], ecx
je 0x140061ea8
movzx eax, byte [rsp + 0x86]
test eax, eax
je 0x140061ea8
mov rdx, qword [rsp + 0x110]
mov ecx, dword [rsp + 0x64]
call fcn.140010750
mov rdx, qword [rsp + 0x110]
mov ecx, dword [rsp + 0x64]
call fcn.140026570
mov rcx, qword [rsp + 0x110]
call fcn.14001d6d0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f30], ecx
jne 0x140061f93
movzx eax, byte [rsp + 0x85]
test eax, eax
je 0x140061eda
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x281
call fcn.1400227e0
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4740]
or eax, 3
mov rcx, qword [rsp + 0x68]
mov dword [rcx + 0x4740], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140061f0c
mov eax, dword [rsp + 0xa68]
and eax, 0x80
test eax, eax
je 0x140061f25
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4740]
or eax, 0xc
mov rcx, qword [rsp + 0x68]
mov dword [rcx + 0x4740], eax
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x207
call fcn.1400227e0
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x208
call fcn.1400227e0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140061f72
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x205
call fcn.1400227e0
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x206
call fcn.1400227e0
mov eax, dword [rsp + 0xa68]
and eax, 0x440
test eax, eax
je 0x140061f93
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x200
call fcn.1400227e0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f30], ecx
jne 0x140061fb1
cmp qword [rsp + 0x58], 0
jne 0x140061fb1
call fcn.1400109f0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f30], ecx
jne 0x140061ff9
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0x3730]
test eax, eax
je 0x140061ff9
movzx eax, byte [rsp + 0xa4]
test eax, eax
jne 0x140061ff9
movzx eax, byte [rsp + 0x86]
test eax, eax
jne 0x140061ff9
mov byte [rsp + 0x70], 1
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f30], ecx
je 0x14006202b
cmp qword [rsp + 0x58], 0
je 0x14006201e
movzx eax, byte [rsp + 0xa5]
test eax, eax
jne 0x14006202b
mov dword [rsp + 0x1f4], 0
jmp 0x140062036
mov dword [rsp + 0x1f4], 1
movzx eax, byte [rsp + 0x1f4]
mov byte [rsp + 0x62], al
cmp qword [rsp + 0x58], 0
je 0x140062080
mov rcx, qword [rsp + 0x58]
call fcn.140058130
movzx eax, al
test eax, eax
jne 0x140062064
movzx eax, byte [rsp + 0x71]
test eax, eax
je 0x140062080
xor eax, eax
test eax, eax
jne 0x140062073
movzx eax, byte [rsp + 0x62]
test eax, eax
je 0x140062080
mov dword [rsp + 0x1f8], 1
jmp 0x14006208b
mov dword [rsp + 0x1f8], 0
movzx eax, byte [rsp + 0x1f8]
mov byte [rsp + 0x61], al
mov byte [rsp + 0x8c], 0
mov byte [rsp + 0x8b], 0
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x140062191
cmp qword [rsp + 0x58], 0
je 0x140062191
movzx eax, byte [rsp + 0x62]
test eax, eax
jne 0x1400620d6
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x140062191
mov qword [rsp + 0x8e0], 0
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x430], rax
mov eax, dword [rsp + 0xa58]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x430]
call fcn.14002fdb0
lea rax, [rsp + 0x8e0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0xa50]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x18]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.14000cfb0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0xa50]
mov rcx, qword [rsp + 0x8e0]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x10], eax
mov rcx, qword [rsp + 0x58]
call fcn.1400580c0
movzx eax, byte [rsp + 0x61]
mov dword [rsp + 0x2cc], eax
mov rcx, qword [rsp + 0x58]
call fcn.140058130
movzx eax, al
mov ecx, dword [rsp + 0x2cc]
and ecx, eax
mov eax, ecx
mov byte [rsp + 0x61], al
movzx eax, byte [rsp + 0x62]
test eax, eax
jne 0x1400621b4
movzx eax, byte [rsp + 0x61]
test eax, eax
jne 0x1400621b4
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f30], ecx
jne 0x1400621dc
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400621dc
cmp qword [rsp + 0x58], 0
je 0x1400621dc
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x48]
test eax, eax
je 0x1400621dc
mov byte [rsp + 0xa6], 1
jmp 0x1400621e4
mov byte [rsp + 0xa6], 0
movzx eax, byte [rsp + 0xa6]
mov byte [rsp + 0xf0], al
mov byte [rsp + 0x14c], 0
movzx eax, byte [rsp + 0x73]
test eax, eax
je 0x14006232e
xor eax, eax
cmp eax, 1
je 0x14006232e
mov rcx, qword [0x140253010]
call fcn.14001db40
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3c18]
mov qword [rsp + 0x438], rax
mov dx, 0x70
mov rcx, qword [rsp + 0x438]
call fcn.14004e270
mov qword [rsp + 0x338], rax
mov rax, qword [rsp + 0x68]
add rax, 0x5a78
mov qword [rsp + 0x138], rax
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3c18]
mov rcx, qword [rsp + 0x138]
movss xmm0, dword [rax + 0x14]
movss dword [rcx + 0x14], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3c18]
mov rcx, qword [rsp + 0x138]
movss xmm0, dword [rax + 0x5c]
movss dword [rcx + 0x5c], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3c18]
mov rcx, qword [rsp + 0x138]
movss xmm0, dword [rax + 0x60]
movss dword [rcx + 0x60], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3c18]
mov rcx, qword [rsp + 0x138]
movss xmm0, dword [rax + 0x64]
movss dword [rcx + 0x64], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3c18]
mov rcx, qword [rsp + 0x138]
mov rax, qword [rax + 0x40]
mov qword [rcx + 0x40], rax
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x338]
mov qword [rax + 0x38], rcx
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x338]
movss xmm0, dword [rcx + 4]
movss dword [rax + 0x10], xmm0
mov rcx, qword [rsp + 0x138]
call fcn.14001db40
mov eax, 4
mov eax, eax
mov rcx, qword gs:[0x58]
mov rcx, qword [rcx]
mov eax, dword [rax + rcx]
cmp dword [0x140253724], eax
jle 0x140062397
lea rcx, [0x140253724]
call fcn.140082ea8
cmp dword [0x140253724], 0xffffffff
jne 0x140062397
mov edx, 0x10
lea rcx, [0x140253770]
call fcn.140002ea0
lea rcx, [0x140253770]
call fcn.140066ef0
lea rcx, [0x1400864b0]
call fcn.140082db4
nop
lea rcx, [0x140253724]
call fcn.140082e3c
mov edx, 8
lea rcx, [rsp + 0x930]
call fcn.140002ea0
mov rcx, qword [rsp + 0xa40]
call fcn.14001e770
mov dword [rsp + 0x2e0], eax
lea r8, [rsp + 0x2e0]
lea rdx, [rsp + 0x930]
lea rcx, [0x140253770]
call fcn.14002e1b0
lea rdx, [rsp + 0x668]
lea rcx, [0x140253770]
call fcn.14002e210
mov rdx, rax
lea rcx, [rsp + 0x930]
call fcn.14002e140
movzx eax, al
test eax, eax
je 0x1400624b9
mov rcx, qword [rsp + 0xa40]
call fcn.14001e770
mov dword [rsp + 0x2e4], eax
lea rax, [rsp + 0x7b8]
mov rdi, rax
xor eax, eax
mov ecx, 0x48
rep stosb byte [rdi], al
lea rcx, [rsp + 0x7b8]
call fcn.140066300
mov qword [rsp + 0x440], rax
mov r8, qword [rsp + 0x440]
lea rdx, [rsp + 0x2e4]
lea rcx, [rsp + 0x800]
call fcn.1400676d0
lea r8, [rsp + 0x800]
lea rdx, [rsp + 0x788]
lea rcx, [0x140253770]
call fcn.140067710
mov rcx, qword [rsp + 0xa40]
call fcn.14001e770
mov dword [rsp + 0x300], eax
lea r8, [rsp + 0x300]
lea rdx, [rsp + 0x670]
lea rcx, [0x140253770]
call fcn.14002e1b0
mov rax, qword [rax]
mov qword [rsp + 0x930], rax
mov dword [rsp + 0x148], 0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f30], ecx
jne 0x140062c03
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 + 0xa58]
mov dword [rax + 0x4c], ecx
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0xa68]
mov dword [rax + 0xe88], ecx
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0xdfc]
test eax, eax
jne 0x14006253c
mov dword [rsp + 0x168], 1
jmp 0x140062547
mov dword [rsp + 0x168], 0
mov rax, qword [rsp + 0x68]
movzx ecx, byte [rsp + 0x168]
mov byte [rax + 0x3f3d], cl
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x5dec], 1
mov rax, qword [rsp + 0x78]
movss xmm0, dword [rax + 0xdf4]
subss xmm0, dword [rsp + 0x850]
mov rax, qword [rsp + 0xd8]
subss xmm0, dword [rax + 0x3c]
mov rax, qword [rsp + 0x58]
addss xmm0, dword [rax + 0x50]
movss dword [rsp + 0x130], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400625d0
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0xc0]
movss xmm0, dword [rax + 0xdf8]
subss xmm0, dword [rcx + 0xfc]
movss dword [rsp + 0x16c], xmm0
jmp 0x1400625ed
mov rax, qword [0x140253030]
movss xmm0, dword [rax + 0x14]
mulss xmm0, dword [0x1400a4694]
movss dword [rsp + 0x16c], xmm0
movss xmm0, dword [rsp + 0x16c]
movss dword [rsp + 0x11c], xmm0
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x71]
mov byte [rsp + 0xe8], al
movzx eax, byte [rsp + 0x71]
test eax, eax
je 0x140062633
mov rcx, qword [rsp + 0x58]
call fcn.1400581a0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe85], 1
jmp 0x1400629b9
movzx eax, byte [rsp + 0x81]
test eax, eax
je 0x140062876
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, word [rcx + rax + 0x373a]
cmp eax, 2
jl 0x140062876
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0d]
test eax, eax
jne 0x140062876
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x11c]
movss xmm2, dword [rsp + 0x130]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.14005e2d0
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, word [rcx + rax + 0x373a]
sub eax, 2
mov dword [rsp + 0x240], eax
mov eax, dword [rsp + 0x240]
cdq
and eax, 1
xor eax, edx
sub eax, edx
test eax, eax
jne 0x1400627b4
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x54], 0
je 0x140062708
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
dec eax
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14005d790
movzx eax, ax
cmp eax, 0xa
je 0x140062708
mov byte [rsp + 0xa7], 0
jmp 0x140062710
mov byte [rsp + 0xa7], 1
movzx eax, byte [rsp + 0xa7]
mov byte [rsp + 0xe6], al
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
cmp dword [rax + 0x58], ecx
jne 0x14006273d
movzx eax, byte [rsp + 0xe6]
test eax, eax
jne 0x14006274c
mov edx, 0x20000c
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
cmp dword [rax + 0x58], ecx
jne 0x14006276f
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov rcx, rax
call fcn.14005e990
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x54]
mov rcx, qword [rsp + 0x58]
call fcn.14005dc30
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.14005e680
jmp 0x140062867
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x54]
mov rcx, qword [rsp + 0x58]
call fcn.14005d790
movzx eax, ax
cmp eax, 0xa
jne 0x1400627d8
mov byte [rsp + 0xa8], 1
jmp 0x1400627e0
mov byte [rsp + 0xa8], 0
movzx eax, byte [rsp + 0xa8]
mov byte [rsp + 0xe7], al
mov edx, 0x200004
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
mov edx, 0x600005
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
mov edx, 0x600001
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
movzx eax, byte [rsp + 0xe7]
test eax, eax
jne 0x14006285b
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14006285b
mov rax, qword [rsp + 0x58]
add rax, 0x5c
mov rcx, qword [rsp + 0x58]
add rcx, 0x58
mov rdx, rax
call fcn.140067790
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.1400580a0
jmp 0x1400629b9
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0x3730]
test eax, eax
je 0x140062921
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
jne 0x140062921
movzx eax, byte [rsp + 0x81]
test eax, eax
je 0x14006291c
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0d]
test eax, eax
je 0x1400628ea
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x11c]
movss xmm2, dword [rsp + 0x130]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.14005e380
jmp 0x140062912
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x11c]
movss xmm2, dword [rsp + 0x130]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.14005e2d0
mov rcx, qword [rsp + 0x58]
call fcn.1400580a0
jmp 0x1400629b9
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0xdfc]
test eax, eax
je 0x1400629b9
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
jne 0x1400629b9
mov rax, qword [rsp + 0x78]
movss xmm0, dword [rax + 0xf0]
ucomiss xmm0, dword [0x1400a45f0]
jp 0x14006297b
jne 0x14006297b
mov rax, qword [rsp + 0x78]
movss xmm0, dword [rax + 0xf4]
ucomiss xmm0, dword [0x1400a45f0]
jp 0x14006297b
je 0x1400629b9
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x11c]
movss xmm2, dword [rsp + 0x130]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.14005e380
mov rcx, qword [rsp + 0x58]
call fcn.1400580a0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
je 0x1400629ef
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0xdfc]
test eax, eax
jne 0x1400629ef
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe85], 0
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0c]
test eax, eax
je 0x140062a0f
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0e]
test eax, eax
je 0x140062a35
movzx eax, byte [rsp + 0xe8]
test eax, eax
je 0x140062a2b
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0f]
test eax, eax
jne 0x140062a35
mov byte [rsp + 0xa9], 0
jmp 0x140062a3d
mov byte [rsp + 0xa9], 1
movzx eax, byte [rsp + 0xa9]
mov byte [rsp + 0xaa], al
mov eax, dword [rsp + 0xa68]
and eax, 0x400
test eax, eax
je 0x140062ae7
mov dl, 1
mov ecx, 0x200
call fcn.14001f320
movzx eax, al
test eax, eax
je 0x140062ae7
movzx eax, byte [rsp + 0xaa]
test eax, eax
jne 0x140062ae7
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0d]
test eax, eax
jne 0x140062ae7
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140062ae7
mov dword [rsp + 0x960], 9
mov dword [rsp + 0x20], 2
mov r9, qword [rsp + 0xa78]
mov r8, qword [rsp + 0xa70]
mov edx, dword [rsp + 0xa68]
lea rcx, [rsp + 0x960]
call fcn.140060af0
movzx eax, al
test eax, eax
je 0x140062ae7
mov edx, dword [rsp + 0x960]
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x37a8], 0
jle 0x140062c03
movzx eax, byte [rsp + 0xaa]
test eax, eax
jne 0x140062be1
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140062be1
movzx eax, byte [rsp + 0x87]
test eax, eax
jne 0x140062be1
mov dword [rsp + 0x120], 0
jmp 0x140062b43
mov eax, dword [rsp + 0x120]
inc eax
mov dword [rsp + 0x120], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x37a8]
cmp dword [rsp + 0x120], eax
jge 0x140062be1
mov rax, qword [rsp + 0x78]
add rax, 0x37a8
mov qword [rsp + 0x448], rax
mov edx, dword [rsp + 0x120]
mov rcx, qword [rsp + 0x448]
call fcn.14002fe00
movzx eax, word [rax]
mov dword [rsp + 0x950], eax
cmp dword [rsp + 0x950], 9
jne 0x140062b98
jmp 0x140062b33
mov dword [rsp + 0x20], 2
mov r9, qword [rsp + 0xa78]
mov r8, qword [rsp + 0xa70]
mov edx, dword [rsp + 0xa68]
lea rcx, [rsp + 0x950]
call fcn.140060af0
movzx eax, al
test eax, eax
je 0x140062bdc
mov edx, dword [rsp + 0x950]
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
jmp 0x140062b33
mov rax, qword [rsp + 0x78]
add rax, 0x37a8
mov qword [rsp + 0x450], rax
xor edx, edx
mov rcx, qword [rsp + 0x450]
call fcn.14002fdb0
movss xmm0, dword [0x140253028]
movss dword [rsp + 0x244], xmm0
lea rcx, [rsp + 0x930]
call fcn.14002e120
add rax, 0x14
mov qword [rsp + 0x3e0], rax
mov eax, 0x10
imul rax, rax, 0
lea rcx, [0x1402537c0]
add rcx, rax
mov rax, rcx
movss xmm3, dword [rsp + 0x244]
mov r8, rax
mov rdx, qword [rsp + 0x3e0]
lea rcx, [rsp + 0x778]
call fcn.140032620
lea rcx, [rsp + 0x5d8]
mov rdi, rcx
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x930]
call fcn.14002e120
lea rcx, [rsp + 0x5d8]
lea rdi, [rax + 0x14]
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
movss xmm0, dword [0x140253028]
movss dword [rsp + 0x248], xmm0
lea rcx, [rsp + 0x930]
call fcn.14002e120
add rax, 0x24
mov qword [rsp + 0x460], rax
mov eax, 0x10
imul rax, rax, 1
lea rcx, [0x1402537c0]
add rcx, rax
mov rax, rcx
movss xmm3, dword [rsp + 0x248]
mov r8, rax
mov rdx, qword [rsp + 0x460]
lea rcx, [rsp + 0x768]
call fcn.140032620
lea rcx, [rsp + 0x5e8]
mov rdi, rcx
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x930]
call fcn.14002e120
lea rcx, [rsp + 0x5e8]
lea rdi, [rax + 0x24]
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
movss xmm0, dword [0x140253028]
movss dword [rsp + 0x24c], xmm0
lea rcx, [rsp + 0x930]
call fcn.14002e120
add rax, 0x34
mov qword [rsp + 0x468], rax
mov eax, 0x10
imul rax, rax, 2
lea rcx, [0x1402537c0]
add rcx, rax
mov rax, rcx
movss xmm3, dword [rsp + 0x24c]
mov r8, rax
mov rdx, qword [rsp + 0x468]
lea rcx, [rsp + 0x7a8]
call fcn.140032620
lea rcx, [rsp + 0x610]
mov rdi, rcx
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x930]
call fcn.14002e120
lea rcx, [rsp + 0x610]
lea rdi, [rax + 0x34]
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov byte [rsp + 0x72], 0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f30], ecx
jne 0x140063db2
mov rax, qword [rsp + 0x68]
movzx eax, byte [rax + 0x3f3c]
test eax, eax
jne 0x140063db2
movzx eax, byte [rsp + 0x70]
test eax, eax
jne 0x140063db2
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rsp + 0x864]
subss xmm0, dword [rax + 0x40]
mov rax, qword [0x140253030]
divss xmm0, dword [rax + 0x14]
cvttss2si eax, xmm0
mov edx, 1
mov ecx, eax
call fcn.140030aa0
mov dword [rsp + 0x154], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x154]
mov dword [rax + 0x64], ecx
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0d]
test eax, eax
je 0x140062e6e
mov dword [rsp + 0x170], 0x400000
jmp 0x140062e79
mov dword [rsp + 0x170], 0
mov eax, dword [rsp + 0x170]
mov dword [rsp + 0x90], eax
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x71]
mov byte [rsp + 0x83], al
movzx eax, byte [rsp + 0x83]
test eax, eax
je 0x140062eb8
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0e]
mov byte [rsp + 0xab], al
jmp 0x140062ecb
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0c]
mov byte [rsp + 0xab], al
movzx eax, byte [rsp + 0xab]
mov byte [rsp + 0x88], al
movzx eax, byte [rsp + 0x83]
test eax, eax
je 0x140062f20
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0f]
test eax, eax
je 0x140062f20
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0c]
test eax, eax
jne 0x140062f20
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0e]
test eax, eax
jne 0x140062f20
mov byte [rsp + 0xac], 1
jmp 0x140062f28
mov byte [rsp + 0xac], 0
movzx eax, byte [rsp + 0xac]
mov byte [rsp + 0x82], al
mov dword [rsp + 0x390], 1
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0xa39
call fcn.140022880
movzx eax, al
test eax, eax
jne 0x140062f78
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x220a
call fcn.140022880
movzx eax, al
test eax, eax
je 0x140062fae
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140062fae
movzx eax, byte [rsp + 0x73]
test eax, eax
jne 0x140062fae
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140062fa4
mov rcx, qword [rsp + 0x58]
call fcn.140058130
movzx eax, al
test eax, eax
je 0x140062fae
mov byte [rsp + 0xad], 1
jmp 0x140062fb6
mov byte [rsp + 0xad], 0
movzx eax, byte [rsp + 0xad]
mov byte [rsp + 0x89], al
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0xa24
call fcn.140022880
movzx eax, al
test eax, eax
jne 0x140062ff5
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x1209
call fcn.140022880
movzx eax, al
test eax, eax
je 0x140063022
movzx eax, byte [rsp + 0x73]
test eax, eax
jne 0x140063022
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140063018
mov rcx, qword [rsp + 0x58]
call fcn.140058130
movzx eax, al
test eax, eax
je 0x140063022
mov byte [rsp + 0xae], 1
jmp 0x14006302a
mov byte [rsp + 0xae], 0
movzx eax, byte [rsp + 0xae]
mov byte [rsp + 0xe0], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0xa37
call fcn.140022880
movzx eax, al
test eax, eax
jne 0x14006306f
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x2209
call fcn.140022880
movzx eax, al
test eax, eax
je 0x140063082
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140063082
mov byte [rsp + 0xaf], 1
jmp 0x14006308a
mov byte [rsp + 0xaf], 0
movzx eax, byte [rsp + 0xaf]
mov byte [rsp + 0xe1], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0xa3b
call fcn.140022880
movzx eax, al
test eax, eax
je 0x1400630d3
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400630d3
movzx eax, byte [rsp + 0xb1]
test eax, eax
je 0x1400630d3
mov byte [rsp + 0xb0], 1
jmp 0x1400630db
mov byte [rsp + 0xb0], 0
movzx eax, byte [rsp + 0xb0]
mov byte [rsp + 0xba], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0xa3a
call fcn.140022880
movzx eax, al
test eax, eax
jne 0x14006312c
movzx eax, byte [rsp + 0x83]
test eax, eax
je 0x14006314b
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x2a3b
call fcn.140022880
movzx eax, al
test eax, eax
je 0x14006314b
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14006314b
movzx eax, byte [rsp + 0xb1]
test eax, eax
je 0x14006314b
mov byte [rsp + 0xb2], 1
jmp 0x140063153
mov byte [rsp + 0xb2], 0
movzx eax, byte [rsp + 0xb2]
mov byte [rsp + 0xf2], al
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0xa22
call fcn.140022880
mov byte [rsp + 0xf3], al
mov rax, qword [rsp + 0x78]
mov eax, dword [rax]
and eax, 2
test eax, eax
je 0x1400631a1
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 4]
and eax, 1
test eax, eax
je 0x1400631a1
mov byte [rsp + 0xb3], 1
jmp 0x1400631a9
mov byte [rsp + 0xb3], 0
movzx eax, byte [rsp + 0xb3]
mov byte [rsp + 0xb6], al
mov dl, 1
mov ecx, 0x20d
call fcn.14001f320
movzx eax, al
test eax, eax
jne 0x1400631e8
mov dl, 1
mov ecx, 0x267
call fcn.14001f320
movzx eax, al
test eax, eax
jne 0x1400631e8
mov byte [rsp + 0xb4], 0
jmp 0x1400631f0
mov byte [rsp + 0xb4], 1
movzx eax, byte [rsp + 0xb4]
mov byte [rsp + 0xe9], al
movzx eax, byte [rsp + 0xb6]
test eax, eax
je 0x14006323b
xor edx, edx
mov ecx, 0x26e
call fcn.14001f320
movzx eax, al
test eax, eax
jne 0x140063231
xor edx, edx
mov ecx, 0x26d
call fcn.14001f320
movzx eax, al
test eax, eax
je 0x14006323b
mov byte [rsp + 0xb5], 1
jmp 0x140063243
mov byte [rsp + 0xb5], 0
movzx eax, byte [rsp + 0xb5]
mov byte [rsp + 0xb8], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x20e
call fcn.140022880
movzx eax, al
test eax, eax
jne 0x14006329e
movzx eax, byte [rsp + 0xb6]
test eax, eax
je 0x140063294
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x26c
call fcn.140022880
movzx eax, al
test eax, eax
jne 0x14006329e
mov byte [rsp + 0xb7], 0
jmp 0x1400632a6
mov byte [rsp + 0xb7], 1
movzx eax, byte [rsp + 0xb7]
mov byte [rsp + 0xf1], al
mov dl, 1
mov ecx, 0x201
call fcn.14001f320
movzx eax, al
test eax, eax
je 0x140063336
movzx eax, byte [rsp + 0x82]
test eax, eax
je 0x1400632e1
mov dword [rsp + 0x178], 0x200004
jmp 0x140063313
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x1400632fa
mov dword [rsp + 0x174], 0x20000c
jmp 0x140063305
mov dword [rsp + 0x174], 0x200000
mov eax, dword [rsp + 0x174]
mov dword [rsp + 0x178], eax
mov eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x178]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
jmp 0x140063d6a
mov dl, 1
mov ecx, 0x202
call fcn.14001f320
movzx eax, al
test eax, eax
je 0x1400633b7
movzx eax, byte [rsp + 0x82]
test eax, eax
je 0x140063362
mov dword [rsp + 0x180], 0x200005
jmp 0x140063394
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x14006337b
mov dword [rsp + 0x17c], 0x20000d
jmp 0x140063386
mov dword [rsp + 0x17c], 0x200001
mov eax, dword [rsp + 0x17c]
mov dword [rsp + 0x180], eax
mov eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x180]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
jmp 0x140063d6a
mov dl, 1
mov ecx, 0x203
call fcn.14001f320
movzx eax, al
test eax, eax
je 0x140063468
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140063468
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0c]
test eax, eax
je 0x140063421
mov rax, qword [rsp + 0xc0]
mov rcx, qword [0x140253030]
movss xmm0, dword [rax + 0x80]
subss xmm0, dword [rcx + 0x14]
xorps xmm1, xmm1
call fcn.1400309b0
movaps xmm1, xmm0
mov rcx, qword [rsp + 0xc0]
call fcn.140024b60
jmp 0x140063463
movzx eax, byte [rsp + 0x82]
test eax, eax
je 0x14006343a
mov dword [rsp + 0x184], 0x200006
jmp 0x140063445
mov dword [rsp + 0x184], 0x200002
mov eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x184]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
jmp 0x140063d6a
mov dl, 1
mov ecx, 0x204
call fcn.14001f320
movzx eax, al
test eax, eax
je 0x14006353f
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14006353f
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0c]
test eax, eax
je 0x1400634f8
call fcn.140024af0
movss dword [rsp + 0x250], xmm0
mov rax, qword [rsp + 0xc0]
mov rcx, qword [0x140253030]
movss xmm0, dword [rax + 0x80]
addss xmm0, dword [rcx + 0x14]
movss dword [rsp + 0x254], xmm0
movss xmm1, dword [rsp + 0x250]
movss xmm0, dword [rsp + 0x254]
call fcn.140030970
movaps xmm1, xmm0
mov rcx, qword [rsp + 0xc0]
call fcn.140024b60
jmp 0x14006353a
movzx eax, byte [rsp + 0x82]
test eax, eax
je 0x140063511
mov dword [rsp + 0x188], 0x200007
jmp 0x14006351c
mov dword [rsp + 0x188], 0x200003
mov eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x188]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
jmp 0x140063d6a
mov dl, 1
mov ecx, 0x205
call fcn.14001f320
movzx eax, al
test eax, eax
je 0x1400635a6
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400635a6
mov eax, dword [rsp + 0x90]
or eax, 0x20000e
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
cvtsi2ss xmm0, dword [rsp + 0x154]
mov rax, qword [0x140253030]
mulss xmm0, dword [rax + 0x14]
movss xmm1, dword [rsp + 0x98]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x98], xmm0
jmp 0x140063d6a
mov dl, 1
mov ecx, 0x206
call fcn.14001f320
movzx eax, al
test eax, eax
je 0x14006360d
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14006360d
mov eax, dword [rsp + 0x90]
or eax, 0x20000f
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
cvtsi2ss xmm0, dword [rsp + 0x154]
mov rax, qword [0x140253030]
mulss xmm0, dword [rax + 0x14]
movss xmm1, dword [rsp + 0x98]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x98], xmm0
jmp 0x140063d6a
mov dl, 1
mov ecx, 0x207
call fcn.14001f320
movzx eax, al
test eax, eax
je 0x14006366e
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0c]
test eax, eax
je 0x140063645
mov eax, dword [rsp + 0x90]
or eax, 0x200006
mov dword [rsp + 0x18c], eax
jmp 0x140063658
mov eax, dword [rsp + 0x90]
or eax, 0x200004
mov dword [rsp + 0x18c], eax
mov edx, dword [rsp + 0x18c]
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
jmp 0x140063d6a
mov dl, 1
mov ecx, 0x208
call fcn.14001f320
movzx eax, al
test eax, eax
je 0x1400636cf
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0c]
test eax, eax
je 0x1400636a6
mov eax, dword [rsp + 0x90]
or eax, 0x200007
mov dword [rsp + 0x190], eax
jmp 0x1400636b9
mov eax, dword [rsp + 0x90]
or eax, 0x200005
mov dword [rsp + 0x190], eax
mov edx, dword [rsp + 0x190]
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
jmp 0x140063d6a
mov dl, 1
mov ecx, 0x20a
call fcn.14001f320
movzx eax, al
test eax, eax
je 0x140063714
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140063714
movzx eax, byte [rsp + 0x89]
test eax, eax
jne 0x140063714
mov eax, dword [rsp + 0x90]
or eax, 0x200008
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
jmp 0x140063d6a
mov dl, 1
mov ecx, 0x20b
call fcn.14001f320
movzx eax, al
test eax, eax
je 0x1400637ce
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400637ce
mov rcx, qword [rsp + 0x58]
call fcn.140058130
movzx eax, al
test eax, eax
jne 0x1400637b1
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x140063766
mov edx, 0x60000c
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
jmp 0x1400637b1
movzx eax, byte [rsp + 0x83]
test eax, eax
je 0x1400637b1
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0f]
test eax, eax
je 0x1400637b1
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0e]
test eax, eax
jne 0x1400637b1
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0c]
test eax, eax
jne 0x1400637b1
mov edx, 0x600004
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
mov eax, dword [rsp + 0x90]
or eax, 0x200009
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
jmp 0x140063d6a
movzx eax, byte [rsp + 0xe9]
test eax, eax
jne 0x1400637ea
movzx eax, byte [rsp + 0xb8]
test eax, eax
je 0x1400638fc
mov eax, dword [rsp + 0xa68]
and eax, 0x800
test eax, eax
je 0x140063807
mov dword [rsp + 0x194], 1
jmp 0x140063812
mov dword [rsp + 0x194], 0
movzx eax, byte [rsp + 0x194]
mov byte [rsp + 0xb9], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14006386e
movzx eax, byte [rsp + 0xb8]
test eax, eax
jne 0x14006386e
movzx eax, byte [rsp + 0xb9]
test eax, eax
je 0x140063852
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0c]
test eax, eax
je 0x14006386e
movzx eax, byte [rsp + 0xb9]
test eax, eax
jne 0x14006389f
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe0c]
test eax, eax
je 0x14006389f
mov byte [rsp + 0x8b], 1
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x74]
test eax, eax
je 0x140063898
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140063898
mov rcx, qword [rsp + 0x58]
call fcn.1400581a0
jmp 0x14006389d
mov byte [rsp + 0x70], 1
jmp 0x1400638f7
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400638f7
mov dword [rsp + 0x954], 0xa
mov dword [rsp + 0x20], 2
mov r9, qword [rsp + 0xa78]
mov r8, qword [rsp + 0xa70]
mov edx, dword [rsp + 0xa68]
lea rcx, [rsp + 0x954]
call fcn.140060af0
movzx eax, al
test eax, eax
je 0x1400638f7
mov edx, dword [rsp + 0x954]
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
jmp 0x140063d6a
movzx eax, byte [rsp + 0xf1]
test eax, eax
je 0x140063960
mov eax, dword [rsp + 0xa68]
and eax, 0x100000
test eax, eax
je 0x14006393f
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x10], 0
jle 0x14006392a
mov byte [rsp + 0x72], 1
jmp 0x14006393d
mov byte [rsp + 0x61], 0
movzx eax, byte [rsp + 0x61]
mov byte [rsp + 0x62], al
mov byte [rsp + 0x70], 1
jmp 0x14006395b
mov byte [rsp + 0x72], 1
movzx eax, byte [rsp + 0x72]
mov byte [rsp + 0x70], al
mov byte [rsp + 0x61], 0
movzx eax, byte [rsp + 0x61]
mov byte [rsp + 0x62], al
jmp 0x140063d6a
movzx eax, byte [rsp + 0xba]
test eax, eax
jne 0x140063978
movzx eax, byte [rsp + 0xf2]
test eax, eax
je 0x1400639bc
movzx eax, byte [rsp + 0xba]
test eax, eax
je 0x140063991
mov dword [rsp + 0x198], 0x20000a
jmp 0x14006399c
mov dword [rsp + 0x198], 0x20000b
mov edx, dword [rsp + 0x198]
mov rcx, qword [rsp + 0x58]
call fcn.140060a80
mov rcx, qword [rsp + 0x58]
call fcn.140058170
jmp 0x140063d6a
movzx eax, byte [rsp + 0xf3]
test eax, eax
je 0x1400639e3
mov rcx, qword [rsp + 0x58]
call fcn.1400581a0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
jmp 0x140063d6a
movzx eax, byte [rsp + 0x89]
test eax, eax
jne 0x1400639ff
movzx eax, byte [rsp + 0xe0]
test eax, eax
je 0x140063ba5
mov rax, qword [rsp + 0x78]
cmp qword [rax + 0xb0], 0
je 0x140063b57
mov rcx, qword [rsp + 0x58]
call fcn.140058130
movzx eax, al
test eax, eax
je 0x140063a41
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.1400309f0
mov dword [rsp + 0x19c], eax
jmp 0x140063a4c
mov dword [rsp + 0x19c], 0
mov eax, dword [rsp + 0x19c]
mov dword [rsp + 0x1a8], eax
mov rcx, qword [rsp + 0x58]
call fcn.140058130
movzx eax, al
test eax, eax
je 0x140063a89
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.140030aa0
mov dword [rsp + 0x1a0], eax
jmp 0x140063a98
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0xc]
mov dword [rsp + 0x1a0], eax
mov eax, dword [rsp + 0x1a0]
mov dword [rsp + 0x1a4], eax
movsxd rax, dword [rsp + 0x1a4]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x20]
lea rax, [rcx + rax*2]
movsxd rcx, dword [rsp + 0x1a8]
mov rdx, qword [rsp + 0x58]
mov rdx, qword [rdx + 0x20]
lea rcx, [rdx + rcx*2]
mov rdx, rax
call fcn.14000d470
inc eax
mov dword [rsp + 0x1ac], eax
movsxd rax, dword [rsp + 0x1ac]
mov rcx, rax
call fcn.1400112f0
mov qword [rsp + 0x2e8], rax
movsxd rax, dword [rsp + 0x1a4]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x20]
lea rax, [rcx + rax*2]
movsxd rcx, dword [rsp + 0x1a8]
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 + 0x1ac]
mov rcx, qword [rsp + 0x2e8]
call fcn.14000d360
mov rcx, qword [rsp + 0x2e8]
call fcn.140011410
mov rcx, qword [rsp + 0x2e8]
call fcn.140011350
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x140063ba0
mov rcx, qword [rsp + 0x58]
call fcn.140058130
movzx eax, al
test eax, eax
jne 0x140063b7e
mov rcx, qword [rsp + 0x58]
call fcn.1400581a0
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.14005e9e0
jmp 0x140063d6a
movzx eax, byte [rsp + 0xe1]
test eax, eax
je 0x140063d6a
call fcn.1400113b0
mov qword [rsp + 0x2f0], rax
cmp qword [rsp + 0x2f0], 0
je 0x140063d6a
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0x470], rax
mov qword [rsp + 0x208], 0xffffffffffffffff
inc qword [rsp + 0x208]
mov rax, qword [rsp + 0x470]
mov rcx, qword [rsp + 0x208]
cmp byte [rax + rcx], 0
jne 0x140063bed
mov rax, qword [rsp + 0x208]
mov dword [rsp + 0x258], eax
mov eax, dword [rsp + 0x258]
inc eax
cdqe
shl rax, 1
mov rcx, rax
call fcn.1400112f0
mov qword [rsp + 0x218], rax
mov dword [rsp + 0x100], 0
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0x210], rax
mov rax, qword [rsp + 0x210]
movsx eax, byte [rax]
test eax, eax
je 0x140063d0b
xor r8d, r8d
mov rdx, qword [rsp + 0x210]
lea rcx, [rsp + 0x940]
call fcn.14000cb20
cdqe
mov rcx, qword [rsp + 0x210]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x210], rax
cmp dword [rsp + 0x940], 0
jne 0x140063ca2
jmp 0x140063d0b
mov dword [rsp + 0x20], 4
mov r9, qword [rsp + 0xa78]
mov r8, qword [rsp + 0xa70]
mov edx, dword [rsp + 0xa68]
lea rcx, [rsp + 0x940]
call fcn.140060af0
movzx eax, al
test eax, eax
jne 0x140063cda
jmp 0x140063c53
movsxd rax, dword [rsp + 0x100]
mov rcx, qword [rsp + 0x218]
movzx edx, word [rsp + 0x940]
mov word [rcx + rax*2], dx
mov eax, dword [rsp + 0x100]
inc eax
mov dword [rsp + 0x100], eax
jmp 0x140063c53
movsxd rax, dword [rsp + 0x100]
xor ecx, ecx
mov rdx, qword [rsp + 0x218]
mov word [rdx + rax*2], cx
cmp dword [rsp + 0x100], 0
jle 0x140063d5d
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov r9d, dword [rsp + 0x100]
mov r8, qword [rsp + 0x218]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.140060970
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rcx, qword [rsp + 0x218]
call fcn.140011350
mov rcx, qword [rsp + 0x58]
call fcn.140058130
movzx eax, al
test eax, eax
je 0x140063d97
xor eax, eax
test eax, eax
jne 0x140063d8a
movzx eax, byte [rsp + 0x62]
test eax, eax
je 0x140063d97
mov dword [rsp + 0x1b0], 1
jmp 0x140063da2
mov dword [rsp + 0x1b0], 0
movzx eax, byte [rsp + 0x61]
or eax, dword [rsp + 0x1b0]
mov byte [rsp + 0x61], al
mov qword [rsp + 0x128], 0
mov dword [rsp + 0xcc], 0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f30], ecx
jne 0x1400645d4
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x140063f86
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140063f86
mov eax, dword [rsp + 0xa68]
and eax, 0x100000
test eax, eax
je 0x140063e48
lea rax, [0x140087f1f]
mov qword [rsp + 0x128], rax
mov dword [rsp + 0xcc], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
xor r9d, r9d
lea r8, [rsp + 0x988]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1400609b0
jmp 0x140063f86
mov rax, qword [rsp + 0xa50]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x40]
sub rcx, rax
movzx edx, byte [rax]
cmp dl, byte [rax + rcx]
jne 0x140063e6f
inc rax
test dl, dl
jne 0x140063e5c
xor eax, eax
jmp 0x140063e74
sbb eax, eax
or eax, 1
test eax, eax
je 0x140063f86
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x40]
mov qword [rsp + 0x128], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x38]
dec eax
mov dword [rsp + 0xcc], eax
lea rcx, [rsp + 0x8c8]
call fcn.14002e360
nop
cmp dword [rsp + 0xcc], 0
jle 0x140063f2b
movsxd rax, dword [rsp + 0xcc]
mov rcx, qword [rsp + 0x128]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x128]
call fcn.14000d0c0
inc eax
mov edx, eax
lea rcx, [rsp + 0x8c8]
call fcn.14002fdb0
movsxd rax, dword [rsp + 0xcc]
mov rcx, qword [rsp + 0x128]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x20], 0
mov r9, rax
mov r8, qword [rsp + 0x128]
mov edx, dword [rsp + 0x8c8]
mov rcx, qword [rsp + 0x8d0]
call fcn.14000cfb0
cmp dword [rsp + 0xcc], 0
jle 0x140063f47
mov eax, dword [rsp + 0x8c8]
dec eax
mov dword [rsp + 0x1b4], eax
jmp 0x140063f52
mov dword [rsp + 0x1b4], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov r9d, dword [rsp + 0x1b4]
mov r8, qword [rsp + 0x8d0]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1400609b0
nop
lea rcx, [rsp + 0x8c8]
call fcn.14002e290
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140063fe9
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x48], 1
mov rax, qword [rsp + 0x58]
add rax, 0x28
mov qword [rsp + 0x478], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x18]
lea eax, [rax*4 + 1]
mov edx, eax
mov rcx, qword [rsp + 0x478]
call fcn.14002fc10
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.14000d360
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x140064016
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x14006400c
mov eax, dword [rsp + 0xa68]
and eax, 0x20
test eax, eax
jne 0x140064016
mov byte [rsp + 0xbb], 0
jmp 0x14006401e
mov byte [rsp + 0xbb], 1
movzx eax, byte [rsp + 0xbb]
mov byte [rsp + 0xe2], al
movzx eax, byte [rsp + 0xe2]
test eax, eax
je 0x1400645d4
mov eax, dword [rsp + 0xa68]
and eax, 0x801c0
test eax, eax
je 0x14006457b
mov dword [rsp + 0xec], 0
mov dword [rsp + 0x124], 0
mov eax, dword [rsp + 0xa68]
and eax, 0x40
test eax, eax
je 0x1400640a3
mov dl, 1
mov ecx, 0x200
call fcn.14001f320
movzx eax, al
test eax, eax
je 0x1400640a3
mov dword [rsp + 0xec], 0x40
mov dword [rsp + 0x124], 0x200
jmp 0x140064164
mov eax, dword [rsp + 0xa68]
and eax, 0x80
test eax, eax
je 0x1400640e1
mov dl, 1
mov ecx, 0x203
call fcn.14001f320
movzx eax, al
test eax, eax
je 0x1400640e1
mov dword [rsp + 0xec], 0x80
mov dword [rsp + 0x124], 0x203
jmp 0x140064164
mov eax, dword [rsp + 0xa68]
and eax, 0x80
test eax, eax
je 0x14006411c
mov dl, 1
mov ecx, 0x204
call fcn.14001f320
movzx eax, al
test eax, eax
je 0x14006411c
mov dword [rsp + 0xec], 0x80
mov dword [rsp + 0x124], 0x204
jmp 0x140064164
mov eax, dword [rsp + 0xa68]
and eax, 0x80000
test eax, eax
je 0x140064149
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe86]
test eax, eax
je 0x140064149
mov dword [rsp + 0xec], 0x80000
jmp 0x140064164
mov eax, dword [rsp + 0xa68]
and eax, 0x100
test eax, eax
je 0x140064164
mov dword [rsp + 0xec], pe_nt_image_headers64
cmp dword [rsp + 0xec], 0
je 0x14006457b
lea rcx, [rsp + 0x890]
call fcn.140060ad0
lea rax, [rsp + 0x890]
mov rdi, rax
xor eax, eax
mov ecx, 0x38
rep stosb byte [rdi], al
mov eax, dword [rsp + 0xec]
mov dword [rsp + 0x890], eax
mov eax, dword [rsp + 0xa68]
mov dword [rsp + 0x894], eax
mov rax, qword [rsp + 0xa78]
mov qword [rsp + 0x898], rax
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x1400641da
mov rax, qword [rsp + 0xa50]
mov qword [rsp + 0x308], rax
jmp 0x1400641eb
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x308], rax
mov rax, qword [rsp + 0x308]
mov qword [rsp + 0x318], rax
mov eax, dword [rsp + 0x124]
mov dword [rsp + 0x8a4], eax
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x8a8], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x8b0], eax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x4c]
mov dword [rsp + 0x8b4], eax
mov byte [rsp + 0x8b8], 0
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x158], rax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x54]
mov rcx, qword [rsp + 0x158]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x158]
call fcn.14000d470
mov dword [rsp + 0x8bc], eax
mov eax, dword [rsp + 0x8bc]
mov dword [rsp + 0x25c], eax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x58]
mov rcx, qword [rsp + 0x158]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x158]
call fcn.14000d470
mov dword [rsp + 0x8c0], eax
mov eax, dword [rsp + 0x8c0]
mov dword [rsp + 0x260], eax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x5c]
mov rcx, qword [rsp + 0x158]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x158]
call fcn.14000d470
mov dword [rsp + 0x8c4], eax
mov eax, dword [rsp + 0x8c4]
mov dword [rsp + 0x264], eax
mov rax, qword [rsp + 0xa70]
mov qword [rsp + 0x480], rax
lea rcx, [rsp + 0x890]
call qword [rsp + 0x480]
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x140064338
mov rax, qword [rsp + 0xa50]
mov qword [rsp + 0x310], rax
jmp 0x140064349
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x310], rax
mov rax, qword [rsp + 0x310]
mov qword [rsp + 0x318], rax
movzx eax, byte [rsp + 0x8b8]
mov byte [rsp + 0x84], al
mov eax, dword [rsp + 0x25c]
cmp dword [rsp + 0x8bc], eax
jne 0x140064384
movzx eax, byte [rsp + 0x84]
test eax, eax
je 0x1400643be
movsxd rax, dword [rsp + 0x8bc]
mov rcx, qword [rsp + 0x8a8]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x8a8]
call fcn.14000d0c0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x54], eax
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov eax, dword [rsp + 0x260]
cmp dword [rsp + 0x8c0], eax
jne 0x1400643da
movzx eax, byte [rsp + 0x84]
test eax, eax
je 0x140064437
mov eax, dword [rsp + 0x8bc]
cmp dword [rsp + 0x8c0], eax
jne 0x1400643fb
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
mov dword [rsp + 0x1b8], eax
jmp 0x140064428
movsxd rax, dword [rsp + 0x8c0]
mov rcx, qword [rsp + 0x8a8]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x8a8]
call fcn.14000d0c0
mov dword [rsp + 0x1b8], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x1b8]
mov dword [rax + 0x58], ecx
mov eax, dword [rsp + 0x264]
cmp dword [rsp + 0x8c4], eax
jne 0x140064453
movzx eax, byte [rsp + 0x84]
test eax, eax
je 0x1400644b0
mov eax, dword [rsp + 0x8c0]
cmp dword [rsp + 0x8c4], eax
jne 0x140064474
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x58]
mov dword [rsp + 0x1bc], eax
jmp 0x1400644a1
movsxd rax, dword [rsp + 0x8c4]
mov rcx, qword [rsp + 0x8a8]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x8a8]
call fcn.14000d0c0
mov dword [rsp + 0x1bc], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x1bc]
mov dword [rax + 0x5c], ecx
movzx eax, byte [rsp + 0x84]
test eax, eax
je 0x14006457b
mov r8d, dword [rsp + 0x8b0]
mov rdx, qword [rsp + 0x8a8]
mov rcx, qword [rsp + 0x58]
call fcn.140060e60
mov eax, dword [rsp + 0x148]
cmp dword [rsp + 0x8b0], eax
jle 0x140064530
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x140064530
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x488], rax
mov eax, dword [rsp + 0x148]
mov ecx, dword [rsp + 0x8b0]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x58]
add eax, dword [rcx + 0x18]
mov edx, eax
mov rcx, qword [rsp + 0x488]
call fcn.14002fdb0
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8, qword [rsp + 0x8a8]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x18]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.14000cfb0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x8b0]
mov dword [rax + 0x10], ecx
mov rcx, qword [rsp + 0x58]
call fcn.1400580a0
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400645d4
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov rcx, qword [rsp + 0xa50]
sub rcx, rax
movzx edx, byte [rax]
cmp dl, byte [rax + rcx]
jne 0x1400645ab
inc rax
test dl, dl
jne 0x140064598
xor eax, eax
jmp 0x1400645b0
sbb eax, eax
or eax, 1
test eax, eax
je 0x1400645d4
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x128], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0xcc], eax
cmp qword [rsp + 0x128], 0
je 0x1400646f9
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x1400646c0
lea rcx, [rsp + 0x8f8]
call fcn.140060ad0
mov dword [rsp + 0x8f8], 0x40000
mov eax, dword [rsp + 0xa68]
mov dword [rsp + 0x8fc], eax
mov rax, qword [rsp + 0xa50]
mov qword [rsp + 0x910], rax
mov eax, dword [rsp + 0xcc]
mov dword [rsp + 0x918], eax
mov eax, dword [rsp + 0xcc]
inc eax
mov edx, eax
mov ecx, dword [rsp + 0xa58]
call fcn.140030aa0
mov dword [rsp + 0x91c], eax
mov rax, qword [rsp + 0xa78]
mov qword [rsp + 0x900], rax
mov rax, qword [rsp + 0xa70]
mov qword [rsp + 0x490], rax
lea rcx, [rsp + 0x8f8]
call qword [rsp + 0x490]
mov rax, qword [rsp + 0x910]
mov qword [rsp + 0xa50], rax
mov eax, dword [rsp + 0x91c]
mov dword [rsp + 0xa58], eax
mov eax, dword [rsp + 0xa58]
dec eax
mov edx, eax
mov ecx, dword [rsp + 0x918]
call fcn.1400309f0
mov dword [rsp + 0xcc], eax
mov eax, dword [rsp + 0xcc]
inc eax
mov edx, dword [rsp + 0xa58]
mov ecx, eax
call fcn.1400309f0
cdqe
mov r8, rax
mov rdx, qword [rsp + 0x128]
mov rcx, qword [rsp + 0xa50]
call fcn.14000bef0
mov byte [rsp + 0x8c], 1
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x140064718
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f30], ecx
jne 0x140064718
call fcn.1400109f0
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1400647c5
mov r8d, 1
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x850]
call fcn.14000ecc0
mov rax, qword [rsp + 0x110]
mov rax, qword [rax + 0x290]
mov qword [rsp + 0x498], rax
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rax + 0x44]
movss dword [rsp + 0x268], xmm0
lea rcx, [rsp + 0x930]
call fcn.14002e120
add rax, 0x14
mov rcx, rax
call fcn.14000dcf0
mov dword [rsp + 0x26c], eax
mov dword [rsp + 0x28], 0xa0
movss xmm0, dword [rsp + 0x268]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x26c]
lea r8, [rsp + 0x858]
lea rdx, [rsp + 0x850]
mov rcx, qword [rsp + 0x498]
call fcn.140043ee0
movss xmm0, dword [rsp + 0x854]
addss xmm0, dword [rsp + 0x864]
movss xmm1, dword [rsp + 0x850]
addss xmm1, dword [rsp + 0x860]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm1
movss xmm2, dword [rsp + 0x854]
movss xmm1, dword [rsp + 0x850]
lea rcx, [rsp + 0x968]
call fcn.1400067c0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140064843
mov rax, qword [rsp + 0xc0]
mov rax, qword [rax + 0xf8]
mov qword [rsp + 0x4a0], rax
lea rax, [rsp + 0x4a0]
mov qword [rsp + 0x320], rax
jmp 0x1400648aa
mov rax, qword [rsp + 0xd8]
add rax, 0x3c
mov qword [rsp + 0x4a8], rax
movss xmm2, dword [0x1400a475c]
xorps xmm1, xmm1
lea rcx, [rsp + 0x678]
call fcn.140006700
mov r8, rax
lea rdx, [rsp + 0x850]
lea rcx, [rsp + 0x680]
call fcn.140006fe0
mov rcx, qword [rsp + 0x4a8]
mov r8, rcx
mov rdx, rax
lea rcx, [rsp + 0x688]
call fcn.140006fe0
mov qword [rsp + 0x320], rax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x4b0], rax
mov rax, qword [rsp + 0x4b0]
mov rax, qword [rax]
mov qword [rsp + 0x870], rax
xorps xmm2, xmm2
xorps xmm1, xmm1
lea rcx, [rsp + 0x888]
call fcn.140006700
mov dword [rsp + 0x380], 0x200000
movzx eax, byte [rsp + 0xf0]
test eax, eax
je 0x14006490a
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x328], rax
jmp 0x14006491a
mov rax, qword [rsp + 0xa50]
mov qword [rsp + 0x328], rax
mov rax, qword [rsp + 0x328]
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x868], 0
xor eax, eax
test eax, eax
je 0x1400649a4
mov rax, qword [rsp + 0xa48]
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0xa48]
mov qword [rsp + 0x4b8], rax
mov qword [rsp + 0x220], 0xffffffffffffffff
inc qword [rsp + 0x220]
mov rax, qword [rsp + 0x4b8]
mov rcx, qword [rsp + 0x220]
cmp byte [rax + rcx], 0
jne 0x140064968
mov rax, qword [rsp + 0x220]
mov rcx, qword [rsp + 0xa48]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x868], rax
movzx eax, byte [rsp + 0x62]
test eax, eax
jne 0x1400649ba
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x140065b45
xor eax, eax
cmp eax, 1
je 0x1400649e0
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x108]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x868], rax
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x140], rax
lea rcx, [rsp + 0x938]
call fcn.1400066d0
lea rcx, [rsp + 0x978]
call fcn.1400066d0
mov qword [rsp + 0x230], 0
mov qword [rsp + 0x238], 0
mov dword [rsp + 0xf8], 0xfffffc18
mov dword [rsp + 0xfc], 0xfffffc18
mov dword [rsp + 0x94], 0
movzx eax, byte [rsp + 0x62]
test eax, eax
je 0x140064a97
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x54]
mov rcx, qword [rsp + 0x140]
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 + 0xf8], 0xffffffff
mov eax, dword [rsp + 0x94]
inc eax
mov dword [rsp + 0x94], eax
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x140064af8
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.1400309f0
cdqe
mov rcx, qword [rsp + 0x140]
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 + 0xf8], 0xffffffff
mov eax, dword [rsp + 0x94]
inc eax
mov dword [rsp + 0x94], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140064b0e
mov dword [rsp + 0x1c0], 1
jmp 0x140064b19
mov dword [rsp + 0x1c0], 0
mov eax, dword [rsp + 0x1c0]
mov ecx, dword [rsp + 0x94]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x94], eax
mov dword [rsp + 0xd4], 0
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x160], rax
jmp 0x140064b63
mov rax, qword [rsp + 0x160]
add rax, 2
mov qword [rsp + 0x160], rax
mov rax, qword [rsp + 0x160]
movzx eax, word [rax]
test eax, eax
je 0x140064c61
mov rax, qword [rsp + 0x160]
movzx eax, word [rax]
cmp eax, 0xa
jne 0x140064c5c
mov eax, dword [rsp + 0xd4]
inc eax
mov dword [rsp + 0xd4], eax
mov eax, 4
imul rax, rax, 0
cmp dword [rsp + rax + 0xf8], 0xffffffff
jne 0x140064bfb
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x230]
cmp qword [rsp + 0x160], rax
jb 0x140064bfb
mov eax, 4
imul rax, rax, 0
mov ecx, dword [rsp + 0xd4]
mov dword [rsp + rax + 0xf8], ecx
mov eax, dword [rsp + 0x94]
dec eax
mov dword [rsp + 0x94], eax
cmp dword [rsp + 0x94], 0
jg 0x140064bfb
jmp 0x140064c61
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0xf8], 0xffffffff
jne 0x140064c5c
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x230]
cmp qword [rsp + 0x160], rax
jb 0x140064c5c
mov eax, 4
imul rax, rax, 1
mov ecx, dword [rsp + 0xd4]
mov dword [rsp + rax + 0xf8], ecx
mov eax, dword [rsp + 0x94]
dec eax
mov dword [rsp + 0x94], eax
cmp dword [rsp + 0x94], 0
jg 0x140064c5c
jmp 0x140064c61
jmp 0x140064b4f
mov eax, dword [rsp + 0xd4]
inc eax
mov dword [rsp + 0xd4], eax
mov eax, 4
imul rax, rax, 0
cmp dword [rsp + rax + 0xf8], 0xffffffff
jne 0x140064c9b
mov eax, 4
imul rax, rax, 0
mov ecx, dword [rsp + 0xd4]
mov dword [rsp + rax + 0xf8], ecx
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0xf8], 0xffffffff
jne 0x140064cc5
mov eax, 4
imul rax, rax, 1
mov ecx, dword [rsp + 0xd4]
mov dword [rsp + rax + 0xf8], ecx
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x230]
mov qword [rsp + 0x4c0], rax
mov eax, 8
imul rax, rax, 0
mov rdx, qword [rsp + 0x140]
mov rcx, qword [rsp + rax + 0x230]
call fcn.14000c1a0
mov qword [rsp + 0x4c8], rax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x4c0]
mov r8, qword [rsp + 0x4c8]
mov rdx, qword [rsp + 0x68]
lea rcx, [rsp + 0x690]
call fcn.14005d570
movss xmm0, dword [rax]
movss dword [rsp + 0x938], xmm0
mov eax, 4
imul rax, rax, 0
cvtsi2ss xmm0, dword [rsp + rax + 0xf8]
mov rax, qword [0x140253030]
mulss xmm0, dword [rax + 0x14]
movss dword [rsp + 0x93c], xmm0
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0xf8], 0
jl 0x140064e34
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x230]
mov qword [rsp + 0x4d0], rax
mov eax, 8
imul rax, rax, 1
mov rdx, qword [rsp + 0x140]
mov rcx, qword [rsp + rax + 0x230]
call fcn.14000c1a0
mov qword [rsp + 0x4d8], rax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x4d0]
mov r8, qword [rsp + 0x4d8]
mov rdx, qword [rsp + 0x68]
lea rcx, [rsp + 0x698]
call fcn.14005d570
movss xmm0, dword [rax]
movss dword [rsp + 0x978], xmm0
mov eax, 4
imul rax, rax, 1
cvtsi2ss xmm0, dword [rsp + rax + 0xf8]
mov rax, qword [0x140253030]
mulss xmm0, dword [rax + 0x14]
movss dword [rsp + 0x97c], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140064e76
cvtsi2ss xmm0, dword [rsp + 0xd4]
mov rax, qword [0x140253030]
mulss xmm0, dword [rax + 0x14]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x860]
lea rcx, [rsp + 0x6a0]
call fcn.140006700
mov rax, qword [rax]
mov qword [rsp + 0x888], rax
movzx eax, byte [rsp + 0x62]
test eax, eax
je 0x140065109
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe84]
test eax, eax
je 0x140065109
mov eax, dword [rsp + 0xa68]
and eax, 0x1000
test eax, eax
jne 0x140064f75
movss xmm0, dword [rsp + 0x860]
mulss xmm0, dword [0x1400a465c]
movss dword [rsp + 0x1c8], xmm0
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rsp + 0x860]
subss xmm0, dword [rax + 0x3c]
movss dword [rsp + 0x1c4], xmm0
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 0x50]
comiss xmm0, dword [rsp + 0x938]
jbe 0x140064f29
movss xmm0, dword [rsp + 0x938]
subss xmm0, dword [rsp + 0x1c8]
movaps xmm1, xmm0
xorps xmm0, xmm0
call fcn.1400309b0
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x58]
movss dword [rax + 0x50], xmm0
jmp 0x140064f73
movss xmm0, dword [rsp + 0x938]
subss xmm0, dword [rsp + 0x1c4]
mov rax, qword [rsp + 0x58]
comiss xmm0, dword [rax + 0x50]
jb 0x140064f73
movss xmm0, dword [rsp + 0x938]
subss xmm0, dword [rsp + 0x1c4]
addss xmm0, dword [rsp + 0x1c8]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x58]
movss dword [rax + 0x50], xmm0
jmp 0x140064f82
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
movss dword [rax + 0x50], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400650fd
mov rax, qword [0x140253030]
movss xmm0, dword [rsp + 0x93c]
subss xmm0, dword [rax + 0x14]
movss xmm1, dword [rsp + 0x98]
comiss xmm1, xmm0
jbe 0x140064fdd
mov rax, qword [0x140253030]
movss xmm0, dword [rsp + 0x93c]
subss xmm0, dword [rax + 0x14]
movaps xmm1, xmm0
xorps xmm0, xmm0
call fcn.1400309b0
movss dword [rsp + 0x98], xmm0
jmp 0x140065050
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x1400a4724]
movss xmm1, dword [rsp + 0x864]
subss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [rsp + 0x93c]
subss xmm1, xmm0
movaps xmm0, xmm1
comiss xmm0, dword [rsp + 0x98]
jb 0x140065050
movss xmm0, dword [rsp + 0x93c]
subss xmm0, dword [rsp + 0x864]
mov rax, qword [rsp + 0xd8]
movss xmm1, dword [rax + 0x40]
mulss xmm1, dword [0x1400a4724]
addss xmm0, xmm1
movss dword [rsp + 0x98], xmm0
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x1400a4724]
movss xmm1, dword [rsp + 0x88c]
addss xmm1, xmm0
movaps xmm0, xmm1
subss xmm0, dword [rsp + 0x864]
xorps xmm1, xmm1
call fcn.1400309b0
movss dword [rsp + 0x270], xmm0
movss xmm2, dword [rsp + 0x270]
xorps xmm1, xmm1
movss xmm0, dword [rsp + 0x98]
call fcn.140030b50
movss dword [rsp + 0x98], xmm0
mov rax, qword [rsp + 0xc0]
movss xmm0, dword [rax + 0x80]
subss xmm0, dword [rsp + 0x98]
movss xmm1, dword [rsp + 0x874]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x874], xmm0
mov rax, qword [rsp + 0xc0]
movss xmm0, dword [rsp + 0x98]
movss dword [rax + 0x80], xmm0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 0
movss xmm0, dword [0x140253028]
movss dword [rsp + 0x274], xmm0
xorps xmm2, xmm2
mov rax, qword [rsp + 0x58]
movss xmm1, dword [rax + 0x50]
lea rcx, [rsp + 0x6a8]
call fcn.140006700
mov qword [rsp + 0x4e0], rax
movss xmm3, dword [rsp + 0x274]
mov r8, qword [rsp + 0x4e0]
lea rdx, [0x140253020]
lea rcx, [rsp + 0x6b0]
call fcn.140057f70
mov rax, qword [rax]
mov qword [0x140253020], rax
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x14006562b
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.1400309f0
cdqe
mov rcx, qword [rsp + 0x140]
lea rax, [rcx + rax*2]
mov qword [rsp + 0x4e8], rax
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.140030aa0
cdqe
mov rcx, qword [rsp + 0x140]
lea rax, [rcx + rax*2]
mov qword [rsp + 0x2f8], rax
movzx eax, byte [rsp + 0x62]
test eax, eax
je 0x1400651ea
movss xmm0, dword [0x1400a4704]
movss dword [rsp + 0x1cc], xmm0
jmp 0x1400651fb
movss xmm0, dword [0x1400a46ac]
movss dword [rsp + 0x1cc], xmm0
movss xmm1, dword [rsp + 0x1cc]
mov ecx, 0x2f
call fcn.14000dc50
mov dword [rsp + 0x28c], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14006522c
xorps xmm0, xmm0
movss dword [rsp + 0x1d0], xmm0
jmp 0x14006523d
movss xmm0, dword [0x1400a486c]
movss dword [rsp + 0x1d0], xmm0
movss xmm0, dword [rsp + 0x1d0]
movss dword [rsp + 0x288], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140065266
xorps xmm0, xmm0
movss dword [rsp + 0x1d4], xmm0
jmp 0x140065277
movss xmm0, dword [0x1400a4724]
movss dword [rsp + 0x1d4], xmm0
movss xmm0, dword [rsp + 0x1d4]
movss dword [rsp + 0x284], xmm0
lea r8, [rsp + 0x978]
lea rdx, [rsp + 0x870]
lea rcx, [rsp + 0x6b8]
call fcn.140006fe0
lea r8, [0x140253020]
mov rdx, rax
lea rcx, [rsp + 0x948]
call fcn.140007030
mov rax, qword [rsp + 0x4e8]
mov qword [rsp + 0x878], rax
mov rax, qword [rsp + 0x2f8]
cmp qword [rsp + 0x878], rax
jae 0x14006562b
mov rax, qword [0x140253030]
movss xmm0, dword [rsp + 0x974]
addss xmm0, dword [rax + 0x14]
movss xmm1, dword [rsp + 0x94c]
comiss xmm1, xmm0
jbe 0x14006530b
jmp 0x14006562b
movss xmm0, dword [rsp + 0x96c]
comiss xmm0, dword [rsp + 0x94c]
jbe 0x140065369
mov rax, qword [rsp + 0x2f8]
cmp qword [rsp + 0x878], rax
jae 0x140065364
mov rax, qword [rsp + 0x878]
movzx eax, word [rax]
mov dword [rsp + 0x278], eax
mov rax, qword [rsp + 0x878]
add rax, 2
mov qword [rsp + 0x878], rax
cmp dword [rsp + 0x278], 0xa
jne 0x140065362
jmp 0x140065364
jmp 0x14006531e
jmp 0x1400655ee
movss xmm0, dword [0x140253028]
mulss xmm0, dword [0x1400a473c]
movss dword [rsp + 0x27c], xmm0
mov byte [rsp + 0x30], 1
mov qword [rsp + 0x28], 0
lea rax, [rsp + 0x878]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x2f8]
mov r8, qword [rsp + 0x878]
mov rdx, qword [rsp + 0x68]
lea rcx, [rsp + 0x6c0]
call fcn.14005d570
mov qword [rsp + 0x4f0], rax
lea rcx, [rsp + 0x930]
call fcn.14002e120
add rax, 0x44
mov qword [rsp + 0x4f8], rax
movss xmm3, dword [rsp + 0x27c]
mov r8, qword [rsp + 0x4f0]
mov rdx, qword [rsp + 0x4f8]
lea rcx, [rsp + 0x6c8]
call fcn.140057f70
mov rax, qword [rax]
mov qword [rsp + 0x500], rax
lea rcx, [rsp + 0x930]
call fcn.14002e120
mov rcx, qword [rsp + 0x500]
mov qword [rax + 0x44], rcx
lea rcx, [rsp + 0x930]
call fcn.14002e120
xorps xmm0, xmm0
comiss xmm0, dword [rax + 0x44]
jb 0x140065499
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3c18]
mov qword [rsp + 0x508], rax
mov dx, 0x20
mov rcx, qword [rsp + 0x508]
call fcn.140057f10
mulss xmm0, dword [0x1400a4694]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
movss dword [rsp + 0x280], xmm0
lea rcx, [rsp + 0x930]
call fcn.14002e120
movss xmm0, dword [rsp + 0x280]
movss dword [rax + 0x44], xmm0
lea rcx, [rsp + 0x930]
call fcn.14002e120
movss xmm2, dword [rsp + 0x284]
movss xmm1, dword [rax + 0x44]
lea rcx, [rsp + 0x6d0]
call fcn.140006700
mov r8, rax
lea rdx, [rsp + 0x948]
lea rcx, [rsp + 0x6d8]
call fcn.140006fe0
mov qword [rsp + 0x510], rax
mov rax, qword [0x140253030]
movss xmm0, dword [rsp + 0x288]
subss xmm0, dword [rax + 0x14]
movaps xmm2, xmm0
xorps xmm1, xmm1
lea rcx, [rsp + 0x6e0]
call fcn.140006700
mov r8, rax
lea rdx, [rsp + 0x948]
lea rcx, [rsp + 0x6e8]
call fcn.140006fe0
mov qword [rsp + 0x518], rax
mov r8, qword [rsp + 0x510]
mov rdx, qword [rsp + 0x518]
lea rcx, [rsp + 0x9a0]
call fcn.1400077d0
lea rdx, [rsp + 0x968]
lea rcx, [rsp + 0x708]
call fcn.140007810
lea rdx, [rsp + 0x708]
lea rcx, [rsp + 0x9a0]
call fcn.140007e20
lea rdx, [rsp + 0x968]
lea rcx, [rsp + 0x628]
call fcn.140007810
lea rdx, [rsp + 0x628]
lea rcx, [rsp + 0x9a0]
call fcn.140007af0
movzx eax, al
test eax, eax
je 0x1400655ee
mov rax, qword [rsp + 0xc0]
mov rax, qword [rax + 0x290]
mov qword [rsp + 0x520], rax
mov dword [rsp + 0x28], 0
xorps xmm0, xmm0
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x28c]
lea r8, [rsp + 0x9a8]
lea rdx, [rsp + 0x9a0]
mov rcx, qword [rsp + 0x520]
call fcn.140043ee0
movss xmm0, dword [rsp + 0x870]
subss xmm0, dword [0x140253020]
movss dword [rsp + 0x948], xmm0
mov rax, qword [0x140253030]
movss xmm0, dword [rsp + 0x94c]
addss xmm0, dword [rax + 0x14]
movss dword [rsp + 0x94c], xmm0
jmp 0x1400652cd
movss xmm0, dword [0x1400a486c]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rsp + 0xa50]
lea rcx, [rsp + 0x9c8]
call fcn.140014630
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14006567f
mov rax, qword [rsp + 0x108]
mov rcx, qword [rsp + 0x868]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x1400657ec
mov rax, qword [rsp + 0xc0]
mov rax, qword [rax + 0x290]
mov qword [rsp + 0x540], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400656ad
mov qword [rsp + 0x330], 0
jmp 0x1400656bd
lea rax, [rsp + 0x968]
mov qword [rsp + 0x330], rax
mov rax, qword [rsp + 0x868]
mov qword [rsp + 0x528], rax
lea rcx, [rsp + 0x930]
call fcn.14002e120
add rax, 0x34
mov rcx, rax
call fcn.14000dcf0
mov dword [rsp + 0x298], eax
mov r9, qword [rsp + 0x108]
mov r8, qword [rsp + 0x858]
mov rdx, qword [rsp + 0x850]
lea rcx, [rsp + 0x700]
call fcn.140058230
movss xmm0, dword [rax + 4]
movss dword [rsp + 0x290], xmm0
movss xmm0, dword [rsp + 0x870]
subss xmm0, dword [0x140253020]
movss dword [rsp + 0x294], xmm0
movss xmm2, dword [rsp + 0x290]
movss xmm1, dword [rsp + 0x294]
lea rcx, [rsp + 0x5b0]
call fcn.140006700
mov qword [rsp + 0x530], rax
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x3c20]
movss dword [rsp + 0x29c], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3c18]
mov qword [rsp + 0x538], rax
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov rax, qword [rsp + 0x528]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x298]
mov dword [rsp + 0x20], eax
mov r9, qword [rsp + 0x530]
movss xmm2, dword [rsp + 0x29c]
mov rdx, qword [rsp + 0x538]
mov rcx, qword [rsp + 0x540]
call fcn.140044110
movzx eax, byte [rsp + 0x62]
test eax, eax
je 0x140065b40
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x78]
movss xmm0, dword [rax + 0xe80]
addss xmm0, dword [rcx + 0x10]
mov rax, qword [rsp + 0x58]
movss dword [rax + 0xe80], xmm0
mov rax, qword [rsp + 0x68]
movzx eax, byte [rax + 0x7b]
test eax, eax
je 0x14006586f
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
comiss xmm0, dword [rax + 0xe80]
jae 0x14006586f
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 0xe80]
movss xmm1, dword [0x1400a470c]
call fcn.140083d82
movss xmm1, dword [0x1400a46d4]
comiss xmm1, xmm0
jae 0x14006586f
mov dword [rsp + 0x1d8], 0
jmp 0x14006587a
mov dword [rsp + 0x1d8], 1
movzx eax, byte [rsp + 0x1d8]
mov byte [rsp + 0xe4], al
lea r8, [rsp + 0x938]
lea rdx, [rsp + 0x870]
lea rcx, [rsp + 0x718]
call fcn.140006fe0
lea r8, [0x140253020]
mov rdx, rax
lea rcx, [rsp + 0x720]
call fcn.140007030
mov rdx, rax
lea rcx, [rsp + 0x880]
call fcn.1400075b0
movss xmm0, dword [rsp + 0x884]
subss xmm0, dword [0x1400a471c]
movss xmm1, dword [rsp + 0x880]
addss xmm1, dword [0x1400a4704]
mov rax, qword [0x140253030]
movss xmm2, dword [rsp + 0x884]
subss xmm2, dword [rax + 0x14]
addss xmm2, dword [0x1400a4694]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm1
movss xmm1, dword [rsp + 0x880]
lea rcx, [rsp + 0x8e8]
call fcn.140007880
movss xmm0, dword [0x140253028]
mulss xmm0, dword [0x1400a4724]
movss dword [rsp + 0x2a0], xmm0
lea rcx, [rsp + 0x930]
call fcn.14002e120
movss xmm0, dword [rax + 0x10]
movss dword [rsp + 0x2a4], xmm0
movss xmm0, dword [rsp + 0x8e8]
subss xmm0, dword [rsp + 0x850]
movss xmm2, dword [rsp + 0x2a0]
movaps xmm1, xmm0
movss xmm0, dword [rsp + 0x2a4]
call fcn.140030c80
movss dword [rsp + 0x2a8], xmm0
lea rcx, [rsp + 0x930]
call fcn.14002e120
movss xmm0, dword [rsp + 0x2a8]
movss dword [rax + 0x10], xmm0
movzx eax, byte [rsp + 0xe4]
test eax, eax
je 0x140065acc
lea rdx, [rsp + 0x968]
lea rcx, [rsp + 0x6f0]
call fcn.140007810
lea rdx, [rsp + 0x6f0]
lea rcx, [rsp + 0x8e8]
call fcn.140007af0
movzx eax, al
test eax, eax
je 0x140065acc
mov rax, qword [rsp + 0xc0]
mov rax, qword [rax + 0x290]
mov qword [rsp + 0x350], rax
movss xmm1, dword [0x1400a4704]
xor ecx, ecx
call fcn.14000dc50
mov dword [rsp + 0x2ac], eax
lea rcx, [rsp + 0x930]
call fcn.14002e120
movss xmm0, dword [rsp + 0x850]
addss xmm0, dword [rax + 0x10]
movss xmm2, dword [rsp + 0x8f4]
movaps xmm1, xmm0
lea rcx, [rsp + 0x728]
call fcn.140006700
mov qword [rsp + 0x548], rax
lea rcx, [rsp + 0x930]
call fcn.14002e120
movss xmm0, dword [rsp + 0x850]
addss xmm0, dword [rax + 0x10]
movss xmm2, dword [rsp + 0x8ec]
movaps xmm1, xmm0
lea rcx, [rsp + 0x730]
call fcn.140006700
mov qword [rsp + 0x348], rax
movss xmm0, dword [0x1400a4704]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x2ac]
mov r8, qword [rsp + 0x548]
mov rdx, qword [rsp + 0x348]
mov rcx, qword [rsp + 0x350]
call fcn.140043c70
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140065b40
mov rax, qword [rsp + 0x68]
mov byte [rax + 0x5b80], 1
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x884]
subss xmm0, dword [rax + 0x3c20]
movss xmm1, dword [rsp + 0x880]
subss xmm1, dword [0x1400a4704]
movaps xmm2, xmm0
lea rcx, [rsp + 0x738]
call fcn.140006700
mov rax, qword [rax]
mov rcx, qword [rsp + 0x68]
mov qword [rcx + 0x5b84], rax
mov rax, qword [rsp + 0x68]
mov rcx, qword [0x140253030]
movss xmm0, dword [rcx + 0x14]
movss dword [rax + 0x5b8c], xmm0
jmp 0x140065dca
movss xmm0, dword [0x1400a486c]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rsp + 0xa50]
lea rcx, [rsp + 0x9b8]
call fcn.140014630
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140065bc6
lea rdx, [rsp + 0x868]
mov rcx, qword [rsp + 0x108]
call fcn.14005d4b0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3c20]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x860]
lea rcx, [rsp + 0x740]
call fcn.140006700
mov rax, qword [rax]
mov qword [rsp + 0x888], rax
jmp 0x140065c5e
xor eax, eax
cmp eax, 1
je 0x140065bff
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x3f30], ecx
jne 0x140065bff
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x108]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x868], rax
jmp 0x140065c5e
xor eax, eax
cmp eax, 1
je 0x140065c5e
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x358], rax
mov qword [rsp + 0x228], 0xffffffffffffffff
inc qword [rsp + 0x228]
mov rax, qword [rsp + 0x358]
mov rcx, qword [rsp + 0x228]
cmp byte [rax + rcx], 0
jne 0x140065c22
mov rax, qword [rsp + 0x228]
mov rcx, qword [rsp + 0x108]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x868], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140065c89
mov rax, qword [rsp + 0x108]
mov rcx, qword [rsp + 0x868]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x140065dca
mov rax, qword [rsp + 0xc0]
mov rax, qword [rax + 0x290]
mov qword [rsp + 0x378], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140065cb7
mov qword [rsp + 0x340], 0
jmp 0x140065cc7
lea rax, [rsp + 0x968]
mov qword [rsp + 0x340], rax
mov rax, qword [rsp + 0x868]
mov qword [rsp + 0x360], rax
lea rcx, [rsp + 0x930]
call fcn.14002e120
add rax, 0x34
mov rcx, rax
call fcn.14000dcf0
mov dword [rsp + 0x2b0], eax
mov r9, qword [rsp + 0x108]
mov r8, qword [rsp + 0x858]
mov rdx, qword [rsp + 0x850]
lea rcx, [rsp + 0x748]
call fcn.140058230
movss xmm2, dword [rax + 4]
movss xmm1, dword [rsp + 0x870]
lea rcx, [rsp + 0x750]
call fcn.140006700
mov qword [rsp + 0x368], rax
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x3c20]
movss dword [rsp + 0x2b4], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3c18]
mov qword [rsp + 0x370], rax
mov rax, qword [rsp + 0x340]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov rax, qword [rsp + 0x360]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x2b0]
mov dword [rsp + 0x20], eax
mov r9, qword [rsp + 0x368]
movss xmm2, dword [rsp + 0x2b4]
mov rdx, qword [rsp + 0x370]
mov rcx, qword [rsp + 0x378]
call fcn.140044110
movzx eax, byte [rsp + 0x73]
test eax, eax
je 0x140065de4
xor eax, eax
cmp eax, 1
je 0x140065de4
call fcn.14001dbd0
call fcn.14001dbd0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140065ed4
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rsp + 0x88c]
addss xmm0, dword [rax + 0x40]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x888]
lea rcx, [rsp + 0x758]
call fcn.140006700
mov rcx, rax
call fcn.14005d400
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4750]
mov dword [rsp + 0x2b8], eax
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4750]
or eax, 0x401
mov rcx, qword [rsp + 0x68]
mov dword [rcx + 0x4750], eax
call fcn.140014f30
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4774]
and eax, 0x80
mov ecx, dword [rsp + 0x9d8]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x9d8], eax
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x2b8]
mov dword [rax + 0x4750], ecx
call fcn.140023a90
mov rax, qword [rsp + 0x68]
cmp dword [rax + 0x476c], 0
jne 0x140065ed4
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x64]
mov dword [rax + 0x476c], ecx
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x9d4]
mov dword [rax + 0x4770], ecx
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x9d8]
mov dword [rax + 0x4774], ecx
mov rax, qword [rsp + 0x110]
mov rax, qword [rax + 0x290]
mov qword [rsp + 0x3a0], rax
mov rax, qword [rsp + 0xd8]
movss xmm0, dword [rax + 0x44]
movss dword [rsp + 0x2bc], xmm0
lea rcx, [rsp + 0x930]
call fcn.14002e120
add rax, 0x14
mov rcx, rax
call fcn.14000dcf0
mov dword [rsp + 0x2c0], eax
lea rdx, [rsp + 0x760]
lea rcx, [rsp + 0x850]
call fcn.1400078f0
movss xmm2, dword [rax + 4]
xorps xmm1, xmm1
lea rcx, [rsp + 0x558]
call fcn.140006700
mov r8, rax
lea rdx, [rsp + 0x850]
lea rcx, [rsp + 0x560]
call fcn.140006fe0
mov qword [rsp + 0x388], rax
xorps xmm2, xmm2
movss xmm1, dword [0x1400a47b0]
lea rcx, [rsp + 0x568]
call fcn.140006700
mov r8, rax
lea rdx, [rsp + 0x850]
lea rcx, [rsp + 0x570]
call fcn.140007030
mov qword [rsp + 0x398], rax
mov dword [rsp + 0x28], 0x50
movss xmm0, dword [rsp + 0x2bc]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x2c0]
mov r8, qword [rsp + 0x388]
mov rdx, qword [rsp + 0x398]
mov rcx, qword [rsp + 0x3a0]
call fcn.140043ee0
mov rcx, qword [0x140253040]
call fcn.14001db40
mov rax, qword [rsp + 0xc0]
mov rax, qword [rax + 0x290]
mov qword [rsp + 0x3b8], rax
xorps xmm2, xmm2
xorps xmm1, xmm1
lea rcx, [rsp + 0x578]
call fcn.140006700
mov qword [rsp + 0x3a8], rax
lea rcx, [rsp + 0x930]
call fcn.14002e120
add rax, 0x24
mov rcx, rax
call fcn.14000dcf0
mov dword [rsp + 0x2c4], eax
movss xmm2, dword [0x1400a4790]
movss xmm1, dword [0x1400a4878]
lea rcx, [rsp + 0x580]
call fcn.140006700
mov r8, rax
lea rdx, [rsp + 0x850]
lea rcx, [rsp + 0x588]
call fcn.140006fe0
mov qword [rsp + 0x3b0], rax
mov dword [rsp + 0x38], 0xc
mov dword [rsp + 0x30], 0
mov rax, qword [rsp + 0x3a8]
mov qword [rsp + 0x28], rax
movss xmm0, dword [0x1400a47a4]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x2c4]
movss xmm2, dword [0x1400a475c]
mov rdx, qword [rsp + 0x3b0]
mov rcx, qword [rsp + 0x3b8]
call fcn.140047e50
mov rax, qword [rsp + 0xc0]
mov rax, qword [rax + 0x290]
mov qword [rsp + 0x458], rax
lea rcx, [rsp + 0x930]
call fcn.14002e120
add rax, 0x24
mov rcx, rax
call fcn.14000dcf0
mov dword [rsp + 0x2c8], eax
xorps xmm2, xmm2
movss xmm1, dword [0x1400a4724]
lea rcx, [rsp + 0x590]
call fcn.140006700
mov qword [rsp + 0x3c0], rax
lea rdx, [rsp + 0x598]
lea rcx, [rsp + 0x850]
call fcn.1400078f0
movss xmm2, dword [rax + 4]
xorps xmm1, xmm1
lea rcx, [rsp + 0x5a0]
call fcn.140006700
mov r8, rax
lea rdx, [rsp + 0x850]
lea rcx, [rsp + 0x5a8]
call fcn.140006fe0
mov qword [rsp + 0x3c8], rax
mov r8, qword [rsp + 0x3c0]
mov rdx, qword [rsp + 0x3c8]
lea rcx, [rsp + 0x5b8]
call fcn.140006fe0
mov rax, qword [rax]
mov qword [rsp + 0x3d0], rax
xorps xmm2, xmm2
movss xmm1, dword [0x1400a47b0]
lea rcx, [rsp + 0x5c0]
call fcn.140006700
mov r8, rax
lea rdx, [rsp + 0x850]
lea rcx, [rsp + 0x5c8]
call fcn.140007030
mov rax, qword [rax]
mov qword [rsp + 0x3d8], rax
mov r9, qword [rsp + 0xa48]
mov r8, qword [rsp + 0x3d0]
mov rdx, qword [rsp + 0x3d8]
lea rcx, [rsp + 0x5d0]
call fcn.140058230
mov qword [rsp + 0x408], rax
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0xa48]
mov r8d, dword [rsp + 0x2c8]
mov rdx, qword [rsp + 0x408]
mov rcx, qword [rsp + 0x458]
call fcn.140044350
call fcn.14001dbd0
mov rax, qword [rsp + 0x68]
movzx eax, byte [rax + 0x5c38]
test eax, eax
je 0x14006627d
movzx eax, byte [rsp + 0x73]
test eax, eax
je 0x14006624d
xor eax, eax
test eax, eax
je 0x14006627d
lea rdx, [0x1400a313c]
lea rcx, [0x1400a3140]
call fcn.14002be20
mov r8, qword [rsp + 0x868]
mov rdx, qword [rsp + 0x108]
lea rcx, [rsp + 0x870]
call fcn.14002baa0
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x1400662a2
mov eax, dword [rsp + 0xa68]
and eax, 0x8000000
test eax, eax
jne 0x1400662a2
mov ecx, dword [rsp + 0x64]
call fcn.140010ae0
mov eax, dword [rsp + 0xa68]
and eax, 0x20
test eax, eax
je 0x1400662bc
movzx eax, byte [rsp + 0x8b]
jmp 0x1400662c4
movzx eax, byte [rsp + 0x8c]
mov rcx, qword [rsp + 0xa10]
xor rcx, rsp
call fcn.140082b30
add rsp, 0xa28
pop rdi
pop rsi
ret