Function at 0x140094f60
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, 0x808
mov rax, qword [0x14016fb40]
xor rax, rsp
mov qword [rsp + 0x7f0], rax
call fcn.140024000
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x110]
movzx eax, byte [rax + 0xc3]
test eax, eax
je 0x140094fb6
xor al, al
jmp 0x140099eb0
mov rax, qword [0x140170760]
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, 0x38f0
mov qword [rsp + 0xf0], rax
mov byte [rsp + 0x13c], 0
mov eax, dword [rsp + 0x848]
and eax, 0x4000000
test eax, eax
je 0x140095005
mov byte [rsp + 0xa7], 1
jmp 0x14009500d
mov byte [rsp + 0xa7], 0
movzx eax, byte [rsp + 0xa7]
mov byte [rsp + 0x50], al
mov eax, dword [rsp + 0x848]
and eax, 0x4000
test eax, eax
je 0x140095033
mov byte [rsp + 0xb5], 1
jmp 0x14009503b
mov byte [rsp + 0xb5], 0
movzx eax, byte [rsp + 0xb5]
mov byte [rsp + 0x60], al
mov eax, dword [rsp + 0x848]
and eax, 0x8000
test eax, eax
je 0x140095061
mov byte [rsp + 0xbe], 1
jmp 0x140095069
mov byte [rsp + 0xbe], 0
movzx eax, byte [rsp + 0xbe]
mov byte [rsp + 0x84], al
mov eax, dword [rsp + 0x848]
and eax, 0x10000
test eax, eax
jne 0x140095092
mov byte [rsp + 0xbf], 1
jmp 0x14009509a
mov byte [rsp + 0xbf], 0
movzx eax, byte [rsp + 0xbf]
mov byte [rsp + 0xb1], al
mov eax, dword [rsp + 0x848]
and eax, 0x40000
test eax, eax
je 0x1400950c3
mov byte [rsp + 0xc0], 1
jmp 0x1400950cb
mov byte [rsp + 0xc0], 0
movzx eax, byte [rsp + 0xc0]
mov byte [rsp + 0x89], al
movzx eax, byte [rsp + 0x89]
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400950f0
call fcn.14001ba50
xor r8d, r8d
mov rdx, qword [rsp + 0x828]
mov rcx, qword [rsp + 0x110]
call fcn.140024440
mov dword [rsp + 0x618], eax
movss xmm0, dword [0x14010b304]
movss dword [rsp + 0x20], xmm0
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rsp + 0x820]
lea rcx, [rsp + 0x778]
call fcn.14001cf40
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140095161
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x3d60]
mulss xmm0, dword [0x14010b2a8]
movss dword [rsp + 0x190], xmm0
jmp 0x140095173
movss xmm0, dword [rsp + 0x77c]
movss dword [rsp + 0x190], xmm0
call fcn.14001c730
movss dword [rsp + 0x258], xmm0
mov rax, qword [rsp + 0x840]
mov rax, qword [rax]
mov qword [rsp + 0x468], rax
movss xmm3, dword [rsp + 0x190]
movss xmm2, dword [rsp + 0x258]
mov rdx, qword [rsp + 0x468]
lea rcx, [rsp + 0x760]
call fcn.14001c5e0
movss xmm0, dword [rsp + 0x764]
movss dword [rsp + 0x25c], xmm0
movss xmm0, dword [rsp + 0x778]
comiss xmm0, dword [0x14010b20c]
jbe 0x140095200
mov rax, qword [rsp + 0xf0]
movss xmm0, dword [rax + 0x54]
addss xmm0, dword [rsp + 0x778]
movss dword [rsp + 0x1ac], xmm0
jmp 0x14009520c
xorps xmm0, xmm0
movss dword [rsp + 0x1ac], xmm0
movss xmm0, dword [rsp + 0x760]
addss xmm0, dword [rsp + 0x1ac]
movss xmm2, dword [rsp + 0x25c]
movaps xmm1, xmm0
lea rcx, [rsp + 0x7a8]
call fcn.140013b10
mov rax, qword [rsp + 0x110]
add rax, 0x110
lea r8, [rsp + 0x760]
mov rdx, rax
lea rcx, [rsp + 0x4d0]
call fcn.140014f60
mov rcx, qword [rsp + 0x110]
add rcx, 0x110
mov r8, rax
mov rdx, rcx
lea rcx, [rsp + 0x728]
call fcn.140013980
lea r8, [rsp + 0x7a8]
lea rdx, [rsp + 0x728]
lea rcx, [rsp + 0x4d8]
call fcn.140014f60
mov r8, rax
lea rdx, [rsp + 0x728]
lea rcx, [rsp + 0x698]
call fcn.140013980
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0x760]
mov qword [rsp + 0x620], rax
mov dword [rsp + 0x138], 0
lea rcx, [rsp + 0x7b0]
call fcn.140012520
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140095591
mov rax, qword [rsp + 0x110]
mov rax, qword [rax + 0x110]
mov qword [rsp + 0x7a0], rax
mov rax, qword [rsp + 0xf0]
movss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x698]
call fcn.140071bd0
mov r9d, 0x400
lea r8, [rsp + 0x728]
mov edx, dword [rsp + 0x618]
lea rcx, [rsp + 0x698]
call fcn.140029a50
movzx eax, al
test eax, eax
jne 0x14009535f
call fcn.140021080
xor al, al
jmp 0x140099eb0
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x49b0]
mov dword [rsp + 0x138], eax
lea rax, [rsp + 0x7b0]
mov rcx, qword [rsp + 0x68]
mov rdi, rax
lea rsi, [rcx + 0x49a8]
mov ecx, 0x3c
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x7a0]
mov qword [rax + 0x110], rcx
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4b18]
mov dword [rsp + 0x264], eax
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x618]
cmp dword [rax + 0x409c], ecx
jne 0x1400953db
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x4b18], 0
mov eax, 0x10
imul rax, rax, 7
mov rcx, qword [rsp + 0xf0]
lea rax, [rcx + rax + 0xf0]
mov rdx, rax
mov ecx, 3
call fcn.140032c20
mov rax, qword [rsp + 0xf0]
movss xmm1, dword [rax + 0x44]
mov ecx, 7
call fcn.140032e60
mov rax, qword [rsp + 0xf0]
movss xmm1, dword [rax + 0x48]
mov ecx, 8
call fcn.140032e60
xorps xmm2, xmm2
xorps xmm1, xmm1
lea rcx, [rsp + 0x4e0]
call fcn.140013b10
mov rdx, rax
mov ecx, 2
call fcn.140032db0
lea rdx, [rsp + 0x4e8]
lea rcx, [rsp + 0x728]
call fcn.140025160
mov qword [rsp + 0x420], rax
mov eax, dword [rsp + 0x618]
mov dword [rsp + 0x260], eax
mov dword [rsp + 0x20], 4
mov r9d, 1
mov r8, qword [rsp + 0x420]
mov edx, dword [rsp + 0x260]
mov rcx, qword [rsp + 0x820]
call fcn.14001aed0
mov byte [rsp + 0xd8], al
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x264]
mov dword [rax + 0x4b18], ecx
mov ecx, 3
call fcn.1400326e0
mov ecx, 1
call fcn.140032630
movzx eax, byte [rsp + 0xd8]
test eax, eax
jne 0x1400954ee
call fcn.140020780
call fcn.140021080
xor al, al
jmp 0x140099eb0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x4038]
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov eax, dword [rax + 0x168]
mov ecx, 1
mov dword [rsp + 0x268], ecx
movzx ecx, al
mov eax, dword [rsp + 0x268]
shl eax, cl
mov rcx, qword [rsp + 0xc8]
movsx ecx, word [rcx + 0x16e]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0xc8]
mov word [rcx + 0x16e], ax
mov rax, qword [rsp + 0xf0]
add rax, 0x3c
mov rcx, qword [rsp + 0xc8]
add rcx, 0x110
mov rdx, rax
call fcn.1400161a0
mov rax, qword [rsp + 0xc8]
movss xmm0, dword [rsp + 0x620]
subss xmm0, dword [rax + 0xb4]
movss dword [rsp + 0x620], xmm0
jmp 0x1400955fd
mov rax, qword [rsp + 0xf0]
movss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x698]
call fcn.140071bd0
mov eax, dword [rsp + 0x848]
and eax, 0x10000000
test eax, eax
jne 0x1400955eb
mov r9d, 0x400
lea r8, [rsp + 0x728]
mov edx, dword [rsp + 0x618]
lea rcx, [rsp + 0x698]
call fcn.140029a50
movzx eax, al
test eax, eax
jne 0x1400955eb
xor al, al
jmp 0x140099eb0
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x49b0]
mov dword [rsp + 0x138], eax
mov rax, qword [rsp + 0x68]
mov r8d, dword [rax + 0x49ac]
mov edx, dword [rsp + 0x618]
lea rcx, [rsp + 0x728]
call fcn.140029d20
mov byte [rsp + 0x77], al
movzx eax, byte [rsp + 0x77]
test eax, eax
je 0x140095639
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x4ea8], 1
mov ecx, dword [rsp + 0x618]
call fcn.140094110
mov qword [rsp + 0x58], rax
mov eax, dword [rsp + 0x138]
and eax, 0x100
test eax, eax
je 0x140095664
mov byte [rsp + 0xc2], 1
jmp 0x14009566c
mov byte [rsp + 0xc2], 0
movzx eax, byte [rsp + 0xc2]
mov byte [rsp + 0xa3], al
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x618]
cmp dword [rax + 0x409c], ecx
je 0x1400956cd
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x618]
cmp dword [rax + 0x4b18], ecx
jne 0x1400956cd
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4b24]
and eax, 1
test eax, eax
jne 0x1400956c3
mov rax, qword [rsp + 0x68]
cmp dword [rax + 0x4b3c], 2
jne 0x1400956cd
mov byte [rsp + 0xc3], 1
jmp 0x1400956d5
mov byte [rsp + 0xc3], 0
movzx eax, byte [rsp + 0xc3]
mov byte [rsp + 0x87], al
movzx eax, byte [rsp + 0x77]
test eax, eax
je 0x140095711
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0x3860]
test eax, eax
je 0x140095711
mov byte [rsp + 0x9c], 1
jmp 0x140095719
mov byte [rsp + 0x9c], 0
movzx eax, byte [rsp + 0x9c]
mov byte [rsp + 0x85], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140095770
cmp qword [rsp + 0x58], 0
je 0x140095770
mov rax, qword [rsp + 0x68]
cmp dword [rax + 0x409c], 0
jne 0x140095770
mov edx, 1
mov rcx, qword [rsp + 0xc8]
call fcn.1400941d0
mov rcx, qword [rsp + 0x68]
cmp dword [rcx + 0x40c8], eax
jne 0x140095770
mov byte [rsp + 0x9d], 1
jmp 0x140095778
mov byte [rsp + 0x9d], 0
movzx eax, byte [rsp + 0x9d]
mov byte [rsp + 0xd9], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400957c1
cmp qword [rsp + 0x58], 0
je 0x1400957c1
mov edx, 1
mov rcx, qword [rsp + 0xc8]
call fcn.1400941d0
mov rcx, qword [rsp + 0x68]
cmp dword [rcx + 0x409c], eax
jne 0x1400957c1
mov byte [rsp + 0x9e], 1
jmp 0x1400957c9
mov byte [rsp + 0x9e], 0
movzx eax, byte [rsp + 0x9e]
mov byte [rsp + 0xa5], al
mov byte [rsp + 0x73], 0
mov byte [rsp + 0x75], 0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140095806
mov rax, qword [rsp + 0xc8]
movss xmm0, dword [rax + 0x90]
movss dword [rsp + 0x1c0], xmm0
jmp 0x140095817
movss xmm0, dword [0x14010b2fc]
movss dword [rsp + 0x1c0], xmm0
movss xmm0, dword [rsp + 0x1c0]
movss dword [rsp + 0x98], xmm0
cmp qword [rsp + 0x58], 0
je 0x14009586e
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140095847
mov dword [rsp + 0x1e0], 1
jmp 0x140095852
mov dword [rsp + 0x1e0], 0
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x6b]
cmp eax, dword [rsp + 0x1e0]
je 0x14009586e
mov byte [rsp + 0x9f], 1
jmp 0x140095876
mov byte [rsp + 0x9f], 0
movzx eax, byte [rsp + 0x9f]
mov byte [rsp + 0xa2], al
movzx eax, byte [rsp + 0x85]
test eax, eax
jne 0x1400958bf
movzx eax, byte [rsp + 0xd9]
test eax, eax
jne 0x1400958bf
movzx eax, byte [rsp + 0x87]
test eax, eax
jne 0x1400958bf
movzx eax, byte [rsp + 0xa3]
test eax, eax
jne 0x1400958bf
mov byte [rsp + 0xa0], 0
jmp 0x1400958c7
mov byte [rsp + 0xa0], 1
movzx eax, byte [rsp + 0xa0]
mov byte [rsp + 0x86], al
movzx eax, byte [rsp + 0x86]
test eax, eax
jne 0x1400958f8
movzx eax, byte [rsp + 0xa5]
test eax, eax
jne 0x1400958f8
mov byte [rsp + 0xa1], 0
jmp 0x140095900
mov byte [rsp + 0xa1], 1
movzx eax, byte [rsp + 0xa1]
mov byte [rsp + 0xa4], al
movzx eax, byte [rsp + 0xa4]
test eax, eax
je 0x14009592f
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x618]
cmp dword [rax + 0x409c], ecx
jne 0x14009593f
movzx eax, byte [rsp + 0xa2]
test eax, eax
je 0x140095c44
mov rax, qword [rsp + 0x68]
add rax, 0x4eb8
mov qword [rsp + 0x58], rax
mov rcx, qword [rsp + 0x58]
call fcn.140092620
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 8]
call fcn.140094e80
mov rax, qword [rsp + 0x830]
mov qword [rsp + 0x428], rax
mov qword [rsp + 0x230], 0xffffffffffffffff
inc qword [rsp + 0x230]
mov rax, qword [rsp + 0x428]
mov rcx, qword [rsp + 0x230]
cmp byte [rax + rcx], 0
jne 0x140095982
mov rax, qword [rsp + 0x230]
mov dword [rsp + 0x118], eax
mov rax, qword [rsp + 0x58]
add rax, 0x38
mov qword [rsp + 0x430], rax
mov eax, dword [rsp + 0x118]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x430]
call fcn.140044820
mov eax, dword [rsp + 0x118]
inc eax
cdqe
mov rcx, qword [rsp + 0x58]
mov rdi, qword [rcx + 0x40]
mov rsi, qword [rsp + 0x830]
mov rcx, rax
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x618]
cmp dword [rax + 8], ecx
jne 0x140095a23
movzx eax, byte [rsp + 0xa2]
test eax, eax
jne 0x140095a23
mov dword [rsp + 0x1e4], 1
jmp 0x140095a2e
mov dword [rsp + 0x1e4], 0
movzx eax, byte [rsp + 0x1e4]
mov byte [rsp + 0x80], al
movzx eax, byte [rsp + 0x80]
test eax, eax
je 0x140095a95
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x118]
cmp dword [rax + 0x10], ecx
jne 0x140095a8d
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x48]
test eax, eax
je 0x140095a95
movsxd rax, dword [rsp + 0x118]
mov r8, rax
mov rdx, qword [rsp + 0x830]
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 0x140095a95
mov byte [rsp + 0x80], 0
mov qword [rsp + 0x6c0], 0
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x618]
mov dword [rax + 8], ecx
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x438], rax
mov eax, dword [rsp + 0x838]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x438]
call fcn.140044910
mov rax, qword [rsp + 0x58]
add rax, 0x28
mov qword [rsp + 0x440], rax
xor edx, edx
mov rcx, qword [rsp + 0x440]
call fcn.140044820
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x48], 0
lea rax, [rsp + 0x6c0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x830]
mov edx, dword [rsp + 0x838]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.1400276c0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x830]
mov rcx, qword [rsp + 0x6c0]
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 0x140095b6d
mov rcx, qword [rsp + 0x58]
call fcn.140092640
jmp 0x140095bb3
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
movss dword [rax + 0x50], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140095b90
mov dword [rsp + 0x1e8], 1
jmp 0x140095b9b
mov dword [rsp + 0x1e8], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov edx, dword [rsp + 0x1e8]
mov rcx, rax
call fcn.14009fae0
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140095c2b
mov eax, dword [rsp + 0x848]
and eax, 0x10
test eax, eax
je 0x140095bcf
mov byte [rsp + 0x75], 1
movzx eax, byte [rsp + 0x87]
test eax, eax
je 0x140095bfe
movzx eax, byte [rsp + 0x80]
test eax, eax
je 0x140095bf9
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4b24]
and eax, 4
test eax, eax
jne 0x140095bfe
mov byte [rsp + 0x75], 1
movzx eax, byte [rsp + 0xa3]
test eax, eax
jne 0x140095c26
movzx eax, byte [rsp + 0x85]
test eax, eax
je 0x140095c2b
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5c]
test eax, eax
je 0x140095c2b
mov byte [rsp + 0x75], 1
mov eax, dword [rsp + 0x848]
and eax, 0x2000
test eax, eax
je 0x140095c44
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x60], 1
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x51]
mov byte [rsp + 0x72], al
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x618]
cmp dword [rax + 0x409c], ecx
je 0x140095ca8
movzx eax, byte [rsp + 0x86]
test eax, eax
je 0x140095ca8
mov rdx, qword [rsp + 0x110]
mov ecx, dword [rsp + 0x618]
call fcn.140037520
mov rdx, qword [rsp + 0x110]
mov ecx, dword [rsp + 0x618]
call fcn.140037f40
xor edx, edx
mov rcx, qword [rsp + 0x110]
call fcn.1400233c0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x618]
cmp dword [rax + 0x409c], ecx
jne 0x140095dc5
movzx eax, byte [rsp + 0x85]
test eax, eax
je 0x140095ce0
xor r8d, r8d
mov edx, dword [rsp + 0x618]
mov ecx, 0x28f
call fcn.140038270
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4970]
or eax, 3
mov rcx, qword [rsp + 0x68]
mov dword [rcx + 0x4970], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140095d12
mov eax, dword [rsp + 0x848]
and eax, 0x80
test eax, eax
je 0x140095d2b
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4970]
or eax, 0xc
mov rcx, qword [rsp + 0x68]
mov dword [rcx + 0x4970], eax
xor r8d, r8d
mov edx, dword [rsp + 0x618]
mov ecx, 0x207
call fcn.140038270
xor r8d, r8d
mov edx, dword [rsp + 0x618]
mov ecx, 0x208
call fcn.140038270
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140095d84
xor r8d, r8d
mov edx, dword [rsp + 0x618]
mov ecx, 0x205
call fcn.140038270
xor r8d, r8d
mov edx, dword [rsp + 0x618]
mov ecx, 0x206
call fcn.140038270
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x140095da1
xor r8d, r8d
mov edx, dword [rsp + 0x618]
mov ecx, 0x4000
call fcn.140038270
mov eax, dword [rsp + 0x848]
and eax, 0x440
test eax, eax
je 0x140095dc5
xor r8d, r8d
mov edx, dword [rsp + 0x618]
mov ecx, 0x200
call fcn.140038b30
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x618]
cmp dword [rax + 0x409c], ecx
jne 0x140095de6
cmp qword [rsp + 0x58], 0
jne 0x140095de6
call fcn.14001e260
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x618]
cmp dword [rax + 0x409c], ecx
jne 0x140095e31
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0x3860]
test eax, eax
je 0x140095e31
movzx eax, byte [rsp + 0xa4]
test eax, eax
jne 0x140095e31
movzx eax, byte [rsp + 0x86]
test eax, eax
jne 0x140095e31
mov byte [rsp + 0x73], 1
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x618]
cmp dword [rax + 0x409c], ecx
je 0x140095e66
cmp qword [rsp + 0x58], 0
je 0x140095e59
movzx eax, byte [rsp + 0xa5]
test eax, eax
jne 0x140095e66
mov dword [rsp + 0x1ec], 0
jmp 0x140095e71
mov dword [rsp + 0x1ec], 1
movzx eax, byte [rsp + 0x1ec]
mov byte [rsp + 0x70], al
cmp qword [rsp + 0x58], 0
je 0x140095ebb
mov rcx, qword [rsp + 0x58]
call fcn.1400943e0
movzx eax, al
test eax, eax
jne 0x140095e9f
movzx eax, byte [rsp + 0x75]
test eax, eax
je 0x140095ebb
xor eax, eax
test eax, eax
jne 0x140095eae
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x140095ebb
mov dword [rsp + 0x1f0], 1
jmp 0x140095ec6
mov dword [rsp + 0x1f0], 0
movzx eax, byte [rsp + 0x1f0]
mov byte [rsp + 0x61], al
mov byte [rsp + 0x74], 0
mov byte [rsp + 0x8a], 0
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x140095fc9
cmp qword [rsp + 0x58], 0
je 0x140095fc9
movzx eax, byte [rsp + 0x70]
test eax, eax
jne 0x140095f0e
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x140095fc9
mov qword [rsp + 0x6b8], 0
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x448], rax
mov eax, dword [rsp + 0x838]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x448]
call fcn.140044910
lea rax, [rsp + 0x6b8]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x830]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x18]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.1400276c0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x830]
mov rcx, qword [rsp + 0x6b8]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x10], eax
mov rcx, qword [rsp + 0x58]
call fcn.140092640
movzx eax, byte [rsp + 0x61]
mov dword [rsp + 0x26c], eax
mov rcx, qword [rsp + 0x58]
call fcn.1400943e0
movzx eax, al
mov ecx, dword [rsp + 0x26c]
and ecx, eax
mov eax, ecx
mov byte [rsp + 0x61], al
movzx eax, byte [rsp + 0x70]
test eax, eax
jne 0x140095fef
movzx eax, byte [rsp + 0x61]
test eax, eax
jne 0x140095fef
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x618]
cmp dword [rax + 0x409c], ecx
jne 0x140096017
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140096017
cmp qword [rsp + 0x58], 0
je 0x140096017
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x48]
test eax, eax
je 0x140096017
mov byte [rsp + 0xa6], 1
jmp 0x14009601f
mov byte [rsp + 0xa6], 0
movzx eax, byte [rsp + 0xa6]
mov byte [rsp + 0xbc], al
cmp qword [rsp + 0x828], 0
je 0x14009608b
movzx eax, byte [rsp + 0xbc]
test eax, eax
je 0x140096058
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x320], rax
jmp 0x140096068
mov rax, qword [rsp + 0x830]
mov qword [rsp + 0x320], rax
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x320]
movsx eax, byte [rcx + rax]
test eax, eax
jne 0x14009608b
mov byte [rsp + 0xc1], 1
jmp 0x140096093
mov byte [rsp + 0xc1], 0
movzx eax, byte [rsp + 0xc1]
mov byte [rsp + 0x71], al
movzx eax, byte [rsp + 0x84]
test eax, eax
je 0x1400961cb
movzx eax, byte [rsp + 0x71]
test eax, eax
jne 0x1400961cb
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3d58]
mov qword [rsp + 0x3a8], rax
mov dx, 0x2a
mov rcx, qword [rsp + 0x3a8]
call fcn.14004f6c0
mov qword [rsp + 0x300], rax
mov rax, qword [rsp + 0x68]
add rax, 0x5d60
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3d58]
mov rcx, qword [rsp + 0x130]
movss xmm0, dword [rax + 0x14]
movss dword [rcx + 0x14], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3d58]
mov rcx, qword [rsp + 0x130]
movss xmm0, dword [rax + 0x64]
movss dword [rcx + 0x64], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3d58]
mov rcx, qword [rsp + 0x130]
movss xmm0, dword [rax + 0x68]
movss dword [rcx + 0x68], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3d58]
mov rcx, qword [rsp + 0x130]
movss xmm0, dword [rax + 0x6c]
movss dword [rcx + 0x6c], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3d58]
mov rcx, qword [rsp + 0x130]
mov rax, qword [rax + 0x40]
mov qword [rcx + 0x40], rax
mov rax, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x300]
mov qword [rax + 0x38], rcx
mov rax, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x300]
movss xmm0, dword [rcx + 4]
movss dword [rax + 0x10], xmm0
mov rcx, qword [rsp + 0x130]
call fcn.140032920
mov dword [rsp + 0x12c], 0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x618]
cmp dword [rax + 0x409c], ecx
jne 0x140099eb0
cmp qword [rsp + 0x58], 0
je 0x140096207
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x12c], eax
jmp 0x140096212
mov dword [rsp + 0x12c], 0
cmp qword [rsp + 0x58], 0
je 0x140096910
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe86], 0
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x838]
mov dword [rax + 0x4c], ecx
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x848]
mov dword [rax + 0xe88], ecx
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0xe48]
test eax, eax
jne 0x140096272
mov dword [rsp + 0x1f4], 1
jmp 0x14009627d
mov dword [rsp + 0x1f4], 0
mov rax, qword [rsp + 0x68]
movzx ecx, byte [rsp + 0x1f4]
mov byte [rax + 0x40a9], cl
mov rax, qword [rsp + 0x78]
movss xmm0, dword [rax + 0xe40]
subss xmm0, dword [rsp + 0x728]
mov rax, qword [rsp + 0xf0]
subss xmm0, dword [rax + 0x3c]
mov rax, qword [rsp + 0x58]
addss xmm0, dword [rax + 0x50]
movss dword [rsp + 0x120], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400962f7
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0xc8]
movss xmm0, dword [rax + 0xe44]
subss xmm0, dword [rcx + 0x114]
movss dword [rsp + 0x168], xmm0
jmp 0x140096315
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x3d60]
mulss xmm0, dword [0x14010b250]
movss dword [rsp + 0x168], xmm0
movss xmm0, dword [rsp + 0x168]
movss dword [rsp + 0x11c], xmm0
movzx eax, byte [rsp + 0x75]
test eax, eax
je 0x14009634b
mov rcx, qword [rsp + 0x58]
call fcn.14009c1e0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe85], 1
jmp 0x1400966cb
movzx eax, byte [rsp + 0x77]
test eax, eax
je 0x14009658b
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, word [rcx + rax + 0x386a]
cmp eax, 2
jl 0x14009658b
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5d]
test eax, eax
jne 0x14009658b
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x11c]
movss xmm2, dword [rsp + 0x120]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.14009f1f0
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, word [rcx + rax + 0x386a]
sub eax, 2
mov dword [rsp + 0x270], eax
mov eax, dword [rsp + 0x270]
cdq
and eax, 1
xor eax, edx
sub eax, edx
test eax, eax
jne 0x1400964c9
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x54], 0
je 0x14009641d
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
dec eax
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14009b060
movzx eax, ax
cmp eax, 0xa
je 0x14009641d
mov byte [rsp + 0xa8], 0
jmp 0x140096425
mov byte [rsp + 0xa8], 1
movzx eax, byte [rsp + 0xa8]
mov byte [rsp + 0xda], al
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
cmp dword [rax + 0x58], ecx
jne 0x140096452
movzx eax, byte [rsp + 0xda]
test eax, eax
jne 0x140096461
mov edx, 0x20000c
mov rcx, qword [rsp + 0x58]
call fcn.14009a610
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
cmp dword [rax + 0x58], ecx
jne 0x140096484
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov rcx, rax
call fcn.1400a0f20
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x54]
mov rcx, qword [rsp + 0x58]
call fcn.14009b550
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.14009f090
jmp 0x14009657c
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x54]
mov rcx, qword [rsp + 0x58]
call fcn.14009b060
movzx eax, ax
cmp eax, 0xa
jne 0x1400964ed
mov byte [rsp + 0xa9], 1
jmp 0x1400964f5
mov byte [rsp + 0xa9], 0
movzx eax, byte [rsp + 0xa9]
mov byte [rsp + 0xdb], al
mov edx, 0x200004
mov rcx, qword [rsp + 0x58]
call fcn.14009a610
mov edx, 0x600005
mov rcx, qword [rsp + 0x58]
call fcn.14009a610
mov edx, 0x600001
mov rcx, qword [rsp + 0x58]
call fcn.14009a610
movzx eax, byte [rsp + 0xdb]
test eax, eax
jne 0x140096570
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140096570
mov rax, qword [rsp + 0x58]
add rax, 0x5c
mov rcx, qword [rsp + 0x58]
add rcx, 0x58
mov rdx, rax
call fcn.140080380
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.140092620
jmp 0x1400966cb
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0x3860]
test eax, eax
je 0x140096633
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
jne 0x140096633
movzx eax, byte [rsp + 0x77]
test eax, eax
je 0x14009662e
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5d]
test eax, eax
je 0x1400965fc
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x11c]
movss xmm2, dword [rsp + 0x120]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.14009f7a0
jmp 0x140096624
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x11c]
movss xmm2, dword [rsp + 0x120]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.14009f1f0
mov rcx, qword [rsp + 0x58]
call fcn.140092620
jmp 0x1400966cb
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0xe48]
test eax, eax
je 0x1400966cb
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
jne 0x1400966cb
mov rax, qword [rsp + 0x78]
movss xmm0, dword [rax + 0xe0]
ucomiss xmm0, dword [0x14010b20c]
jp 0x14009668d
jne 0x14009668d
mov rax, qword [rsp + 0x78]
movss xmm0, dword [rax + 0xe4]
ucomiss xmm0, dword [0x14010b20c]
jp 0x14009668d
je 0x1400966cb
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x11c]
movss xmm2, dword [rsp + 0x120]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.14009f7a0
mov rcx, qword [rsp + 0x58]
call fcn.140092620
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
je 0x140096701
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0xe48]
test eax, eax
jne 0x140096701
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe85], 0
mov eax, dword [rsp + 0x848]
and eax, 0x400
test eax, eax
je 0x14009678f
xor r8d, r8d
mov edx, dword [rsp + 0x618]
mov ecx, 0x200
call fcn.140039410
movzx eax, al
test eax, eax
je 0x14009678f
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14009678f
mov dword [rsp + 0x754], 9
mov dword [rsp + 0x28], 2
mov rax, qword [rsp + 0x858]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x850]
mov r8d, dword [rsp + 0x848]
lea rdx, [rsp + 0x754]
mov rcx, qword [rsp + 0x68]
call fcn.140099ed0
movzx eax, al
test eax, eax
je 0x14009678f
mov edx, dword [rsp + 0x754]
mov rcx, qword [rsp + 0x58]
call fcn.14009a610
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5c]
test eax, eax
je 0x1400967af
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5e]
test eax, eax
je 0x1400967d2
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x1400967c8
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5f]
test eax, eax
jne 0x1400967d2
mov byte [rsp + 0xaa], 0
jmp 0x1400967da
mov byte [rsp + 0xaa], 1
movzx eax, byte [rsp + 0xaa]
mov byte [rsp + 0xdc], al
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x38d8], 0
jle 0x140096910
movzx eax, byte [rsp + 0xdc]
test eax, eax
jne 0x1400968ee
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400968ee
movzx eax, byte [rsp + 0x87]
test eax, eax
jne 0x1400968ee
mov dword [rsp + 0x124], 0
jmp 0x140096845
mov eax, dword [rsp + 0x124]
inc eax
mov dword [rsp + 0x124], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x38d8]
cmp dword [rsp + 0x124], eax
jge 0x1400968ee
mov rax, qword [rsp + 0x78]
add rax, 0x38d8
mov qword [rsp + 0x418], rax
mov edx, dword [rsp + 0x124]
mov rcx, qword [rsp + 0x418]
call fcn.140014720
movzx eax, word [rax]
mov dword [rsp + 0x748], eax
cmp dword [rsp + 0x748], 9
jne 0x14009689a
jmp 0x140096835
mov dword [rsp + 0x28], 2
mov rax, qword [rsp + 0x858]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x850]
mov r8d, dword [rsp + 0x848]
lea rdx, [rsp + 0x748]
mov rcx, qword [rsp + 0x68]
call fcn.140099ed0
movzx eax, al
test eax, eax
je 0x1400968e9
mov edx, dword [rsp + 0x748]
mov rcx, qword [rsp + 0x58]
call fcn.14009a610
jmp 0x140096835
mov rax, qword [rsp + 0x78]
add rax, 0x38d8
mov qword [rsp + 0x410], rax
xor edx, edx
mov rcx, qword [rsp + 0x410]
call fcn.140044910
mov byte [rsp + 0x76], 0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x618]
cmp dword [rax + 0x409c], ecx
jne 0x140097956
mov rax, qword [rsp + 0x68]
movzx eax, byte [rax + 0x40a8]
test eax, eax
jne 0x140097956
movzx eax, byte [rsp + 0x73]
test eax, eax
jne 0x140097956
mov rax, qword [rsp + 0xf0]
movss xmm0, dword [rsp + 0x624]
subss xmm0, dword [rax + 0x40]
mov rax, qword [rsp + 0x68]
divss xmm0, dword [rax + 0x3d60]
cvttss2si eax, xmm0
mov edx, 1
mov ecx, eax
call fcn.14000fcc0
mov dword [rsp + 0x140], eax
cmp qword [rsp + 0x58], 0
je 0x14009699f
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x140]
mov dword [rax + 0x64], ecx
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5d]
test eax, eax
je 0x1400969bc
mov dword [rsp + 0x16c], 0x400000
jmp 0x1400969c7
mov dword [rsp + 0x16c], 0
mov eax, dword [rsp + 0x16c]
mov dword [rsp + 0x90], eax
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x1400969f3
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5e]
mov byte [rsp + 0xab], al
jmp 0x140096a06
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5c]
mov byte [rsp + 0xab], al
movzx eax, byte [rsp + 0xab]
mov byte [rsp + 0x82], al
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x140096a58
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5f]
test eax, eax
je 0x140096a58
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5c]
test eax, eax
jne 0x140096a58
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5e]
test eax, eax
jne 0x140096a58
mov byte [rsp + 0xac], 1
jmp 0x140096a60
mov byte [rsp + 0xac], 0
movzx eax, byte [rsp + 0xac]
mov byte [rsp + 0x81], al
mov dword [rsp + 0x380], 1
mov r8d, 1
mov edx, dword [rsp + 0x618]
mov ecx, 0xa39
call fcn.140039410
movzx eax, al
test eax, eax
jne 0x140096ab6
mov r8d, 1
mov edx, dword [rsp + 0x618]
mov ecx, 0x220a
call fcn.140039410
movzx eax, al
test eax, eax
je 0x140096aef
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140096aef
movzx eax, byte [rsp + 0x84]
test eax, eax
jne 0x140096aef
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140096ae5
mov rcx, qword [rsp + 0x58]
call fcn.1400943e0
movzx eax, al
test eax, eax
je 0x140096aef
mov byte [rsp + 0xad], 1
jmp 0x140096af7
mov byte [rsp + 0xad], 0
movzx eax, byte [rsp + 0xad]
mov byte [rsp + 0x88], al
xor r8d, r8d
mov edx, dword [rsp + 0x618]
mov ecx, 0xa24
call fcn.140039410
movzx eax, al
test eax, eax
jne 0x140096b3c
xor r8d, r8d
mov edx, dword [rsp + 0x618]
mov ecx, 0x1209
call fcn.140039410
movzx eax, al
test eax, eax
je 0x140096b6c
movzx eax, byte [rsp + 0x84]
test eax, eax
jne 0x140096b6c
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140096b62
mov rcx, qword [rsp + 0x58]
call fcn.1400943e0
movzx eax, al
test eax, eax
je 0x140096b6c
mov byte [rsp + 0xae], 1
jmp 0x140096b74
mov byte [rsp + 0xae], 0
movzx eax, byte [rsp + 0xae]
mov byte [rsp + 0xd4], al
mov r8d, 1
mov edx, dword [rsp + 0x618]
mov ecx, 0xa37
call fcn.140039410
movzx eax, al
test eax, eax
jne 0x140096bbf
mov r8d, 1
mov edx, dword [rsp + 0x618]
mov ecx, 0x2209
call fcn.140039410
movzx eax, al
test eax, eax
je 0x140096bd2
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140096bd2
mov byte [rsp + 0xaf], 1
jmp 0x140096bda
mov byte [rsp + 0xaf], 0
movzx eax, byte [rsp + 0xaf]
mov byte [rsp + 0xd5], al
mov r8d, 1
mov edx, dword [rsp + 0x618]
mov ecx, 0xa3b
call fcn.140039410
movzx eax, al
test eax, eax
je 0x140096c26
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140096c26
movzx eax, byte [rsp + 0xb1]
test eax, eax
je 0x140096c26
mov byte [rsp + 0xb0], 1
jmp 0x140096c2e
mov byte [rsp + 0xb0], 0
movzx eax, byte [rsp + 0xb0]
mov byte [rsp + 0xba], al
mov r8d, 1
mov edx, dword [rsp + 0x618]
mov ecx, 0xa3a
call fcn.140039410
movzx eax, al
test eax, eax
jne 0x140096c82
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x140096ca1
mov r8d, 1
mov edx, dword [rsp + 0x618]
mov ecx, 0x2a3b
call fcn.140039410
movzx eax, al
test eax, eax
je 0x140096ca1
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140096ca1
movzx eax, byte [rsp + 0xb1]
test eax, eax
je 0x140096ca1
mov byte [rsp + 0xb2], 1
jmp 0x140096ca9
mov byte [rsp + 0xb2], 0
movzx eax, byte [rsp + 0xb2]
mov byte [rsp + 0xe4], al
xor r8d, r8d
mov edx, dword [rsp + 0x618]
mov ecx, 0xa22
call fcn.140039410
mov byte [rsp + 0xe5], al
mov rax, qword [rsp + 0x78]
mov eax, dword [rax]
and eax, 2
test eax, eax
je 0x140096cfa
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 4]
and eax, 1
test eax, eax
je 0x140096cfa
mov byte [rsp + 0xb3], 1
jmp 0x140096d02
mov byte [rsp + 0xb3], 0
movzx eax, byte [rsp + 0xb3]
mov byte [rsp + 0xb6], al
mov dl, 1
mov ecx, 0x20d
call fcn.140028ca0
movzx eax, al
test eax, eax
jne 0x140096d41
mov dl, 1
mov ecx, 0x273
call fcn.140028ca0
movzx eax, al
test eax, eax
jne 0x140096d41
mov byte [rsp + 0xb4], 0
jmp 0x140096d49
mov byte [rsp + 0xb4], 1
movzx eax, byte [rsp + 0xb4]
mov byte [rsp + 0xdd], al
movzx eax, byte [rsp + 0xb6]
test eax, eax
je 0x140096d94
xor edx, edx
mov ecx, 0x27c
call fcn.140028ca0
movzx eax, al
test eax, eax
jne 0x140096d8a
xor edx, edx
mov ecx, 0x27b
call fcn.140028ca0
movzx eax, al
test eax, eax
je 0x140096d94
mov byte [rsp + 0xbd], 1
jmp 0x140096d9c
mov byte [rsp + 0xbd], 0
movzx eax, byte [rsp + 0xbd]
mov byte [rsp + 0xb8], al
mov r8d, 1
mov edx, dword [rsp + 0x618]
mov ecx, 0x20e
call fcn.140039410
movzx eax, al
test eax, eax
jne 0x140096dfd
movzx eax, byte [rsp + 0xb6]
test eax, eax
je 0x140096df3
mov r8d, 1
mov edx, dword [rsp + 0x618]
mov ecx, 0x27a
call fcn.140039410
movzx eax, al
test eax, eax
jne 0x140096dfd
mov byte [rsp + 0xb7], 0
jmp 0x140096e05
mov byte [rsp + 0xb7], 1
movzx eax, byte [rsp + 0xb7]
mov byte [rsp + 0xde], al
mov dl, 1
mov ecx, 0x201
call fcn.140028ca0
movzx eax, al
test eax, eax
je 0x140096e95
movzx eax, byte [rsp + 0x81]
test eax, eax
je 0x140096e40
mov dword [rsp + 0x1b4], 0x200004
jmp 0x140096e72
movzx eax, byte [rsp + 0x82]
test eax, eax
je 0x140096e59
mov dword [rsp + 0x170], 0x20000c
jmp 0x140096e64
mov dword [rsp + 0x170], 0x200000
mov eax, dword [rsp + 0x170]
mov dword [rsp + 0x1b4], eax
mov eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x1b4]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14009a610
jmp 0x14009790e
mov dl, 1
mov ecx, 0x202
call fcn.140028ca0
movzx eax, al
test eax, eax
je 0x140096f16
movzx eax, byte [rsp + 0x81]
test eax, eax
je 0x140096ec1
mov dword [rsp + 0x178], 0x200005
jmp 0x140096ef3
movzx eax, byte [rsp + 0x82]
test eax, eax
je 0x140096eda
mov dword [rsp + 0x174], 0x20000d
jmp 0x140096ee5
mov dword [rsp + 0x174], 0x200001
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.14009a610
jmp 0x14009790e
mov dl, 1
mov ecx, 0x203
call fcn.140028ca0
movzx eax, al
test eax, eax
je 0x140096fc8
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140096fc8
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5c]
test eax, eax
je 0x140096f81
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x90]
subss xmm0, dword [rcx + 0x3d60]
xorps xmm1, xmm1
call fcn.14000fcf0
movaps xmm1, xmm0
mov rcx, qword [rsp + 0xc8]
call fcn.140038af0
jmp 0x140096fc3
movzx eax, byte [rsp + 0x81]
test eax, eax
je 0x140096f9a
mov dword [rsp + 0x17c], 0x200006
jmp 0x140096fa5
mov dword [rsp + 0x17c], 0x200002
mov eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x17c]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14009a610
jmp 0x14009790e
mov dl, 1
mov ecx, 0x204
call fcn.140028ca0
movzx eax, al
test eax, eax
je 0x1400970a0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400970a0
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5c]
test eax, eax
je 0x140097059
call fcn.140024f90
movss dword [rsp + 0x274], xmm0
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x90]
addss xmm0, dword [rcx + 0x3d60]
movss dword [rsp + 0x278], xmm0
movss xmm1, dword [rsp + 0x274]
movss xmm0, dword [rsp + 0x278]
call fcn.14000fd60
movaps xmm1, xmm0
mov rcx, qword [rsp + 0xc8]
call fcn.140038af0
jmp 0x14009709b
movzx eax, byte [rsp + 0x81]
test eax, eax
je 0x140097072
mov dword [rsp + 0x180], 0x200007
jmp 0x14009707d
mov dword [rsp + 0x180], 0x200003
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.14009a610
jmp 0x14009790e
mov dl, 1
mov ecx, 0x205
call fcn.140028ca0
movzx eax, al
test eax, eax
je 0x140097108
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140097108
mov eax, dword [rsp + 0x90]
or eax, 0x20000e
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14009a610
cvtsi2ss xmm0, dword [rsp + 0x140]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3d60]
movss xmm1, dword [rsp + 0x98]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x98], xmm0
jmp 0x14009790e
mov dl, 1
mov ecx, 0x206
call fcn.140028ca0
movzx eax, al
test eax, eax
je 0x140097170
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140097170
mov eax, dword [rsp + 0x90]
or eax, 0x20000f
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14009a610
cvtsi2ss xmm0, dword [rsp + 0x140]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3d60]
movss xmm1, dword [rsp + 0x98]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x98], xmm0
jmp 0x14009790e
mov dl, 1
mov ecx, 0x207
call fcn.140028ca0
movzx eax, al
test eax, eax
je 0x1400971d1
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5c]
test eax, eax
je 0x1400971a8
mov eax, dword [rsp + 0x90]
or eax, 0x200006
mov dword [rsp + 0x184], eax
jmp 0x1400971bb
mov eax, dword [rsp + 0x90]
or eax, 0x200004
mov dword [rsp + 0x184], eax
mov edx, dword [rsp + 0x184]
mov rcx, qword [rsp + 0x58]
call fcn.14009a610
jmp 0x14009790e
mov dl, 1
mov ecx, 0x208
call fcn.140028ca0
movzx eax, al
test eax, eax
je 0x140097232
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5c]
test eax, eax
je 0x140097209
mov eax, dword [rsp + 0x90]
or eax, 0x200007
mov dword [rsp + 0x188], eax
jmp 0x14009721c
mov eax, dword [rsp + 0x90]
or eax, 0x200005
mov dword [rsp + 0x188], eax
mov edx, dword [rsp + 0x188]
mov rcx, qword [rsp + 0x58]
call fcn.14009a610
jmp 0x14009790e
mov dl, 1
mov ecx, 0x20a
call fcn.140028ca0
movzx eax, al
test eax, eax
je 0x1400972a3
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1400972a3
movzx eax, byte [rsp + 0x88]
test eax, eax
jne 0x1400972a3
mov rcx, qword [rsp + 0x58]
call fcn.1400943e0
movzx eax, al
test eax, eax
jne 0x140097286
movzx eax, byte [rsp + 0x82]
test eax, eax
je 0x140097286
mov edx, 0x60000d
mov rcx, qword [rsp + 0x58]
call fcn.14009a610
mov eax, dword [rsp + 0x90]
or eax, 0x200008
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14009a610
jmp 0x14009790e
mov dl, 1
mov ecx, 0x20b
call fcn.140028ca0
movzx eax, al
test eax, eax
je 0x14009735a
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14009735a
mov rcx, qword [rsp + 0x58]
call fcn.1400943e0
movzx eax, al
test eax, eax
jne 0x14009733d
movzx eax, byte [rsp + 0x82]
test eax, eax
je 0x1400972f5
mov edx, 0x60000c
mov rcx, qword [rsp + 0x58]
call fcn.14009a610
jmp 0x14009733d
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x14009733d
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5f]
test eax, eax
je 0x14009733d
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5e]
test eax, eax
jne 0x14009733d
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5c]
test eax, eax
jne 0x14009733d
mov edx, 0x600004
mov rcx, qword [rsp + 0x58]
call fcn.14009a610
mov eax, dword [rsp + 0x90]
or eax, 0x200009
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14009a610
jmp 0x14009790e
movzx eax, byte [rsp + 0xdd]
test eax, eax
jne 0x140097376
movzx eax, byte [rsp + 0xb8]
test eax, eax
je 0x140097493
mov eax, dword [rsp + 0x848]
and eax, 0x800
test eax, eax
je 0x140097393
mov dword [rsp + 0x18c], 1
jmp 0x14009739e
mov dword [rsp + 0x18c], 0
movzx eax, byte [rsp + 0x18c]
mov byte [rsp + 0xb9], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400973fa
movzx eax, byte [rsp + 0xb8]
test eax, eax
jne 0x1400973fa
movzx eax, byte [rsp + 0xb9]
test eax, eax
je 0x1400973de
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5c]
test eax, eax
je 0x1400973fa
movzx eax, byte [rsp + 0xb9]
test eax, eax
jne 0x14009742b
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe5c]
test eax, eax
je 0x14009742b
mov byte [rsp + 0x8a], 1
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x54]
test eax, eax
je 0x140097424
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140097424
mov rcx, qword [rsp + 0x58]
call fcn.14009c1e0
jmp 0x140097429
mov byte [rsp + 0x73], 1
jmp 0x14009748e
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14009748e
mov dword [rsp + 0x750], 0xa
mov dword [rsp + 0x28], 2
mov rax, qword [rsp + 0x858]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x850]
mov r8d, dword [rsp + 0x848]
lea rdx, [rsp + 0x750]
mov rcx, qword [rsp + 0x68]
call fcn.140099ed0
movzx eax, al
test eax, eax
je 0x14009748e
mov edx, dword [rsp + 0x750]
mov rcx, qword [rsp + 0x58]
call fcn.14009a610
jmp 0x14009790e
movzx eax, byte [rsp + 0xde]
test eax, eax
je 0x140097505
mov eax, dword [rsp + 0x848]
and eax, 0x100000
test eax, eax
je 0x1400974e4
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x830]
movsx eax, byte [rcx + rax]
test eax, eax
je 0x1400974cf
mov byte [rsp + 0x76], 1
jmp 0x1400974e2
mov byte [rsp + 0x61], 0
movzx eax, byte [rsp + 0x61]
mov byte [rsp + 0x70], al
mov byte [rsp + 0x73], 1
jmp 0x140097500
mov byte [rsp + 0x76], 1
movzx eax, byte [rsp + 0x76]
mov byte [rsp + 0x73], al
mov byte [rsp + 0x61], 0
movzx eax, byte [rsp + 0x61]
mov byte [rsp + 0x70], al
jmp 0x14009790e
movzx eax, byte [rsp + 0xba]
test eax, eax
jne 0x14009751d
movzx eax, byte [rsp + 0xe4]
test eax, eax
je 0x140097561
movzx eax, byte [rsp + 0xba]
test eax, eax
je 0x140097536
mov dword [rsp + 0x194], 0x20000a
jmp 0x140097541
mov dword [rsp + 0x194], 0x20000b
mov edx, dword [rsp + 0x194]
mov rcx, qword [rsp + 0x58]
call fcn.14009a610
mov rcx, qword [rsp + 0x58]
call fcn.14008c280
jmp 0x14009790e
movzx eax, byte [rsp + 0xe5]
test eax, eax
je 0x140097588
mov rcx, qword [rsp + 0x58]
call fcn.14009c1e0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
jmp 0x14009790e
movzx eax, byte [rsp + 0x88]
test eax, eax
jne 0x1400975a4
movzx eax, byte [rsp + 0xd4]
test eax, eax
je 0x14009774a
mov rax, qword [rsp + 0x78]
cmp qword [rax + 0xa8], 0
je 0x1400976fc
mov rcx, qword [rsp + 0x58]
call fcn.1400943e0
movzx eax, al
test eax, eax
je 0x1400975e6
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.14000fd30
mov dword [rsp + 0x198], eax
jmp 0x1400975f1
mov dword [rsp + 0x198], 0
mov eax, dword [rsp + 0x198]
mov dword [rsp + 0x1a4], eax
mov rcx, qword [rsp + 0x58]
call fcn.1400943e0
movzx eax, al
test eax, eax
je 0x14009762e
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.14000fcc0
mov dword [rsp + 0x19c], eax
jmp 0x14009763d
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0xc]
mov dword [rsp + 0x19c], eax
mov eax, dword [rsp + 0x19c]
mov dword [rsp + 0x1a0], eax
movsxd rax, dword [rsp + 0x1a0]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x20]
lea rax, [rcx + rax*2]
movsxd rcx, dword [rsp + 0x1a4]
mov rdx, qword [rsp + 0x58]
mov rdx, qword [rdx + 0x20]
lea rcx, [rdx + rcx*2]
mov rdx, rax
call fcn.140027630
inc eax
mov dword [rsp + 0x1a8], eax
movsxd rax, dword [rsp + 0x1a8]
mov rcx, rax
call fcn.14002b220
mov qword [rsp + 0x2e0], rax
movsxd rax, dword [rsp + 0x1a0]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x20]
lea rax, [rcx + rax*2]
movsxd rcx, dword [rsp + 0x1a4]
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 + 0x1a8]
mov rcx, qword [rsp + 0x2e0]
call fcn.1400277c0
mov rcx, qword [rsp + 0x2e0]
call fcn.1400378d0
mov rcx, qword [rsp + 0x2e0]
call fcn.14002b290
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x140097745
mov rcx, qword [rsp + 0x58]
call fcn.1400943e0
movzx eax, al
test eax, eax
jne 0x140097723
mov rcx, qword [rsp + 0x58]
call fcn.14009c1e0
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.14009f2a0
jmp 0x14009790e
movzx eax, byte [rsp + 0xd5]
test eax, eax
je 0x14009790e
call fcn.140023aa0
mov qword [rsp + 0x2e8], rax
cmp qword [rsp + 0x2e8], 0
je 0x14009790e
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x3a0], rax
mov qword [rsp + 0x228], 0xffffffffffffffff
inc qword [rsp + 0x228]
mov rax, qword [rsp + 0x3a0]
mov rcx, qword [rsp + 0x228]
cmp byte [rax + rcx], 0
jne 0x140097792
mov rax, qword [rsp + 0x228]
mov dword [rsp + 0x27c], eax
mov eax, dword [rsp + 0x27c]
inc eax
cdqe
shl rax, 1
mov rcx, rax
call fcn.14002b220
mov qword [rsp + 0x200], rax
mov dword [rsp + 0xf8], 0
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x238], rax
mov rax, qword [rsp + 0x238]
movsx eax, byte [rax]
test eax, eax
je 0x1400978af
xor r8d, r8d
mov rdx, qword [rsp + 0x238]
lea rcx, [rsp + 0x74c]
call fcn.140026f10
cdqe
mov rcx, qword [rsp + 0x238]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x238], rax
mov dword [rsp + 0x28], 4
mov rax, qword [rsp + 0x858]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x850]
mov r8d, dword [rsp + 0x848]
lea rdx, [rsp + 0x74c]
mov rcx, qword [rsp + 0x68]
call fcn.140099ed0
movzx eax, al
test eax, eax
jne 0x14009787e
jmp 0x1400977f8
movsxd rax, dword [rsp + 0xf8]
mov rcx, qword [rsp + 0x200]
movzx edx, word [rsp + 0x74c]
mov word [rcx + rax*2], dx
mov eax, dword [rsp + 0xf8]
inc eax
mov dword [rsp + 0xf8], eax
jmp 0x1400977f8
movsxd rax, dword [rsp + 0xf8]
xor ecx, ecx
mov rdx, qword [rsp + 0x200]
mov word [rdx + rax*2], cx
cmp dword [rsp + 0xf8], 0
jle 0x140097901
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov r9d, dword [rsp + 0xf8]
mov r8, qword [rsp + 0x200]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1400a0e40
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rcx, qword [rsp + 0x200]
call fcn.14002b290
mov rcx, qword [rsp + 0x58]
call fcn.1400943e0
movzx eax, al
test eax, eax
je 0x14009793b
xor eax, eax
test eax, eax
jne 0x14009792e
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x14009793b
mov dword [rsp + 0x1b0], 1
jmp 0x140097946
mov dword [rsp + 0x1b0], 0
movzx eax, byte [rsp + 0x61]
or eax, dword [rsp + 0x1b0]
mov byte [rsp + 0x61], al
mov qword [rsp + 0x108], 0
mov dword [rsp + 0x94], 0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x618]
cmp dword [rax + 0x409c], ecx
jne 0x14009818b
movzx eax, byte [rsp + 0x76]
test eax, eax
je 0x140097b37
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140097b37
mov eax, dword [rsp + 0x848]
and eax, 0x100000
test eax, eax
je 0x1400979f4
lea rax, [0x14012587f]
mov qword [rsp + 0x108], rax
mov dword [rsp + 0x94], 0
mov byte [rsp + 0x74], 1
mov rax, qword [rsp + 0x58]
add rax, 0x54
xor r9d, r9d
lea r8, [rsp + 0x768]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1400a0f70
jmp 0x140097b37
mov rax, qword [rsp + 0x830]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x40]
sub rcx, rax
movzx edx, byte [rax]
cmp dl, byte [rax + rcx]
jne 0x140097a1b
inc rax
test dl, dl
jne 0x140097a08
xor eax, eax
jmp 0x140097a20
sbb eax, eax
or eax, 1
test eax, eax
je 0x140097b37
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x40]
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x38]
dec eax
mov dword [rsp + 0x94], eax
mov byte [rsp + 0x74], 1
lea rcx, [rsp + 0x6a8]
call fcn.140010650
nop
cmp dword [rsp + 0x94], 0
jle 0x140097adc
movsxd rax, dword [rsp + 0x94]
mov rcx, qword [rsp + 0x108]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x108]
call fcn.140027550
inc eax
mov edx, eax
lea rcx, [rsp + 0x6a8]
call fcn.140044910
movsxd rax, dword [rsp + 0x94]
mov rcx, qword [rsp + 0x108]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x20], 0
mov r9, rax
mov r8, qword [rsp + 0x108]
mov edx, dword [rsp + 0x6a8]
mov rcx, qword [rsp + 0x6b0]
call fcn.1400276c0
cmp dword [rsp + 0x94], 0
jle 0x140097af8
mov eax, dword [rsp + 0x6a8]
dec eax
mov dword [rsp + 0x1f8], eax
jmp 0x140097b03
mov dword [rsp + 0x1f8], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov r9d, dword [rsp + 0x1f8]
mov r8, qword [rsp + 0x6b0]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1400a0f70
nop
lea rcx, [rsp + 0x6a8]
call fcn.140013d60
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140097b9a
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x48], 1
mov rax, qword [rsp + 0x58]
add rax, 0x28
mov qword [rsp + 0x398], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x18]
lea eax, [rax*4 + 1]
mov edx, eax
mov rcx, qword [rsp + 0x398]
call fcn.140044820
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.1400277c0
movzx eax, byte [rsp + 0x76]
test eax, eax
je 0x140097bc7
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x140097bbd
mov eax, dword [rsp + 0x848]
and eax, 0x20
test eax, eax
jne 0x140097bc7
mov byte [rsp + 0xbb], 0
jmp 0x140097bcf
mov byte [rsp + 0xbb], 1
movzx eax, byte [rsp + 0xbb]
mov byte [rsp + 0xd6], al
movzx eax, byte [rsp + 0xd6]
test eax, eax
je 0x14009818b
mov eax, dword [rsp + 0x848]
and eax, 0x801c0
test eax, eax
je 0x14009812d
mov dword [rsp + 0xe0], 0
mov dword [rsp + 0x128], 0
mov eax, dword [rsp + 0x848]
and eax, 0x40
test eax, eax
je 0x140097c5c
xor r8d, r8d
mov edx, dword [rsp + 0x618]
mov ecx, 0x200
call fcn.140039410
movzx eax, al
test eax, eax
je 0x140097c5c
mov dword [rsp + 0xe0], 0x40
mov dword [rsp + 0x128], 0x200
jmp 0x140097d1d
mov eax, dword [rsp + 0x848]
and eax, 0x80
test eax, eax
je 0x140097c9a
mov dl, 1
mov ecx, 0x203
call fcn.140028ca0
movzx eax, al
test eax, eax
je 0x140097c9a
mov dword [rsp + 0xe0], 0x80
mov dword [rsp + 0x128], 0x203
jmp 0x140097d1d
mov eax, dword [rsp + 0x848]
and eax, 0x80
test eax, eax
je 0x140097cd5
mov dl, 1
mov ecx, 0x204
call fcn.140028ca0
movzx eax, al
test eax, eax
je 0x140097cd5
mov dword [rsp + 0xe0], 0x80
mov dword [rsp + 0x128], 0x204
jmp 0x140097d1d
mov eax, dword [rsp + 0x848]
and eax, 0x80000
test eax, eax
je 0x140097d02
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe86]
test eax, eax
je 0x140097d02
mov dword [rsp + 0xe0], 0x80000
jmp 0x140097d1d
mov eax, dword [rsp + 0x848]
and eax, 0x100
test eax, eax
je 0x140097d1d
mov dword [rsp + 0xe0], pe_nt_image_headers64
cmp dword [rsp + 0xe0], 0
je 0x14009812d
lea rcx, [rsp + 0x650]
call fcn.14008ac20
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x650], rax
mov eax, dword [rsp + 0xe0]
mov dword [rsp + 0x658], eax
mov eax, dword [rsp + 0x848]
mov dword [rsp + 0x65c], eax
mov rax, qword [rsp + 0x858]
mov qword [rsp + 0x660], rax
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x140097d8c
mov rax, qword [rsp + 0x830]
mov qword [rsp + 0x308], rax
jmp 0x140097d9d
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 + 0x128]
mov dword [rsp + 0x66c], eax
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x670], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x678], eax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x4c]
mov dword [rsp + 0x67c], eax
mov byte [rsp + 0x680], 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.140027630
mov dword [rsp + 0x684], eax
mov eax, dword [rsp + 0x684]
mov dword [rsp + 0x280], 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.140027630
mov dword [rsp + 0x688], eax
mov eax, dword [rsp + 0x688]
mov dword [rsp + 0x284], 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.140027630
mov dword [rsp + 0x68c], eax
mov eax, dword [rsp + 0x68c]
mov dword [rsp + 0x244], eax
mov rax, qword [rsp + 0x850]
mov qword [rsp + 0x388], rax
lea rcx, [rsp + 0x650]
call qword [rsp + 0x388]
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x140097eea
mov rax, qword [rsp + 0x830]
mov qword [rsp + 0x310], rax
jmp 0x140097efb
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 + 0x680]
mov byte [rsp + 0x83], al
mov eax, dword [rsp + 0x280]
cmp dword [rsp + 0x684], eax
jne 0x140097f36
movzx eax, byte [rsp + 0x83]
test eax, eax
je 0x140097f70
movsxd rax, dword [rsp + 0x684]
mov rcx, qword [rsp + 0x670]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x670]
call fcn.140027550
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x54], eax
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov eax, dword [rsp + 0x284]
cmp dword [rsp + 0x688], eax
jne 0x140097f8c
movzx eax, byte [rsp + 0x83]
test eax, eax
je 0x140097fe9
mov eax, dword [rsp + 0x684]
cmp dword [rsp + 0x688], eax
jne 0x140097fad
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
mov dword [rsp + 0x1b8], eax
jmp 0x140097fda
movsxd rax, dword [rsp + 0x688]
mov rcx, qword [rsp + 0x670]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x670]
call fcn.140027550
mov dword [rsp + 0x1b8], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x1b8]
mov dword [rax + 0x58], ecx
mov eax, dword [rsp + 0x244]
cmp dword [rsp + 0x68c], eax
jne 0x140098005
movzx eax, byte [rsp + 0x83]
test eax, eax
je 0x140098062
mov eax, dword [rsp + 0x688]
cmp dword [rsp + 0x68c], eax
jne 0x140098026
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x58]
mov dword [rsp + 0x1bc], eax
jmp 0x140098053
movsxd rax, dword [rsp + 0x68c]
mov rcx, qword [rsp + 0x670]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x670]
call fcn.140027550
mov dword [rsp + 0x1bc], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x1bc]
mov dword [rax + 0x5c], ecx
movzx eax, byte [rsp + 0x83]
test eax, eax
je 0x14009812d
mov r8d, dword [rsp + 0x678]
mov rdx, qword [rsp + 0x670]
mov rcx, qword [rsp + 0x58]
call fcn.14009a270
mov eax, dword [rsp + 0x12c]
cmp dword [rsp + 0x678], eax
jle 0x1400980e2
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x1400980e2
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x370], rax
mov eax, dword [rsp + 0x12c]
mov ecx, dword [rsp + 0x678]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x58]
add eax, dword [rcx + 0x18]
mov edx, eax
mov rcx, qword [rsp + 0x370]
call fcn.140044910
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8, qword [rsp + 0x670]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x18]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.1400276c0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x678]
mov dword [rax + 0x10], ecx
mov rcx, qword [rsp + 0x58]
call fcn.140092620
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14009818b
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov rcx, qword [rsp + 0x830]
sub rcx, rax
movzx edx, byte [rax]
cmp dl, byte [rax + rcx]
jne 0x14009815d
inc rax
test dl, dl
jne 0x14009814a
xor eax, eax
jmp 0x140098162
sbb eax, eax
or eax, 1
test eax, eax
je 0x14009818b
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x94], eax
mov byte [rsp + 0x74], 1
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x618]
cmp dword [rax + 0x5d48], ecx
jne 0x14009823b
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x618]
cmp dword [rax + 0x409c], ecx
je 0x14009822c
call fcn.140028640
movzx eax, al
test eax, eax
je 0x14009822c
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14009822c
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x5d58]
mov rcx, qword [rsp + 0x830]
sub rcx, rax
movzx edx, byte [rax]
cmp dl, byte [rax + rcx]
jne 0x1400981f6
inc rax
test dl, dl
jne 0x1400981e3
xor eax, eax
jmp 0x1400981fb
sbb eax, eax
or eax, 1
test eax, eax
je 0x14009822c
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x5d58]
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x5d50]
dec eax
mov dword [rsp + 0x94], eax
mov byte [rsp + 0x74], 1
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x5d48], 0
cmp qword [rsp + 0x108], 0
je 0x140098365
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x140098334
lea rcx, [rsp + 0x6e0]
call fcn.14008ac20
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x6e0], rax
mov dword [rsp + 0x6e8], 0x40000
mov eax, dword [rsp + 0x848]
mov dword [rsp + 0x6ec], eax
mov rax, qword [rsp + 0x830]
mov qword [rsp + 0x700], rax
mov eax, dword [rsp + 0x94]
mov dword [rsp + 0x708], eax
mov eax, dword [rsp + 0x94]
inc eax
mov edx, eax
mov ecx, dword [rsp + 0x838]
call fcn.14000fcc0
mov dword [rsp + 0x70c], eax
mov rax, qword [rsp + 0x858]
mov qword [rsp + 0x6f0], rax
mov rax, qword [rsp + 0x850]
mov qword [rsp + 0x360], rax
lea rcx, [rsp + 0x6e0]
call qword [rsp + 0x360]
mov rax, qword [rsp + 0x700]
mov qword [rsp + 0x830], rax
mov eax, dword [rsp + 0x70c]
mov dword [rsp + 0x838], eax
mov eax, dword [rsp + 0x838]
dec eax
mov edx, eax
mov ecx, dword [rsp + 0x708]
call fcn.14000fd30
mov dword [rsp + 0x94], eax
mov eax, dword [rsp + 0x94]
inc eax
mov edx, dword [rsp + 0x838]
mov ecx, eax
call fcn.14000fd30
cdqe
mov r8, rax
mov rdx, qword [rsp + 0x108]
mov rcx, qword [rsp + 0x830]
call fcn.140026eb0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x618]
cmp dword [rax + 0x409c], ecx
jne 0x140098389
movzx eax, byte [rsp + 0x73]
test eax, eax
je 0x140098389
call fcn.14001e260
jmp 0x1400983ac
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x618]
cmp dword [rax + 0x409c], ecx
jne 0x1400983ac
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x61b0], 1
mov eax, 4
mov eax, eax
mov ecx, dword [0x140171690]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov eax, dword [rax + rcx]
cmp dword [0x140170af0], eax
jle 0x14009841c
lea rcx, [0x140170af0]
call fcn.140101460
cmp dword [0x140170af0], 0xffffffff
jne 0x14009841c
mov edx, 0x10
lea rcx, [0x140170ae0]
call fcn.14000c1d0
lea rcx, [0x140170ae0]
call fcn.14006a010
lea rcx, [0x140106aa0]
call fcn.140100fa4
nop
lea rcx, [0x140170af0]
call fcn.1401013f4
lea rdx, [rsp + 0x618]
lea rcx, [0x140170ae0]
call fcn.14006ab70
mov qword [rsp + 0x150], rax
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x18]
mulss xmm0, dword [0x14010b2a0]
movss dword [rsp + 0x2c4], xmm0
call fcn.1400284e0
movzx eax, al
test eax, eax
jne 0x140098476
movzx eax, byte [rsp + 0x77]
test eax, eax
jne 0x140098476
xorps xmm0, xmm0
movss dword [rsp + 0x1dc], xmm0
jmp 0x140098487
movss xmm0, dword [0x140108eb8]
movss dword [rsp + 0x1dc], xmm0
movss xmm2, dword [rsp + 0x2c4]
movss xmm1, dword [rsp + 0x1dc]
mov rax, qword [rsp + 0x150]
movss xmm0, dword [rax + 0x24]
call fcn.14000fc80
mov rax, qword [rsp + 0x150]
movss dword [rax + 0x24], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1400985bd
call fcn.140025700
mov qword [rsp + 0x3e8], rax
movss xmm0, dword [0x14013b564]
movss dword [rsp + 0x2a8], xmm0
movss xmm1, dword [0x140108eb8]
lea rcx, [0x1401708f0]
call fcn.140023c40
mov dword [rsp + 0x2a4], eax
mov dword [rsp + 0x28], 0
movss xmm0, dword [rsp + 0x2a8]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x2a4]
lea r8, [rsp + 0x730]
lea rdx, [rsp + 0x728]
mov rcx, qword [rsp + 0x3e8]
call fcn.140049580
call fcn.140025700
mov qword [rsp + 0x3e0], rax
movss xmm0, dword [0x14013b564]
movss dword [rsp + 0x294], xmm0
movss xmm1, dword [0x140108eb8]
lea rcx, [0x140170900]
call fcn.140023c40
mov dword [rsp + 0x250], eax
movss xmm0, dword [0x140108eb8]
movss dword [rsp + 0x30], xmm0
mov dword [rsp + 0x28], 0
movss xmm0, dword [rsp + 0x294]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x250]
lea r8, [rsp + 0x730]
lea rdx, [rsp + 0x728]
mov rcx, qword [rsp + 0x3e0]
call fcn.1400493d0
movss xmm0, dword [rsp + 0x72c]
addss xmm0, dword [rsp + 0x624]
movss xmm1, dword [rsp + 0x728]
addss xmm1, dword [rsp + 0x620]
mov rax, qword [rsp + 0x840]
subss xmm1, dword [rax + 4]
movss xmm2, dword [rsp + 0x728]
addss xmm2, dword [0x140108ebc]
movss dword [rsp + 0x24c], xmm2
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm1
movss xmm2, dword [rsp + 0x72c]
movss xmm0, dword [rsp + 0x24c]
movaps xmm1, xmm0
lea rcx, [rsp + 0x780]
call fcn.140013c20
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140098668
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax + 0x110]
mov qword [rsp + 0x3d8], rax
lea rax, [rsp + 0x3d8]
mov qword [rsp + 0x350], rax
jmp 0x14009874f
movss xmm0, dword [0x14010b304]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rsp + 0x828]
lea rcx, [rsp + 0x4f0]
call fcn.14001cf40
mov rcx, qword [rsp + 0x840]
movss xmm0, dword [rcx + 4]
subss xmm0, dword [rax + 4]
subss xmm0, dword [0x140108eb8]
movss dword [rsp + 0x248], xmm0
movss xmm0, dword [0x14010b304]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rsp + 0x828]
lea rcx, [rsp + 0x4f8]
call fcn.14001cf40
mov rcx, qword [rsp + 0x840]
movss xmm0, dword [rcx + 4]
subss xmm0, dword [rax + 4]
movss dword [rsp + 0x2c0], xmm0
movss xmm2, dword [rsp + 0x248]
movss xmm1, dword [rsp + 0x2c0]
lea rcx, [rsp + 0x500]
call fcn.140013b10
movss xmm2, dword [0x14010b288]
mov rdx, rax
lea rcx, [rsp + 0x508]
call fcn.140015000
mov r8, rax
lea rdx, [rsp + 0x728]
lea rcx, [rsp + 0x510]
call fcn.140014f60
mov qword [rsp + 0x350], rax
mov rax, qword [rsp + 0x350]
mov qword [rsp + 0x3d0], rax
mov rax, qword [rsp + 0x3d0]
mov rax, qword [rax]
mov qword [rsp + 0x738], rax
xorps xmm2, xmm2
xorps xmm1, xmm1
lea rcx, [rsp + 0x640]
call fcn.140013b10
mov rcx, qword [0x140170878]
call fcn.140032920
mov dword [rsp + 0x390], 0x200000
movzx eax, byte [rsp + 0xbc]
test eax, eax
je 0x1400987bb
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x328], rax
jmp 0x1400987cb
mov rax, qword [rsp + 0x830]
mov qword [rsp + 0x328], rax
mov rax, qword [rsp + 0x328]
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x628], 0
movzx eax, byte [rsp + 0x71]
test eax, eax
je 0x140098858
mov rax, qword [rsp + 0x828]
mov qword [rsp + 0x100], rax
mov rax, qword [rsp + 0x828]
mov qword [rsp + 0x3c8], rax
mov qword [rsp + 0x208], 0xffffffffffffffff
inc qword [rsp + 0x208]
mov rax, qword [rsp + 0x3c8]
mov rcx, qword [rsp + 0x208]
cmp byte [rax + rcx], 0
jne 0x14009881c
mov rax, qword [rsp + 0x208]
mov rcx, qword [rsp + 0x828]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x628], rax
movzx eax, byte [rsp + 0x70]
test eax, eax
jne 0x14009886e
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x14009988f
movzx eax, byte [rsp + 0x71]
test eax, eax
jne 0x140098896
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x100]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x628], rax
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x148], rax
lea rcx, [rsp + 0x720]
call fcn.140013b50
lea rcx, [rsp + 0x770]
call fcn.140013b50
mov qword [rsp + 0x218], 0
mov qword [rsp + 0x220], 0
mov dword [rsp + 0xe8], 0xfffffc18
mov dword [rsp + 0xec], 0xfffffc18
mov dword [rsp + 0x8c], 0
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x14009894d
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x54]
mov rcx, qword [rsp + 0x148]
lea rax, [rcx + rax*2]
mov ecx, 8
imul rcx, rcx, 0
mov qword [rsp + rcx + 0x218], rax
mov eax, 4
imul rax, rax, 0
mov dword [rsp + rax + 0xe8], 0xffffffff
mov eax, dword [rsp + 0x8c]
inc eax
mov dword [rsp + 0x8c], eax
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x1400989ae
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.14000fd30
cdqe
mov rcx, qword [rsp + 0x148]
lea rax, [rcx + rax*2]
mov ecx, 8
imul rcx, rcx, 1
mov qword [rsp + rcx + 0x218], rax
mov eax, 4
imul rax, rax, 1
mov dword [rsp + rax + 0xe8], 0xffffffff
mov eax, dword [rsp + 0x8c]
inc eax
mov dword [rsp + 0x8c], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400989c4
mov dword [rsp + 0x1c4], 1
jmp 0x1400989cf
mov dword [rsp + 0x1c4], 0
mov eax, dword [rsp + 0x1c4]
mov ecx, dword [rsp + 0x8c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x8c], eax
mov dword [rsp + 0xd0], 0
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0x158], rax
jmp 0x140098a19
mov rax, qword [rsp + 0x158]
add rax, 2
mov qword [rsp + 0x158], rax
mov rax, qword [rsp + 0x158]
movzx eax, word [rax]
test eax, eax
je 0x140098b17
mov rax, qword [rsp + 0x158]
movzx eax, word [rax]
cmp eax, 0xa
jne 0x140098b12
mov eax, dword [rsp + 0xd0]
inc eax
mov dword [rsp + 0xd0], eax
mov eax, 4
imul rax, rax, 0
cmp dword [rsp + rax + 0xe8], 0xffffffff
jne 0x140098ab1
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x218]
cmp qword [rsp + 0x158], rax
jb 0x140098ab1
mov eax, 4
imul rax, rax, 0
mov ecx, dword [rsp + 0xd0]
mov dword [rsp + rax + 0xe8], ecx
mov eax, dword [rsp + 0x8c]
dec eax
mov dword [rsp + 0x8c], eax
cmp dword [rsp + 0x8c], 0
jg 0x140098ab1
jmp 0x140098b17
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0xe8], 0xffffffff
jne 0x140098b12
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x218]
cmp qword [rsp + 0x158], rax
jb 0x140098b12
mov eax, 4
imul rax, rax, 1
mov ecx, dword [rsp + 0xd0]
mov dword [rsp + rax + 0xe8], ecx
mov eax, dword [rsp + 0x8c]
dec eax
mov dword [rsp + 0x8c], eax
cmp dword [rsp + 0x8c], 0
jg 0x140098b12
jmp 0x140098b17
jmp 0x140098a05
mov eax, dword [rsp + 0xd0]
inc eax
mov dword [rsp + 0xd0], eax
mov eax, 4
imul rax, rax, 0
cmp dword [rsp + rax + 0xe8], 0xffffffff
jne 0x140098b51
mov eax, 4
imul rax, rax, 0
mov ecx, dword [rsp + 0xd0]
mov dword [rsp + rax + 0xe8], ecx
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0xe8], 0xffffffff
jne 0x140098b7b
mov eax, 4
imul rax, rax, 1
mov ecx, dword [rsp + 0xd0]
mov dword [rsp + rax + 0xe8], ecx
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x218]
mov qword [rsp + 0x3c0], rax
mov eax, 8
imul rax, rax, 0
mov rdx, qword [rsp + 0x148]
mov rcx, qword [rsp + rax + 0x218]
call fcn.140026c10
mov qword [rsp + 0x3f0], rax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x3c0]
mov r8, qword [rsp + 0x3f0]
mov rdx, qword [rsp + 0x68]
lea rcx, [rsp + 0x518]
call fcn.140094c70
movss xmm0, dword [rax]
movss dword [rsp + 0x720], xmm0
mov eax, 4
imul rax, rax, 0
cvtsi2ss xmm0, dword [rsp + rax + 0xe8]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3d60]
movss dword [rsp + 0x724], xmm0
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0xe8], 0
jl 0x140098cec
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x218]
mov qword [rsp + 0x3b8], rax
mov eax, 8
imul rax, rax, 1
mov rdx, qword [rsp + 0x148]
mov rcx, qword [rsp + rax + 0x218]
call fcn.140026c10
mov qword [rsp + 0x3b0], rax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x3b8]
mov r8, qword [rsp + 0x3b0]
mov rdx, qword [rsp + 0x68]
lea rcx, [rsp + 0x520]
call fcn.140094c70
movss xmm0, dword [rax]
movss dword [rsp + 0x770], xmm0
mov eax, 4
imul rax, rax, 1
cvtsi2ss xmm0, dword [rsp + rax + 0xe8]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3d60]
movss dword [rsp + 0x774], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140098d2f
cvtsi2ss xmm0, dword [rsp + 0xd0]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3d60]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x620]
lea rcx, [rsp + 0x528]
call fcn.140013b10
mov rax, qword [rax]
mov qword [rsp + 0x640], rax
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x140098fc4
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe84]
test eax, eax
je 0x140098fc4
mov eax, dword [rsp + 0x848]
and eax, 0x1000
test eax, eax
jne 0x140098e2e
movss xmm0, dword [rsp + 0x620]
mulss xmm0, dword [0x14010b240]
movss dword [rsp + 0x1cc], xmm0
mov rax, qword [rsp + 0xf0]
movss xmm0, dword [rsp + 0x620]
subss xmm0, dword [rax + 0x3c]
movss dword [rsp + 0x1c8], xmm0
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 0x50]
comiss xmm0, dword [rsp + 0x720]
jbe 0x140098de2
movss xmm0, dword [rsp + 0x720]
subss xmm0, dword [rsp + 0x1cc]
movaps xmm1, xmm0
xorps xmm0, xmm0
call fcn.14000fcf0
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x58]
movss dword [rax + 0x50], xmm0
jmp 0x140098e2c
movss xmm0, dword [rsp + 0x720]
subss xmm0, dword [rsp + 0x1c8]
mov rax, qword [rsp + 0x58]
comiss xmm0, dword [rax + 0x50]
jb 0x140098e2c
movss xmm0, dword [rsp + 0x720]
subss xmm0, dword [rsp + 0x1c8]
addss xmm0, dword [rsp + 0x1cc]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x58]
movss dword [rax + 0x50], xmm0
jmp 0x140098e3b
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
movss dword [rax + 0x50], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140098fb8
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x724]
subss xmm0, dword [rax + 0x3d60]
movss xmm1, dword [rsp + 0x98]
comiss xmm1, xmm0
jbe 0x140098e98
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x724]
subss xmm0, dword [rax + 0x3d60]
movaps xmm1, xmm0
xorps xmm0, xmm0
call fcn.14000fcf0
movss dword [rsp + 0x98], xmm0
jmp 0x140098f0b
mov rax, qword [rsp + 0xf0]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x14010b288]
movss xmm1, dword [rsp + 0x624]
subss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [rsp + 0x724]
subss xmm1, xmm0
movaps xmm0, xmm1
comiss xmm0, dword [rsp + 0x98]
jb 0x140098f0b
movss xmm0, dword [rsp + 0x724]
subss xmm0, dword [rsp + 0x624]
mov rax, qword [rsp + 0xf0]
movss xmm1, dword [rax + 0x40]
mulss xmm1, dword [0x14010b288]
addss xmm0, xmm1
movss dword [rsp + 0x98], xmm0
mov rax, qword [rsp + 0xf0]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x14010b288]
movss xmm1, dword [rsp + 0x644]
addss xmm1, xmm0
movaps xmm0, xmm1
subss xmm0, dword [rsp + 0x624]
xorps xmm1, xmm1
call fcn.14000fcf0
movss dword [rsp + 0x2bc], xmm0
movss xmm2, dword [rsp + 0x2bc]
xorps xmm1, xmm1
movss xmm0, dword [rsp + 0x98]
call fcn.14000fbd0
movss dword [rsp + 0x98], xmm0
mov rax, qword [rsp + 0xc8]
movss xmm0, dword [rax + 0x90]
subss xmm0, dword [rsp + 0x98]
movss xmm1, dword [rsp + 0x73c]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x73c], xmm0
mov rax, qword [rsp + 0xc8]
movss xmm0, dword [rsp + 0x98]
movss dword [rax + 0x90], xmm0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 0
xorps xmm2, xmm2
mov rax, qword [rsp + 0x58]
movss xmm1, dword [rax + 0x50]
lea rcx, [rsp + 0x758]
call fcn.140013b10
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x1400993c6
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.14000fd30
cdqe
mov rcx, qword [rsp + 0x148]
lea rax, [rcx + rax*2]
mov qword [rsp + 0x368], rax
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.14000fcc0
cdqe
mov rcx, qword [rsp + 0x148]
lea rax, [rcx + rax*2]
mov qword [rsp + 0x2f0], rax
movss xmm1, dword [0x14010b230]
lea rcx, [0x1401708a0]
call fcn.140023c40
mov dword [rsp + 0x2ac], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140099073
xorps xmm0, xmm0
movss dword [rsp + 0x1d0], xmm0
jmp 0x140099084
movss xmm0, dword [0x14010b304]
movss dword [rsp + 0x1d0], xmm0
movss xmm0, dword [rsp + 0x1d0]
movss dword [rsp + 0x2b0], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400990ad
xorps xmm0, xmm0
movss dword [rsp + 0x1d4], xmm0
jmp 0x1400990be
movss xmm0, dword [0x14010b288]
movss dword [rsp + 0x1d4], xmm0
movss xmm0, dword [rsp + 0x1d4]
movss dword [rsp + 0x2b4], xmm0
lea r8, [rsp + 0x770]
lea rdx, [rsp + 0x738]
lea rcx, [rsp + 0x530]
call fcn.140014f60
lea r8, [rsp + 0x758]
mov rdx, rax
lea rcx, [rsp + 0x740]
call fcn.140014f10
mov rax, qword [rsp + 0x368]
mov qword [rsp + 0x630], rax
mov rax, qword [rsp + 0x2f0]
cmp qword [rsp + 0x630], rax
jae 0x1400993c6
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x78c]
addss xmm0, dword [rax + 0x3d60]
movss xmm1, dword [rsp + 0x744]
comiss xmm1, xmm0
jbe 0x140099154
jmp 0x1400993c6
movss xmm0, dword [rsp + 0x784]
comiss xmm0, dword [rsp + 0x744]
jbe 0x1400991b2
mov rax, qword [rsp + 0x2f0]
cmp qword [rsp + 0x630], rax
jae 0x1400991ad
mov rax, qword [rsp + 0x630]
movzx eax, word [rax]
mov dword [rsp + 0x2b8], eax
mov rax, qword [rsp + 0x630]
add rax, 2
mov qword [rsp + 0x630], rax
cmp dword [rsp + 0x2b8], 0xa
jne 0x1400991ab
jmp 0x1400991ad
jmp 0x140099167
jmp 0x140099387
mov byte [rsp + 0x30], 1
mov qword [rsp + 0x28], 0
lea rax, [rsp + 0x630]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x2f0]
mov r8, qword [rsp + 0x630]
mov rdx, qword [rsp + 0x68]
lea rcx, [rsp + 0x690]
call fcn.140094c70
xorps xmm0, xmm0
comiss xmm0, dword [rsp + 0x690]
jb 0x14009923a
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3d58]
mov qword [rsp + 0x358], rax
mov dx, 0x20
mov rcx, qword [rsp + 0x358]
call fcn.1400940b0
mulss xmm0, dword [0x14010b250]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
movss dword [rsp + 0x690], xmm0
movss xmm2, dword [rsp + 0x2b4]
movss xmm1, dword [rsp + 0x690]
lea rcx, [rsp + 0x538]
call fcn.140013b10
mov r8, rax
lea rdx, [rsp + 0x740]
lea rcx, [rsp + 0x540]
call fcn.140014f60
mov qword [rsp + 0x408], rax
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x2b0]
subss xmm0, dword [rax + 0x3d60]
movaps xmm2, xmm0
xorps xmm1, xmm1
lea rcx, [rsp + 0x548]
call fcn.140013b10
mov r8, rax
lea rdx, [rsp + 0x740]
lea rcx, [rsp + 0x550]
call fcn.140014f60
mov qword [rsp + 0x400], rax
mov r8, qword [rsp + 0x408]
mov rdx, qword [rsp + 0x400]
lea rcx, [rsp + 0x790]
call fcn.140013980
lea rdx, [rsp + 0x780]
lea rcx, [rsp + 0x5e8]
call fcn.1400139c0
lea rdx, [rsp + 0x5e8]
lea rcx, [rsp + 0x790]
call fcn.14001e5b0
lea rdx, [rsp + 0x780]
lea rcx, [rsp + 0x5f8]
call fcn.1400139c0
lea rdx, [rsp + 0x5f8]
lea rcx, [rsp + 0x790]
call fcn.140032280
movzx eax, al
test eax, eax
je 0x140099387
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax + 0x2a8]
mov qword [rsp + 0x378], rax
mov dword [rsp + 0x28], 0
xorps xmm0, xmm0
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x2ac]
lea r8, [rsp + 0x798]
lea rdx, [rsp + 0x790]
mov rcx, qword [rsp + 0x378]
call fcn.140049580
movss xmm0, dword [rsp + 0x738]
subss xmm0, dword [rsp + 0x758]
movss dword [rsp + 0x740], xmm0
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x744]
addss xmm0, dword [rax + 0x3d60]
movss dword [rsp + 0x744], xmm0
jmp 0x140099115
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1400993f1
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x628]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x140099544
movzx eax, byte [rsp + 0x71]
test eax, eax
je 0x14009940b
lea rax, [0x140170930]
mov qword [rsp + 0x330], rax
jmp 0x14009941a
lea rax, [0x140170910]
mov qword [rsp + 0x330], rax
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0x3f8], rax
movss xmm1, dword [0x140108eb8]
mov rcx, qword [rsp + 0x3f8]
call fcn.140023c40
mov dword [rsp + 0x2c8], eax
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax + 0x2a8]
mov qword [rsp + 0x4c8], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140099474
mov qword [rsp + 0x338], 0
jmp 0x140099484
lea rax, [rsp + 0x780]
mov qword [rsp + 0x338], rax
mov rax, qword [rsp + 0x628]
mov qword [rsp + 0x450], rax
lea r8, [rsp + 0x758]
lea rdx, [rsp + 0x738]
lea rcx, [rsp + 0x558]
call fcn.140014f10
mov qword [rsp + 0x458], rax
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x3d60]
movss dword [rsp + 0x254], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3d58]
mov qword [rsp + 0x460], rax
mov rax, qword [rsp + 0x338]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x2c8]
mov dword [rsp + 0x20], eax
mov r9, qword [rsp + 0x458]
movss xmm2, dword [rsp + 0x254]
mov rdx, qword [rsp + 0x460]
mov rcx, qword [rsp + 0x4c8]
call fcn.14004d060
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x14009988a
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 + 0x5b]
test eax, eax
je 0x1400995c7
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
comiss xmm0, dword [rax + 0xe80]
jae 0x1400995c7
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 0xe80]
movss xmm1, dword [0x1401261a0]
call sub.api_ms_win_crt_math_l1_1_0.dll_fmodf
movss xmm1, dword [0x14010b274]
comiss xmm1, xmm0
jae 0x1400995c7
mov dword [rsp + 0x1d8], 0
jmp 0x1400995d2
mov dword [rsp + 0x1d8], 1
movzx eax, byte [rsp + 0x1d8]
mov byte [rsp + 0xd7], al
lea r8, [rsp + 0x720]
lea rdx, [rsp + 0x738]
lea rcx, [rsp + 0x560]
call fcn.140014f60
lea r8, [rsp + 0x758]
mov rdx, rax
lea rcx, [rsp + 0x568]
call fcn.140014f10
mov rdx, rax
lea rcx, [rsp + 0x638]
call fcn.140027d50
movss xmm0, dword [rsp + 0x63c]
addss xmm0, dword [0x140120c2c]
movss xmm1, dword [rsp + 0x638]
addss xmm1, dword [0x140108eb8]
mov rax, qword [rsp + 0x68]
movss xmm2, dword [rsp + 0x63c]
subss xmm2, dword [rax + 0x3d60]
addss xmm2, dword [0x14010b250]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm1
movss xmm1, dword [rsp + 0x638]
lea rcx, [rsp + 0x6c8]
call fcn.140013a30
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x18]
mulss xmm0, dword [0x140108ec0]
movss xmm1, dword [rsp + 0x6c8]
subss xmm1, dword [rsp + 0x698]
movaps xmm2, xmm0
mov rax, qword [rsp + 0x150]
movss xmm0, dword [rax + 0x20]
call fcn.14000fc80
mov rax, qword [rsp + 0x150]
movss dword [rax + 0x20], xmm0
movzx eax, byte [rsp + 0xd7]
test eax, eax
je 0x140099815
lea rdx, [rsp + 0x780]
lea rcx, [rsp + 0x608]
call fcn.1400139c0
lea rdx, [rsp + 0x608]
lea rcx, [rsp + 0x6c8]
call fcn.140032280
movzx eax, al
test eax, eax
je 0x140099815
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax + 0x2a8]
mov qword [rsp + 0x480], rax
movss xmm1, dword [0x140108eb8]
lea rcx, [0x140170910]
call fcn.140023c40
mov dword [rsp + 0x2d4], eax
lea rdx, [rsp + 0x570]
lea rcx, [rsp + 0x6c8]
call fcn.1400238b0
movss xmm0, dword [rax + 4]
movss dword [rsp + 0x2cc], xmm0
mov rax, qword [rsp + 0x150]
movss xmm0, dword [rsp + 0x698]
addss xmm0, dword [rax + 0x20]
movss dword [rsp + 0x2d0], xmm0
movss xmm2, dword [rsp + 0x2cc]
movss xmm1, dword [rsp + 0x2d0]
lea rcx, [rsp + 0x578]
call fcn.140013b10
mov qword [rsp + 0x470], rax
mov rax, qword [rsp + 0x150]
movss xmm0, dword [rsp + 0x698]
addss xmm0, dword [rax + 0x20]
movss xmm2, dword [rsp + 0x6cc]
movaps xmm1, xmm0
lea rcx, [rsp + 0x580]
call fcn.140013b10
mov qword [rsp + 0x478], rax
movss xmm0, dword [0x140108eb8]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x2d4]
mov r8, qword [rsp + 0x470]
mov rdx, qword [rsp + 0x478]
mov rcx, qword [rsp + 0x480]
call fcn.1400471c0
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14009988a
mov rax, qword [rsp + 0x68]
mov byte [rax + 0x5ef8], 1
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x63c]
subss xmm0, dword [rax + 0x3d60]
movss xmm1, dword [rsp + 0x638]
subss xmm1, dword [0x140108eb8]
movaps xmm2, xmm0
lea rcx, [rsp + 0x588]
call fcn.140013b10
mov rax, qword [rax]
mov rcx, qword [rsp + 0x68]
mov qword [rcx + 0x5efc], rax
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x68]
movss xmm0, dword [rcx + 0x3d60]
movss dword [rax + 0x5f04], xmm0
jmp 0x140099aad
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1400998e7
lea rdx, [rsp + 0x628]
mov rcx, qword [rsp + 0x100]
call fcn.140094bb0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3d60]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x620]
lea rcx, [rsp + 0x590]
call fcn.140013b10
mov rax, qword [rax]
mov qword [rsp + 0x640], rax
jmp 0x140099986
movzx eax, byte [rsp + 0x71]
test eax, eax
jne 0x140099925
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x618]
cmp dword [rax + 0x409c], ecx
jne 0x140099925
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x100]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x628], rax
jmp 0x140099986
movzx eax, byte [rsp + 0x71]
test eax, eax
jne 0x140099986
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x488], rax
mov qword [rsp + 0x210], 0xffffffffffffffff
inc qword [rsp + 0x210]
mov rax, qword [rsp + 0x488]
mov rcx, qword [rsp + 0x210]
cmp byte [rax + rcx], 0
jne 0x14009994a
mov rax, qword [rsp + 0x210]
mov rcx, qword [rsp + 0x100]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x628], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1400999b1
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x628]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x140099aad
movzx eax, byte [rsp + 0x71]
test eax, eax
je 0x1400999cb
lea rax, [0x140170930]
mov qword [rsp + 0x340], rax
jmp 0x1400999da
lea rax, [0x140170910]
mov qword [rsp + 0x340], rax
mov rax, qword [rsp + 0x340]
mov qword [rsp + 0x490], rax
movss xmm1, dword [0x140108eb8]
mov rcx, qword [rsp + 0x490]
call fcn.140023c40
mov dword [rsp + 0x2d8], eax
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax + 0x2a8]
mov qword [rsp + 0x498], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140099a34
mov qword [rsp + 0x348], 0
jmp 0x140099a44
lea rax, [rsp + 0x780]
mov qword [rsp + 0x348], rax
mov rax, qword [rsp + 0x348]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov rax, qword [rsp + 0x628]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x2d8]
mov dword [rsp + 0x20], eax
lea r9, [rsp + 0x738]
mov rax, qword [rsp + 0x68]
movss xmm2, dword [rax + 0x3d60]
mov rax, qword [rsp + 0x68]
mov rdx, qword [rax + 0x3d58]
mov rcx, qword [rsp + 0x498]
call fcn.14004d060
call fcn.1400324d0
movzx eax, byte [rsp + 0x84]
test eax, eax
je 0x140099acc
movzx eax, byte [rsp + 0x71]
test eax, eax
jne 0x140099acc
call fcn.1400324d0
call fcn.140025700
mov qword [rsp + 0x4b0], rax
movss xmm0, dword [0x14013b564]
movss dword [rsp + 0x2f8], xmm0
xorps xmm1, xmm1
lea rcx, [0x1401708f0]
call fcn.140023c40
mov dword [rsp + 0x288], eax
movss xmm1, dword [0x140108eb8]
lea rcx, [0x1401708f0]
call fcn.140023c40
mov dword [rsp + 0x28c], eax
movss xmm1, dword [0x140108eb8]
lea rcx, [0x1401708f0]
call fcn.140023c40
mov dword [rsp + 0x290], eax
xorps xmm1, xmm1
lea rcx, [0x1401708f0]
call fcn.140023c40
mov dword [rsp + 0x240], eax
movss xmm0, dword [0x14010b304]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rsp + 0x828]
lea rcx, [rsp + 0x598]
call fcn.14001cf40
mov rcx, qword [rsp + 0x840]
movss xmm0, dword [rcx + 4]
subss xmm0, dword [rax + 4]
subss xmm0, dword [0x140108eb8]
movss xmm2, dword [0x140108eb8]
movaps xmm1, xmm0
lea rcx, [rsp + 0x5e0]
call fcn.140013b10
mov r8, rax
lea rdx, [rsp + 0x730]
lea rcx, [rsp + 0x5a0]
call fcn.140014f10
mov qword [rsp + 0x4a0], rax
movss xmm2, dword [0x140108eb8]
movss xmm1, dword [0x140108eb8]
lea rcx, [rsp + 0x5a8]
call fcn.140013b10
mov r8, rax
lea rdx, [rsp + 0x728]
lea rcx, [rsp + 0x5b0]
call fcn.140014f60
mov qword [rsp + 0x4a8], rax
mov dword [rsp + 0x40], 0
movss xmm0, dword [rsp + 0x2f8]
movss dword [rsp + 0x38], xmm0
mov eax, dword [rsp + 0x288]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x28c]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x290]
mov dword [rsp + 0x20], eax
mov r9d, dword [rsp + 0x240]
mov r8, qword [rsp + 0x4a0]
mov rdx, qword [rsp + 0x4a8]
mov rcx, qword [rsp + 0x4b0]
call fcn.140049630
mov rcx, qword [0x140170898]
call fcn.140032920
call fcn.140025700
mov qword [rsp + 0x4c0], rax
movss xmm1, dword [0x140108eb8]
lea rcx, [0x1401708a0]
call fcn.140023c40
mov dword [rsp + 0x2a0], eax
movss xmm0, dword [0x14010b304]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rsp + 0x820]
lea rcx, [rsp + 0x5b8]
call fcn.14001cf40
mov rcx, qword [rsp + 0x840]
movss xmm0, dword [rcx + 4]
addss xmm0, dword [rax]
divss xmm0, dword [0x14010b288]
movss dword [rsp + 0x298], xmm0
movss xmm0, dword [0x14010b304]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rsp + 0x820]
lea rcx, [rsp + 0x5c0]
call fcn.14001cf40
mov rcx, qword [rsp + 0x840]
movss xmm0, dword [rcx + 4]
addss xmm0, dword [rax]
divss xmm0, dword [0x14010b288]
movss dword [rsp + 0x29c], xmm0
movss xmm2, dword [rsp + 0x298]
movss xmm1, dword [rsp + 0x29c]
lea rcx, [rsp + 0x5c8]
call fcn.140013b10
mov r8, rax
lea rdx, [rsp + 0x730]
lea rcx, [rsp + 0x5d0]
call fcn.140014f10
mov qword [rsp + 0x4b8], rax
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x820]
mov r8d, dword [rsp + 0x2a0]
mov rdx, qword [rsp + 0x4b8]
mov rcx, qword [rsp + 0x4c0]
call fcn.14004cff0
call fcn.1400324d0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140099e6c
mov rax, qword [rsp + 0xf0]
movss xmm0, dword [rsp + 0x644]
addss xmm0, dword [rax + 0x40]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x640]
lea rcx, [rsp + 0x5d8]
call fcn.140013b10
mov rcx, rax
call fcn.140093fc0
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x498c]
or eax, 0x401
mov rcx, qword [rsp + 0x68]
mov dword [rcx + 0x498c], eax
call fcn.140020780
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x49b0]
and eax, 0x80
mov ecx, dword [rsp + 0x7b8]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x7b8], eax
call fcn.140021080
mov rax, qword [rsp + 0x68]
cmp dword [rax + 0x49a8], 0
jne 0x140099e6c
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x618]
mov dword [rax + 0x49a8], ecx
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x7b4]
mov dword [rax + 0x49ac], ecx
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x7b8]
mov dword [rax + 0x49b0], ecx
movzx eax, byte [rsp + 0x74]
test eax, eax
je 0x140099e91
mov eax, dword [rsp + 0x848]
and eax, 0x8000000
test eax, eax
jne 0x140099e91
mov ecx, dword [rsp + 0x618]
call fcn.14002b1a0
mov eax, dword [rsp + 0x848]
and eax, 0x20
test eax, eax
je 0x140099eab
movzx eax, byte [rsp + 0x8a]
jmp 0x140099eb0
movzx eax, byte [rsp + 0x74]
mov rcx, qword [rsp + 0x7f0]
xor rcx, rsp
call fcn.1401010d0
add rsp, 0x808
pop rdi
pop rsi
ret