Function at 0x140151cd0
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, 0x6a8
call fcn.14008c780
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0x120]
movzx eax, byte [rax + 0xf0]
test eax, eax
je 0x140151d14
xor al, al
jmp 0x14015653d
mov rax, qword [0x140222d70]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x70]
add rax, 8
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x70]
add rax, 0x38e0
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0x17c], 0
mov eax, dword [rsp + 0x6e8]
and eax, 0x4000000
test eax, eax
je 0x140151d66
mov byte [rsp + 0xc4], 1
jmp 0x140151d6e
mov byte [rsp + 0xc4], 0
movzx eax, byte [rsp + 0xc4]
mov byte [rsp + 0x50], al
mov eax, dword [rsp + 0x6e8]
and eax, 0x4000
test eax, eax
je 0x140151d94
mov byte [rsp + 0xc5], 1
jmp 0x140151d9c
mov byte [rsp + 0xc5], 0
movzx eax, byte [rsp + 0xc5]
mov byte [rsp + 0x60], al
mov eax, dword [rsp + 0x6e8]
and eax, 0x8000
test eax, eax
je 0x140151dc2
mov byte [rsp + 0xc6], 1
jmp 0x140151dca
mov byte [rsp + 0xc6], 0
movzx eax, byte [rsp + 0xc6]
mov byte [rsp + 0x7e], al
mov eax, dword [rsp + 0x6e8]
and eax, 0x10000
test eax, eax
jne 0x140151df0
mov byte [rsp + 0xc7], 1
jmp 0x140151df8
mov byte [rsp + 0xc7], 0
movzx eax, byte [rsp + 0xc7]
mov byte [rsp + 0xb8], al
mov eax, dword [rsp + 0x6e8]
and eax, 0x40000
test eax, eax
je 0x140151e21
mov byte [rsp + 0xc8], 1
jmp 0x140151e29
mov byte [rsp + 0xc8], 0
movzx eax, byte [rsp + 0xc8]
mov byte [rsp + 0x91], al
movzx eax, byte [rsp + 0x91]
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140151e4e
call fcn.140100370
xor r8d, r8d
mov rdx, qword [rsp + 0x6c0]
mov rcx, qword [rsp + 0x120]
call fcn.140114bf0
mov dword [rsp + 0x64], eax
movss xmm0, dword [0x1401d7fc4]
movss dword [rsp + 0x20], xmm0
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rsp + 0x6c0]
lea rcx, [rsp + 0x298]
call fcn.1401017f0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140151ebc
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x3d40]
mulss xmm0, dword [0x1401c93c0]
movss dword [rsp + 0x21c], xmm0
jmp 0x140151ece
movss xmm0, dword [rsp + 0x29c]
movss dword [rsp + 0x21c], xmm0
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x1401d7ed0]
movss xmm1, dword [rsp + 0x21c]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x2f0], xmm0
call fcn.140101010
movss dword [rsp + 0x2f4], xmm0
mov rax, qword [rsp + 0x6e0]
mov rax, qword [rax]
mov qword [rsp + 0x500], rax
mov rax, qword [rsp + 0x500]
mov qword [rsp + 0x508], rax
movss xmm3, dword [rsp + 0x2f0]
movss xmm2, dword [rsp + 0x2f4]
mov rdx, qword [rsp + 0x508]
lea rcx, [rsp + 0x288]
call fcn.140100ee0
movss xmm0, dword [rsp + 0x28c]
movss dword [rsp + 0x2f8], xmm0
movss xmm0, dword [rsp + 0x298]
comiss xmm0, dword [0x1401d7dec]
jbe 0x140151f99
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x54]
addss xmm0, dword [rsp + 0x298]
movss dword [rsp + 0x220], xmm0
jmp 0x140151fa5
xorps xmm0, xmm0
movss dword [rsp + 0x220], xmm0
movss xmm0, dword [rsp + 0x288]
addss xmm0, dword [rsp + 0x220]
movss xmm2, dword [rsp + 0x2f8]
movaps xmm1, xmm0
lea rcx, [rsp + 0x510]
call fcn.14002fdd0
mov rax, qword [rsp + 0x120]
add rax, 0x138
lea r8, [rsp + 0x288]
mov rdx, rax
lea rcx, [rsp + 0x5e8]
call fcn.140036b80
mov rcx, qword [rsp + 0x120]
add rcx, 0x138
mov r8, rax
mov rdx, rcx
lea rcx, [rsp + 0x168]
call fcn.1400f7fb0
lea r8, [rsp + 0x510]
lea rdx, [rsp + 0x168]
lea rcx, [rsp + 0x5f0]
call fcn.140036b80
mov r8, rax
lea rdx, [rsp + 0x168]
lea rcx, [rsp + 0x3f8]
call fcn.1400f7fb0
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x288]
mov qword [rsp + 0x110], rax
mov dword [rsp + 0x178], 0
lea rcx, [rsp + 0x658]
call fcn.1400f6750
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1401522bf
mov rax, qword [rsp + 0x120]
mov rax, qword [rax + 0x138]
mov qword [rsp + 0x518], rax
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x3f8]
call fcn.140156d80
mov r9d, 0x400
lea r8, [rsp + 0x168]
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x3f8]
call fcn.14011b5c0
movzx eax, al
test eax, eax
jne 0x1401520f5
call fcn.1401111e0
xor al, al
jmp 0x14015653d
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x48ac]
mov dword [rsp + 0x178], eax
lea rax, [rsp + 0x658]
mov rcx, qword [rsp + 0x70]
mov rdi, rax
lea rsi, [rcx + 0x48a4]
mov ecx, 0x3c
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x120]
mov rcx, qword [rsp + 0x518]
mov qword [rax + 0x138], rcx
mov eax, 0x10
imul rax, rax, 7
mov rcx, qword [rsp + 0xe0]
lea rax, [rcx + rax + 0xdc]
mov rdx, rax
mov ecx, 3
call fcn.140123f10
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x44]
mov ecx, 7
call fcn.140124120
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x48]
mov ecx, 8
call fcn.140124120
xorps xmm2, xmm2
xorps xmm1, xmm1
lea rcx, [rsp + 0x5f8]
call fcn.14002fdd0
mov rdx, rax
mov ecx, 2
call fcn.140124070
lea rdx, [rsp + 0x600]
lea rcx, [rsp + 0x168]
call fcn.140115b50
mov dword [rsp + 0x20], 4
mov r9b, 1
mov r8, rax
mov edx, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x6c0]
call fcn.1400fec50
mov byte [rsp + 0xee], al
mov ecx, 3
call fcn.140123960
mov ecx, 1
call fcn.1401238b0
movzx eax, byte [rsp + 0xee]
test eax, eax
jne 0x14015221c
call fcn.140110930
call fcn.1401111e0
xor al, al
jmp 0x14015653d
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x4008]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0xd0]
mov eax, dword [rax + 0x190]
mov ecx, 1
mov dword [rsp + 0x2fc], ecx
movzx ecx, al
mov eax, dword [rsp + 0x2fc]
shl eax, cl
mov rcx, qword [rsp + 0xd0]
movsx ecx, word [rcx + 0x196]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0xd0]
mov word [rcx + 0x196], ax
mov rax, qword [rsp + 0xe0]
add rax, 0x3c
mov rcx, qword [rsp + 0xd0]
add rcx, 0x138
mov rdx, rax
call fcn.1400d8070
mov rax, qword [rsp + 0xd0]
movss xmm0, dword [rsp + 0x110]
subss xmm0, dword [rax + 0xe0]
movss dword [rsp + 0x110], xmm0
jmp 0x140152328
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x3f8]
call fcn.140156d80
mov eax, dword [rsp + 0x6e8]
and eax, 0x10000000
test eax, eax
jne 0x140152316
mov r9d, 0x400
lea r8, [rsp + 0x168]
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x3f8]
call fcn.14011b5c0
movzx eax, al
test eax, eax
jne 0x140152316
xor al, al
jmp 0x14015653d
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x48ac]
mov dword [rsp + 0x178], eax
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x168]
call fcn.14011b860
mov byte [rsp + 0x89], al
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x14015235b
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x4c28], 1
mov ecx, dword [rsp + 0x64]
call fcn.140150c70
mov qword [rsp + 0x58], rax
mov eax, dword [rsp + 0x178]
and eax, 0x100
test eax, eax
je 0x140152383
mov byte [rsp + 0xc9], 1
jmp 0x14015238b
mov byte [rsp + 0xc9], 0
movzx eax, byte [rsp + 0xc9]
mov byte [rsp + 0xaa], al
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4068], ecx
je 0x1401523e6
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4a78], ecx
jne 0x1401523e6
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4a84]
and eax, 1
test eax, eax
jne 0x1401523dc
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x4a9c], 2
jne 0x1401523e6
mov byte [rsp + 0xca], 1
jmp 0x1401523ee
mov byte [rsp + 0xca], 0
movzx eax, byte [rsp + 0xca]
mov byte [rsp + 0x8f], al
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x140152430
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0x3750]
test eax, eax
je 0x140152430
mov byte [rsp + 0xcb], 1
jmp 0x140152438
mov byte [rsp + 0xcb], 0
movzx eax, byte [rsp + 0xcb]
mov byte [rsp + 0x8d], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14015248f
cmp qword [rsp + 0x58], 0
je 0x14015248f
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x4068], 0
jne 0x14015248f
mov edx, 1
mov rcx, qword [rsp + 0xd0]
call fcn.140150ee0
mov rcx, qword [rsp + 0x70]
cmp dword [rcx + 0x4098], eax
jne 0x14015248f
mov byte [rsp + 0xa4], 1
jmp 0x140152497
mov byte [rsp + 0xa4], 0
movzx eax, byte [rsp + 0xa4]
mov byte [rsp + 0xef], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1401524e0
cmp qword [rsp + 0x58], 0
je 0x1401524e0
mov edx, 1
mov rcx, qword [rsp + 0xd0]
call fcn.140150ee0
mov rcx, qword [rsp + 0x70]
cmp dword [rcx + 0x4068], eax
jne 0x1401524e0
mov byte [rsp + 0xa5], 1
jmp 0x1401524e8
mov byte [rsp + 0xa5], 0
movzx eax, byte [rsp + 0xa5]
mov byte [rsp + 0xac], al
mov byte [rsp + 0x7a], 0
mov byte [rsp + 0x7c], 0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140152525
mov rax, qword [rsp + 0xd0]
movss xmm0, dword [rax + 0xbc]
movss dword [rsp + 0x224], xmm0
jmp 0x140152536
movss xmm0, dword [0x1401c8000]
movss dword [rsp + 0x224], xmm0
movss xmm0, dword [rsp + 0x224]
movss dword [rsp + 0xa0], xmm0
cmp qword [rsp + 0x58], 0
je 0x14015258d
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140152566
mov dword [rsp + 0x228], 1
jmp 0x140152571
mov dword [rsp + 0x228], 0
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x6b]
cmp eax, dword [rsp + 0x228]
je 0x14015258d
mov byte [rsp + 0xa6], 1
jmp 0x140152595
mov byte [rsp + 0xa6], 0
movzx eax, byte [rsp + 0xa6]
mov byte [rsp + 0xa9], al
movzx eax, byte [rsp + 0x8d]
test eax, eax
jne 0x1401525de
movzx eax, byte [rsp + 0xef]
test eax, eax
jne 0x1401525de
movzx eax, byte [rsp + 0x8f]
test eax, eax
jne 0x1401525de
movzx eax, byte [rsp + 0xaa]
test eax, eax
jne 0x1401525de
mov byte [rsp + 0xa7], 0
jmp 0x1401525e6
mov byte [rsp + 0xa7], 1
movzx eax, byte [rsp + 0xa7]
mov byte [rsp + 0x8e], al
movzx eax, byte [rsp + 0x8e]
test eax, eax
jne 0x140152617
movzx eax, byte [rsp + 0xac]
test eax, eax
jne 0x140152617
mov byte [rsp + 0xa8], 0
jmp 0x14015261f
mov byte [rsp + 0xa8], 1
movzx eax, byte [rsp + 0xa8]
mov byte [rsp + 0xab], al
movzx eax, byte [rsp + 0xab]
test eax, eax
je 0x14015264b
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4068], ecx
jne 0x14015265b
movzx eax, byte [rsp + 0xa9]
test eax, eax
je 0x14015292b
mov rax, qword [rsp + 0x70]
add rax, 0x4db8
mov qword [rsp + 0x58], rax
mov rcx, qword [rsp + 0x58]
call fcn.14014eb30
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 8]
call fcn.140151c00
mov rcx, qword [rsp + 0x6d0]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov dword [rsp + 0x150], eax
mov rax, qword [rsp + 0x58]
add rax, 0x38
mov qword [rsp + 0x530], rax
mov eax, dword [rsp + 0x150]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x530]
call fcn.140135710
mov eax, dword [rsp + 0x150]
inc eax
cdqe
mov r8, rax
mov rdx, qword [rsp + 0x6d0]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x40]
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 8], ecx
jne 0x14015270a
movzx eax, byte [rsp + 0xa9]
test eax, eax
jne 0x14015270a
mov dword [rsp + 0x22c], 1
jmp 0x140152715
mov dword [rsp + 0x22c], 0
movzx eax, byte [rsp + 0x22c]
mov byte [rsp + 0x88], al
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x14015277c
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x150]
cmp dword [rax + 0x10], ecx
jne 0x140152774
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x48]
test eax, eax
je 0x14015277c
movsxd rax, dword [rsp + 0x150]
mov r8, rax
mov rdx, qword [rsp + 0x6d0]
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 0x14015277c
mov byte [rsp + 0x88], 0
mov qword [rsp + 0x3e0], 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 + 0x418], rax
mov eax, dword [rsp + 0x6d8]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x418]
call fcn.1400e7fa0
mov rax, qword [rsp + 0x58]
add rax, 0x28
mov qword [rsp + 0x420], rax
xor edx, edx
mov rcx, qword [rsp + 0x420]
call fcn.140135710
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x48], 0
lea rax, [rsp + 0x3e0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x6d0]
mov edx, dword [rsp + 0x6d8]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.140119040
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x6d0]
mov rcx, qword [rsp + 0x3e0]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x10], eax
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x140152851
mov rcx, qword [rsp + 0x58]
call fcn.14014eb50
jmp 0x140152897
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
movss dword [rax + 0x50], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140152874
mov dword [rsp + 0x230], 1
jmp 0x14015287f
mov dword [rsp + 0x230], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov edx, dword [rsp + 0x230]
mov rcx, rax
call fcn.140163540
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140152912
mov eax, dword [rsp + 0x6e8]
and eax, 0x10
test eax, eax
je 0x1401528b3
mov byte [rsp + 0x7c], 1
movzx eax, byte [rsp + 0x8f]
test eax, eax
je 0x1401528e2
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x1401528dd
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4a84]
and eax, 4
test eax, eax
jne 0x1401528e2
mov byte [rsp + 0x7c], 1
movzx eax, byte [rsp + 0xaa]
test eax, eax
jne 0x14015290d
movzx eax, byte [rsp + 0x8d]
test eax, eax
je 0x140152912
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe28]
test eax, eax
je 0x140152912
mov byte [rsp + 0x7c], 1
mov eax, dword [rsp + 0x6e8]
and eax, 0x2000
test eax, eax
je 0x14015292b
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x60], 1
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x79]
mov byte [rsp + 0x79], al
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4068], ecx
je 0x140152989
movzx eax, byte [rsp + 0x8e]
test eax, eax
je 0x140152989
mov rdx, qword [rsp + 0x120]
mov ecx, dword [rsp + 0x64]
call fcn.140129450
mov rdx, qword [rsp + 0x120]
mov ecx, dword [rsp + 0x64]
call fcn.140129dc0
xor edx, edx
mov rcx, qword [rsp + 0x120]
call fcn.140113b80
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4068], ecx
jne 0x140152a8e
movzx eax, byte [rsp + 0x8d]
test eax, eax
je 0x1401529bb
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x281
call fcn.14012a1e0
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4878]
or eax, 3
mov rcx, qword [rsp + 0x70]
mov dword [rcx + 0x4878], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1401529ed
mov eax, dword [rsp + 0x6e8]
and eax, 0x80
test eax, eax
je 0x140152a06
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4878]
or eax, 0xc
mov rcx, qword [rsp + 0x70]
mov dword [rcx + 0x4878], eax
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x207
call fcn.14012a1e0
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x208
call fcn.14012a1e0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140152a53
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x205
call fcn.14012a1e0
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x206
call fcn.14012a1e0
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x140152a6d
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x4000
call fcn.14012a1e0
mov eax, dword [rsp + 0x6e8]
and eax, 0x440
test eax, eax
je 0x140152a8e
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x200
call fcn.14012ad70
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4068], ecx
jne 0x140152aac
cmp qword [rsp + 0x58], 0
jne 0x140152aac
call fcn.140102ce0
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4068], ecx
jne 0x140152af7
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0x3750]
test eax, eax
je 0x140152af7
movzx eax, byte [rsp + 0xab]
test eax, eax
jne 0x140152af7
movzx eax, byte [rsp + 0x8e]
test eax, eax
jne 0x140152af7
mov byte [rsp + 0x7a], 1
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4068], ecx
je 0x140152b29
cmp qword [rsp + 0x58], 0
je 0x140152b1c
movzx eax, byte [rsp + 0xac]
test eax, eax
jne 0x140152b29
mov dword [rsp + 0x238], 0
jmp 0x140152b34
mov dword [rsp + 0x238], 1
movzx eax, byte [rsp + 0x238]
mov byte [rsp + 0x68], al
cmp qword [rsp + 0x58], 0
je 0x140152b7e
mov rcx, qword [rsp + 0x58]
call fcn.140151080
movzx eax, al
test eax, eax
jne 0x140152b62
movzx eax, byte [rsp + 0x7c]
test eax, eax
je 0x140152b7e
xor eax, eax
test eax, eax
jne 0x140152b71
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x140152b7e
mov dword [rsp + 0x23c], 1
jmp 0x140152b89
mov dword [rsp + 0x23c], 0
movzx eax, byte [rsp + 0x23c]
mov byte [rsp + 0x61], al
mov byte [rsp + 0x7b], 0
mov byte [rsp + 0x92], 0
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x140152c8c
cmp qword [rsp + 0x58], 0
je 0x140152c8c
movzx eax, byte [rsp + 0x68]
test eax, eax
jne 0x140152bd1
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x140152c8c
mov qword [rsp + 0x3e8], 0
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x428], rax
mov eax, dword [rsp + 0x6d8]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x428]
call fcn.1400e7fa0
lea rax, [rsp + 0x3e8]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x6d0]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x18]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.140119040
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x6d0]
mov rcx, qword [rsp + 0x3e8]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x10], eax
mov rcx, qword [rsp + 0x58]
call fcn.14014eb50
movzx eax, byte [rsp + 0x61]
mov dword [rsp + 0x300], eax
mov rcx, qword [rsp + 0x58]
call fcn.140151080
movzx eax, al
mov ecx, dword [rsp + 0x300]
and ecx, eax
mov eax, ecx
mov byte [rsp + 0x61], al
movzx eax, byte [rsp + 0x68]
test eax, eax
jne 0x140152caf
movzx eax, byte [rsp + 0x61]
test eax, eax
jne 0x140152caf
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4068], ecx
jne 0x140152cd7
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140152cd7
cmp qword [rsp + 0x58], 0
je 0x140152cd7
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x48]
test eax, eax
je 0x140152cd7
mov byte [rsp + 0xad], 1
jmp 0x140152cdf
mov byte [rsp + 0xad], 0
movzx eax, byte [rsp + 0xad]
mov byte [rsp + 0xc3], al
cmp qword [rsp + 0x6c8], 0
je 0x140152d4b
movzx eax, byte [rsp + 0xc3]
test eax, eax
je 0x140152d18
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x3a0], rax
jmp 0x140152d28
mov rax, qword [rsp + 0x6d0]
mov qword [rsp + 0x3a0], rax
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x3a0]
movsx eax, byte [rcx + rax]
test eax, eax
jne 0x140152d4b
mov byte [rsp + 0xae], 1
jmp 0x140152d53
mov byte [rsp + 0xae], 0
movzx eax, byte [rsp + 0xae]
mov byte [rsp + 0x78], al
movzx eax, byte [rsp + 0x7e]
test eax, eax
je 0x140152e88
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x140152e88
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3d38]
mov qword [rsp + 0x430], rax
mov dx, 0x2a
mov rcx, qword [rsp + 0x430]
call fcn.1400dda90
mov qword [rsp + 0x3f0], rax
mov rax, qword [rsp + 0x70]
add rax, 0x5c60
mov qword [rsp + 0x158], rax
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3d38]
mov rcx, qword [rsp + 0x158]
movss xmm0, dword [rax + 0x14]
movss dword [rcx + 0x14], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3d38]
mov rcx, qword [rsp + 0x158]
movss xmm0, dword [rax + 0x64]
movss dword [rcx + 0x64], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3d38]
mov rcx, qword [rsp + 0x158]
movss xmm0, dword [rax + 0x68]
movss dword [rcx + 0x68], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3d38]
mov rcx, qword [rsp + 0x158]
movss xmm0, dword [rax + 0x6c]
movss dword [rcx + 0x6c], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3d38]
mov rcx, qword [rsp + 0x158]
mov rax, qword [rax + 0x40]
mov qword [rcx + 0x40], rax
mov rax, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x3f0]
mov qword [rax + 0x38], rcx
mov rax, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x3f0]
movss xmm0, dword [rcx + 4]
movss dword [rax + 0x10], xmm0
mov rcx, qword [rsp + 0x158]
call fcn.140123ba0
mov dword [rsp + 0x184], 0
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4068], ecx
jne 0x1401535d7
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x184], eax
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe86], 0
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x6d8]
mov dword [rax + 0x4c], ecx
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x6e8]
mov dword [rax + 0xe88], ecx
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0xe10]
test eax, eax
jne 0x140152f0e
mov dword [rsp + 0x218], 1
jmp 0x140152f19
mov dword [rsp + 0x218], 0
mov rax, qword [rsp + 0x70]
movzx ecx, byte [rsp + 0x218]
mov byte [rax + 0x4075], cl
mov rax, qword [rsp + 0x80]
movss xmm0, dword [rax + 0xe08]
subss xmm0, dword [rsp + 0x168]
mov rax, qword [rsp + 0xe0]
subss xmm0, dword [rax + 0x3c]
mov rax, qword [rsp + 0x58]
addss xmm0, dword [rax + 0x50]
movss dword [rsp + 0x148], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140152f99
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0xd0]
movss xmm0, dword [rax + 0xe0c]
subss xmm0, dword [rcx + 0x13c]
movss dword [rsp + 0x240], xmm0
jmp 0x140152fb7
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x3d40]
mulss xmm0, dword [0x1401d7e6c]
movss dword [rsp + 0x240], xmm0
movss xmm0, dword [rsp + 0x240]
movss dword [rsp + 0x14c], xmm0
movzx eax, byte [rsp + 0x7c]
test eax, eax
je 0x140152fed
mov rcx, qword [rsp + 0x58]
call fcn.140159130
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe85], 1
jmp 0x140153393
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x140153239
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, word [rcx + rax + 0x375a]
cmp eax, 2
jl 0x140153239
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe29]
test eax, eax
jne 0x140153239
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x14c]
movss xmm2, dword [rsp + 0x148]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.140162cb0
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, word [rcx + rax + 0x375a]
sub eax, 2
mov dword [rsp + 0x304], eax
mov eax, dword [rsp + 0x304]
cdq
and eax, 1
xor eax, edx
sub eax, edx
test eax, eax
jne 0x140153177
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x54], 0
je 0x1401530cb
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
dec eax
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140158090
movzx eax, ax
cmp eax, 0xa
je 0x1401530cb
mov byte [rsp + 0xaf], 0
jmp 0x1401530d3
mov byte [rsp + 0xaf], 1
movzx eax, byte [rsp + 0xaf]
mov byte [rsp + 0xf0], al
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
cmp dword [rax + 0x58], ecx
jne 0x140153100
movzx eax, byte [rsp + 0xf0]
test eax, eax
jne 0x14015310f
mov edx, 0x20000c
mov rcx, qword [rsp + 0x58]
call fcn.140157630
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
cmp dword [rax + 0x58], ecx
jne 0x140153132
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov rcx, rax
call fcn.140164960
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x54]
mov rcx, qword [rsp + 0x58]
call fcn.140158550
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.140162b50
jmp 0x14015322a
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x54]
mov rcx, qword [rsp + 0x58]
call fcn.140158090
movzx eax, ax
cmp eax, 0xa
jne 0x14015319b
mov byte [rsp + 0xb0], 1
jmp 0x1401531a3
mov byte [rsp + 0xb0], 0
movzx eax, byte [rsp + 0xb0]
mov byte [rsp + 0xf1], al
mov edx, 0x200004
mov rcx, qword [rsp + 0x58]
call fcn.140157630
mov edx, 0x600005
mov rcx, qword [rsp + 0x58]
call fcn.140157630
mov edx, 0x600001
mov rcx, qword [rsp + 0x58]
call fcn.140157630
movzx eax, byte [rsp + 0xf1]
test eax, eax
jne 0x14015321e
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14015321e
mov rax, qword [rsp + 0x58]
add rax, 0x5c
mov rcx, qword [rsp + 0x58]
add rcx, 0x58
mov rdx, rax
call fcn.140139e00
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.14014eb30
jmp 0x140153393
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0x3750]
test eax, eax
je 0x1401532ee
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
jne 0x1401532ee
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x1401532e9
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe29]
test eax, eax
je 0x1401532b7
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x14c]
movss xmm2, dword [rsp + 0x148]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.140163240
jmp 0x1401532df
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x14c]
movss xmm2, dword [rsp + 0x148]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.140162cb0
mov rcx, qword [rsp + 0x58]
call fcn.14014eb30
jmp 0x140153393
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0xe10]
test eax, eax
je 0x140153393
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
jne 0x140153393
mov rax, qword [rsp + 0x80]
movss xmm0, dword [rax + 0xf8]
ucomiss xmm0, dword [0x1401d7dec]
jp 0x140153355
jne 0x140153355
mov rax, qword [rsp + 0x80]
movss xmm0, dword [rax + 0xfc]
ucomiss xmm0, dword [0x1401d7dec]
jp 0x140153355
je 0x140153393
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x14c]
movss xmm2, dword [rsp + 0x148]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.140163240
mov rcx, qword [rsp + 0x58]
call fcn.14014eb30
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
je 0x1401533cc
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0xe10]
test eax, eax
jne 0x1401533cc
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe85], 0
mov eax, dword [rsp + 0x6e8]
and eax, 0x400
test eax, eax
je 0x14015344c
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x200
call fcn.14012ba50
movzx eax, al
test eax, eax
je 0x14015344c
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14015344c
mov dword [rsp + 0x244], 9
mov dword [rsp + 0x20], 2
mov r9, qword [rsp + 0x6f8]
mov r8, qword [rsp + 0x6f0]
mov edx, dword [rsp + 0x6e8]
lea rcx, [rsp + 0x244]
call fcn.140156550
movzx eax, al
test eax, eax
je 0x14015344c
mov edx, dword [rsp + 0x244]
mov rcx, qword [rsp + 0x58]
call fcn.140157630
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe28]
test eax, eax
je 0x140153472
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe2a]
test eax, eax
je 0x140153498
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x14015348e
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe2b]
test eax, eax
jne 0x140153498
mov byte [rsp + 0xb1], 0
jmp 0x1401534a0
mov byte [rsp + 0xb1], 1
movzx eax, byte [rsp + 0xb1]
mov byte [rsp + 0xed], al
mov rax, qword [rsp + 0x80]
cmp dword [rax + 0x37f0], 0
jle 0x1401535d7
movzx eax, byte [rsp + 0xed]
test eax, eax
jne 0x1401535b2
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1401535b2
movzx eax, byte [rsp + 0x8f]
test eax, eax
jne 0x1401535b2
mov dword [rsp + 0x140], 0
jmp 0x14015350e
mov eax, dword [rsp + 0x140]
inc eax
mov dword [rsp + 0x140], eax
mov rax, qword [rsp + 0x80]
mov eax, dword [rax + 0x37f0]
cmp dword [rsp + 0x140], eax
jge 0x1401535b2
mov rax, qword [rsp + 0x80]
add rax, 0x37f0
mov qword [rsp + 0x438], rax
mov edx, dword [rsp + 0x140]
mov rcx, qword [rsp + 0x438]
call fcn.1400d7db0
movzx eax, word [rax]
mov dword [rsp + 0x188], eax
cmp dword [rsp + 0x188], 9
jne 0x140153569
jmp 0x1401534fe
mov dword [rsp + 0x20], 2
mov r9, qword [rsp + 0x6f8]
mov r8, qword [rsp + 0x6f0]
mov edx, dword [rsp + 0x6e8]
lea rcx, [rsp + 0x188]
call fcn.140156550
movzx eax, al
test eax, eax
je 0x1401535ad
mov edx, dword [rsp + 0x188]
mov rcx, qword [rsp + 0x58]
call fcn.140157630
jmp 0x1401534fe
mov rax, qword [rsp + 0x80]
add rax, 0x37f0
mov qword [rsp + 0x440], rax
xor edx, edx
mov rcx, qword [rsp + 0x440]
call fcn.1400e7fa0
mov byte [rsp + 0x7d], 0
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4068], ecx
jne 0x1401545c5
mov rax, qword [rsp + 0x70]
movzx eax, byte [rax + 0x4074]
test eax, eax
jne 0x1401545c5
movzx eax, byte [rsp + 0x7a]
test eax, eax
jne 0x1401545c5
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rsp + 0x114]
subss xmm0, dword [rax + 0x40]
mov rax, qword [rsp + 0x70]
divss xmm0, dword [rax + 0x3d40]
cvttss2si eax, xmm0
mov edx, 1
mov ecx, eax
call fcn.1400d7520
mov dword [rsp + 0x180], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x180]
mov dword [rax + 0x64], ecx
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe29]
test eax, eax
je 0x14015367b
mov dword [rsp + 0x248], 0x400000
jmp 0x140153686
mov dword [rsp + 0x248], 0
mov eax, dword [rsp + 0x248]
mov dword [rsp + 0x94], eax
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x1401536b5
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe2a]
mov byte [rsp + 0xb2], al
jmp 0x1401536cb
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe28]
mov byte [rsp + 0xb2], al
movzx eax, byte [rsp + 0xb2]
mov byte [rsp + 0x8b], al
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x140153726
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe2b]
test eax, eax
je 0x140153726
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe28]
test eax, eax
jne 0x140153726
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe2a]
test eax, eax
jne 0x140153726
mov byte [rsp + 0xb3], 1
jmp 0x14015372e
mov byte [rsp + 0xb3], 0
movzx eax, byte [rsp + 0xb3]
mov byte [rsp + 0x8a], al
mov dword [rsp + 0x4f8], 1
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0xa39
call fcn.14012ba50
movzx eax, al
test eax, eax
jne 0x14015377e
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x220a
call fcn.14012ba50
movzx eax, al
test eax, eax
je 0x1401537b4
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1401537b4
movzx eax, byte [rsp + 0x7e]
test eax, eax
jne 0x1401537b4
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1401537aa
mov rcx, qword [rsp + 0x58]
call fcn.140151080
movzx eax, al
test eax, eax
je 0x1401537b4
mov byte [rsp + 0xb4], 1
jmp 0x1401537bc
mov byte [rsp + 0xb4], 0
movzx eax, byte [rsp + 0xb4]
mov byte [rsp + 0x90], al
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0xa24
call fcn.14012ba50
movzx eax, al
test eax, eax
jne 0x1401537fb
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x1209
call fcn.14012ba50
movzx eax, al
test eax, eax
je 0x140153828
movzx eax, byte [rsp + 0x7e]
test eax, eax
jne 0x140153828
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14015381e
mov rcx, qword [rsp + 0x58]
call fcn.140151080
movzx eax, al
test eax, eax
je 0x140153828
mov byte [rsp + 0xb5], 1
jmp 0x140153830
mov byte [rsp + 0xb5], 0
movzx eax, byte [rsp + 0xb5]
mov byte [rsp + 0xe9], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0xa37
call fcn.14012ba50
movzx eax, al
test eax, eax
jne 0x140153875
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x2209
call fcn.14012ba50
movzx eax, al
test eax, eax
je 0x140153888
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140153888
mov byte [rsp + 0xb6], 1
jmp 0x140153890
mov byte [rsp + 0xb6], 0
movzx eax, byte [rsp + 0xb6]
mov byte [rsp + 0xea], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0xa3b
call fcn.14012ba50
movzx eax, al
test eax, eax
je 0x1401538d9
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1401538d9
movzx eax, byte [rsp + 0xb8]
test eax, eax
je 0x1401538d9
mov byte [rsp + 0xb7], 1
jmp 0x1401538e1
mov byte [rsp + 0xb7], 0
movzx eax, byte [rsp + 0xb7]
mov byte [rsp + 0xc1], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0xa3a
call fcn.14012ba50
movzx eax, al
test eax, eax
jne 0x14015392f
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x14015394e
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x2a3b
call fcn.14012ba50
movzx eax, al
test eax, eax
je 0x14015394e
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14015394e
movzx eax, byte [rsp + 0xb8]
test eax, eax
je 0x14015394e
mov byte [rsp + 0xb9], 1
jmp 0x140153956
mov byte [rsp + 0xb9], 0
movzx eax, byte [rsp + 0xb9]
mov byte [rsp + 0xf2], al
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0xa22
call fcn.14012ba50
mov byte [rsp + 0xe8], al
mov rax, qword [rsp + 0x80]
mov eax, dword [rax]
and eax, 2
test eax, eax
je 0x1401539aa
mov rax, qword [rsp + 0x80]
mov eax, dword [rax + 4]
and eax, 1
test eax, eax
je 0x1401539aa
mov byte [rsp + 0xba], 1
jmp 0x1401539b2
mov byte [rsp + 0xba], 0
movzx eax, byte [rsp + 0xba]
mov byte [rsp + 0xbd], al
mov dl, 1
mov ecx, 0x20d
call fcn.14011a800
movzx eax, al
test eax, eax
jne 0x1401539f1
mov dl, 1
mov ecx, 0x267
call fcn.14011a800
movzx eax, al
test eax, eax
jne 0x1401539f1
mov byte [rsp + 0xbb], 0
jmp 0x1401539f9
mov byte [rsp + 0xbb], 1
movzx eax, byte [rsp + 0xbb]
mov byte [rsp + 0xf3], al
movzx eax, byte [rsp + 0xbd]
test eax, eax
je 0x140153a44
xor edx, edx
mov ecx, 0x26e
call fcn.14011a800
movzx eax, al
test eax, eax
jne 0x140153a3a
xor edx, edx
mov ecx, 0x26d
call fcn.14011a800
movzx eax, al
test eax, eax
je 0x140153a44
mov byte [rsp + 0xbc], 1
jmp 0x140153a4c
mov byte [rsp + 0xbc], 0
movzx eax, byte [rsp + 0xbc]
mov byte [rsp + 0xbf], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x20e
call fcn.14012ba50
movzx eax, al
test eax, eax
jne 0x140153aa7
movzx eax, byte [rsp + 0xbd]
test eax, eax
je 0x140153a9d
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x26c
call fcn.14012ba50
movzx eax, al
test eax, eax
jne 0x140153aa7
mov byte [rsp + 0xbe], 0
jmp 0x140153aaf
mov byte [rsp + 0xbe], 1
movzx eax, byte [rsp + 0xbe]
mov byte [rsp + 0xf8], al
mov dl, 1
mov ecx, 0x201
call fcn.14011a800
movzx eax, al
test eax, eax
je 0x140153b3f
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x140153aea
mov dword [rsp + 0x250], 0x200004
jmp 0x140153b1c
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x140153b03
mov dword [rsp + 0x24c], 0x20000c
jmp 0x140153b0e
mov dword [rsp + 0x24c], 0x200000
mov eax, dword [rsp + 0x24c]
mov dword [rsp + 0x250], eax
mov eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x250]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140157630
jmp 0x14015457d
mov dl, 1
mov ecx, 0x202
call fcn.14011a800
movzx eax, al
test eax, eax
je 0x140153bc0
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x140153b6b
mov dword [rsp + 0x258], 0x200005
jmp 0x140153b9d
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x140153b84
mov dword [rsp + 0x254], 0x20000d
jmp 0x140153b8f
mov dword [rsp + 0x254], 0x200001
mov eax, dword [rsp + 0x254]
mov dword [rsp + 0x258], eax
mov eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x258]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140157630
jmp 0x14015457d
mov dl, 1
mov ecx, 0x203
call fcn.14011a800
movzx eax, al
test eax, eax
je 0x140153c75
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140153c75
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe28]
test eax, eax
je 0x140153c2e
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x70]
movss xmm0, dword [rax + 0xbc]
subss xmm0, dword [rcx + 0x3d40]
xorps xmm1, xmm1
call fcn.1400d7550
movaps xmm1, xmm0
mov rcx, qword [rsp + 0xd0]
call fcn.14012ad30
jmp 0x140153c70
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x140153c47
mov dword [rsp + 0x25c], 0x200006
jmp 0x140153c52
mov dword [rsp + 0x25c], 0x200002
mov eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x25c]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140157630
jmp 0x14015457d
mov dl, 1
mov ecx, 0x204
call fcn.14011a800
movzx eax, al
test eax, eax
je 0x140153d50
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140153d50
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe28]
test eax, eax
je 0x140153d09
call fcn.140115980
movss dword [rsp + 0x308], xmm0
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x70]
movss xmm0, dword [rax + 0xbc]
addss xmm0, dword [rcx + 0x3d40]
movss dword [rsp + 0x30c], xmm0
movss xmm1, dword [rsp + 0x308]
movss xmm0, dword [rsp + 0x30c]
call fcn.1400d7590
movaps xmm1, xmm0
mov rcx, qword [rsp + 0xd0]
call fcn.14012ad30
jmp 0x140153d4b
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x140153d22
mov dword [rsp + 0x260], 0x200007
jmp 0x140153d2d
mov dword [rsp + 0x260], 0x200003
mov eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x260]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140157630
jmp 0x14015457d
mov dl, 1
mov ecx, 0x205
call fcn.14011a800
movzx eax, al
test eax, eax
je 0x140153db8
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140153db8
mov eax, dword [rsp + 0x94]
or eax, 0x20000e
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140157630
cvtsi2ss xmm0, dword [rsp + 0x180]
mov rax, qword [rsp + 0x70]
mulss xmm0, dword [rax + 0x3d40]
movss xmm1, dword [rsp + 0xa0]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0xa0], xmm0
jmp 0x14015457d
mov dl, 1
mov ecx, 0x206
call fcn.14011a800
movzx eax, al
test eax, eax
je 0x140153e20
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140153e20
mov eax, dword [rsp + 0x94]
or eax, 0x20000f
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140157630
cvtsi2ss xmm0, dword [rsp + 0x180]
mov rax, qword [rsp + 0x70]
mulss xmm0, dword [rax + 0x3d40]
movss xmm1, dword [rsp + 0xa0]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0xa0], xmm0
jmp 0x14015457d
mov dl, 1
mov ecx, 0x207
call fcn.14011a800
movzx eax, al
test eax, eax
je 0x140153e84
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe28]
test eax, eax
je 0x140153e5b
mov eax, dword [rsp + 0x94]
or eax, 0x200006
mov dword [rsp + 0x264], eax
jmp 0x140153e6e
mov eax, dword [rsp + 0x94]
or eax, 0x200004
mov dword [rsp + 0x264], eax
mov edx, dword [rsp + 0x264]
mov rcx, qword [rsp + 0x58]
call fcn.140157630
jmp 0x14015457d
mov dl, 1
mov ecx, 0x208
call fcn.14011a800
movzx eax, al
test eax, eax
je 0x140153ee8
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe28]
test eax, eax
je 0x140153ebf
mov eax, dword [rsp + 0x94]
or eax, 0x200007
mov dword [rsp + 0x270], eax
jmp 0x140153ed2
mov eax, dword [rsp + 0x94]
or eax, 0x200005
mov dword [rsp + 0x270], eax
mov edx, dword [rsp + 0x270]
mov rcx, qword [rsp + 0x58]
call fcn.140157630
jmp 0x14015457d
mov dl, 1
mov ecx, 0x20a
call fcn.14011a800
movzx eax, al
test eax, eax
je 0x140153f59
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140153f59
movzx eax, byte [rsp + 0x90]
test eax, eax
jne 0x140153f59
mov rcx, qword [rsp + 0x58]
call fcn.140151080
movzx eax, al
test eax, eax
jne 0x140153f3c
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x140153f3c
mov edx, 0x60000d
mov rcx, qword [rsp + 0x58]
call fcn.140157630
mov eax, dword [rsp + 0x94]
or eax, 0x200008
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140157630
jmp 0x14015457d
mov dl, 1
mov ecx, 0x20b
call fcn.14011a800
movzx eax, al
test eax, eax
je 0x140154019
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140154019
mov rcx, qword [rsp + 0x58]
call fcn.140151080
movzx eax, al
test eax, eax
jne 0x140153ffc
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x140153fab
mov edx, 0x60000c
mov rcx, qword [rsp + 0x58]
call fcn.140157630
jmp 0x140153ffc
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x140153ffc
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe2b]
test eax, eax
je 0x140153ffc
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe2a]
test eax, eax
jne 0x140153ffc
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe28]
test eax, eax
jne 0x140153ffc
mov edx, 0x600004
mov rcx, qword [rsp + 0x58]
call fcn.140157630
mov eax, dword [rsp + 0x94]
or eax, 0x200009
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140157630
jmp 0x14015457d
movzx eax, byte [rsp + 0xf3]
test eax, eax
jne 0x140154035
movzx eax, byte [rsp + 0xbf]
test eax, eax
je 0x140154150
mov eax, dword [rsp + 0x6e8]
and eax, 0x800
test eax, eax
je 0x140154052
mov dword [rsp + 0x1c0], 1
jmp 0x14015405d
mov dword [rsp + 0x1c0], 0
movzx eax, byte [rsp + 0x1c0]
mov byte [rsp + 0xc0], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1401540bf
movzx eax, byte [rsp + 0xbf]
test eax, eax
jne 0x1401540bf
movzx eax, byte [rsp + 0xc0]
test eax, eax
je 0x1401540a0
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe28]
test eax, eax
je 0x1401540bf
movzx eax, byte [rsp + 0xc0]
test eax, eax
jne 0x1401540f3
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0xe28]
test eax, eax
je 0x1401540f3
mov byte [rsp + 0x92], 1
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x7c]
test eax, eax
je 0x1401540ec
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1401540ec
mov rcx, qword [rsp + 0x58]
call fcn.140159130
jmp 0x1401540f1
mov byte [rsp + 0x7a], 1
jmp 0x14015414b
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14015414b
mov dword [rsp + 0x1c4], 0xa
mov dword [rsp + 0x20], 2
mov r9, qword [rsp + 0x6f8]
mov r8, qword [rsp + 0x6f0]
mov edx, dword [rsp + 0x6e8]
lea rcx, [rsp + 0x1c4]
call fcn.140156550
movzx eax, al
test eax, eax
je 0x14015414b
mov edx, dword [rsp + 0x1c4]
mov rcx, qword [rsp + 0x58]
call fcn.140157630
jmp 0x14015457d
movzx eax, byte [rsp + 0xf8]
test eax, eax
je 0x1401541b4
mov eax, dword [rsp + 0x6e8]
and eax, 0x100000
test eax, eax
je 0x140154193
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x10], 0
jle 0x14015417e
mov byte [rsp + 0x7d], 1
jmp 0x140154191
mov byte [rsp + 0x61], 0
movzx eax, byte [rsp + 0x61]
mov byte [rsp + 0x68], al
mov byte [rsp + 0x7a], 1
jmp 0x1401541af
mov byte [rsp + 0x7d], 1
movzx eax, byte [rsp + 0x7d]
mov byte [rsp + 0x7a], al
mov byte [rsp + 0x61], 0
movzx eax, byte [rsp + 0x61]
mov byte [rsp + 0x68], al
jmp 0x14015457d
movzx eax, byte [rsp + 0xc1]
test eax, eax
jne 0x1401541cc
movzx eax, byte [rsp + 0xf2]
test eax, eax
je 0x140154210
movzx eax, byte [rsp + 0xc1]
test eax, eax
je 0x1401541e5
mov dword [rsp + 0x1c8], 0x20000a
jmp 0x1401541f0
mov dword [rsp + 0x1c8], 0x20000b
mov edx, dword [rsp + 0x1c8]
mov rcx, qword [rsp + 0x58]
call fcn.140157630
mov rcx, qword [rsp + 0x58]
call fcn.1401483c0
jmp 0x14015457d
movzx eax, byte [rsp + 0xe8]
test eax, eax
je 0x140154237
mov rcx, qword [rsp + 0x58]
call fcn.140159130
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
jmp 0x14015457d
movzx eax, byte [rsp + 0x90]
test eax, eax
jne 0x140154253
movzx eax, byte [rsp + 0xe9]
test eax, eax
je 0x1401543fc
mov rax, qword [rsp + 0x80]
cmp qword [rax + 0xb8], 0
je 0x1401543ae
mov rcx, qword [rsp + 0x58]
call fcn.140151080
movzx eax, al
test eax, eax
je 0x140154298
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.1400f4400
mov dword [rsp + 0x1cc], eax
jmp 0x1401542a3
mov dword [rsp + 0x1cc], 0
mov eax, dword [rsp + 0x1cc]
mov dword [rsp + 0x1d8], eax
mov rcx, qword [rsp + 0x58]
call fcn.140151080
movzx eax, al
test eax, eax
je 0x1401542e0
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.1400d7520
mov dword [rsp + 0x1d0], eax
jmp 0x1401542ef
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0xc]
mov dword [rsp + 0x1d0], eax
mov eax, dword [rsp + 0x1d0]
mov dword [rsp + 0x1d4], eax
movsxd rax, dword [rsp + 0x1d4]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x20]
lea rax, [rcx + rax*2]
movsxd rcx, dword [rsp + 0x1d8]
mov rdx, qword [rsp + 0x58]
mov rdx, qword [rdx + 0x20]
lea rcx, [rdx + rcx*2]
mov rdx, rax
call fcn.140118fb0
inc eax
mov dword [rsp + 0x1dc], eax
movsxd rax, dword [rsp + 0x1dc]
mov rcx, rax
call fcn.14011cc70
mov qword [rsp + 0x348], rax
movsxd rax, dword [rsp + 0x1d4]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x20]
lea rax, [rcx + rax*2]
movsxd rcx, dword [rsp + 0x1d8]
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 + 0x1dc]
mov rcx, qword [rsp + 0x348]
call fcn.140119120
mov rcx, qword [rsp + 0x348]
call fcn.1401296f0
mov rcx, qword [rsp + 0x348]
call fcn.14011ccd0
movzx eax, byte [rsp + 0x90]
test eax, eax
je 0x1401543f7
mov rcx, qword [rsp + 0x58]
call fcn.140151080
movzx eax, al
test eax, eax
jne 0x1401543d5
mov rcx, qword [rsp + 0x58]
call fcn.140159130
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.140162d40
jmp 0x14015457d
movzx eax, byte [rsp + 0xea]
test eax, eax
je 0x14015457d
call fcn.1401143c0
mov qword [rsp + 0x350], rax
cmp qword [rsp + 0x350], 0
je 0x14015457d
mov rcx, qword [rsp + 0x350]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov dword [rsp + 0x340], eax
mov eax, dword [rsp + 0x340]
inc eax
cdqe
shl rax, 1
mov rcx, rax
call fcn.14011cc70
mov qword [rsp + 0x278], rax
mov dword [rsp + 0x108], 0
mov rax, qword [rsp + 0x350]
mov qword [rsp + 0x280], rax
mov rax, qword [rsp + 0x280]
movsx eax, byte [rax]
test eax, eax
je 0x14015451e
xor r8d, r8d
mov rdx, qword [rsp + 0x280]
lea rcx, [rsp + 0x1e0]
call fcn.140118870
cdqe
mov rcx, qword [rsp + 0x280]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x280], rax
mov dword [rsp + 0x20], 4
mov r9, qword [rsp + 0x6f8]
mov r8, qword [rsp + 0x6f0]
mov edx, dword [rsp + 0x6e8]
lea rcx, [rsp + 0x1e0]
call fcn.140156550
movzx eax, al
test eax, eax
jne 0x1401544ed
jmp 0x140154475
movsxd rax, dword [rsp + 0x108]
mov rcx, qword [rsp + 0x278]
movzx edx, word [rsp + 0x1e0]
mov word [rcx + rax*2], dx
mov eax, dword [rsp + 0x108]
inc eax
mov dword [rsp + 0x108], eax
jmp 0x140154475
movsxd rax, dword [rsp + 0x108]
xor ecx, ecx
mov rdx, qword [rsp + 0x278]
mov word [rdx + rax*2], cx
cmp dword [rsp + 0x108], 0
jle 0x140154570
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov r9d, dword [rsp + 0x108]
mov r8, qword [rsp + 0x278]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.140164880
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rcx, qword [rsp + 0x278]
call fcn.14011ccd0
mov rcx, qword [rsp + 0x58]
call fcn.140151080
movzx eax, al
test eax, eax
je 0x1401545aa
xor eax, eax
test eax, eax
jne 0x14015459d
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x1401545aa
mov dword [rsp + 0x1e4], 1
jmp 0x1401545b5
mov dword [rsp + 0x1e4], 0
movzx eax, byte [rsp + 0x61]
or eax, dword [rsp + 0x1e4]
mov byte [rsp + 0x61], al
mov qword [rsp + 0x130], 0
mov dword [rsp + 0x98], 0
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4068], ecx
jne 0x140154dc3
movzx eax, byte [rsp + 0x7d]
test eax, eax
je 0x140154788
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140154788
mov eax, dword [rsp + 0x6e8]
and eax, 0x100000
test eax, eax
je 0x14015465b
lea rax, [0x1401c9406]
mov qword [rsp + 0x130], rax
mov dword [rsp + 0x98], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
xor r9d, r9d
lea r8, [rsp + 0x378]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1401649b0
jmp 0x140154788
mov rax, qword [rsp + 0x58]
mov rdx, qword [rax + 0x40]
mov rcx, qword [rsp + 0x6d0]
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
je 0x140154788
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x40]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x38]
dec eax
mov dword [rsp + 0x98], eax
mov byte [rsp + 0x7b], 1
lea rcx, [rsp + 0x390]
call fcn.1400d75d0
nop
cmp dword [rsp + 0x98], 0
jle 0x14015472d
movsxd rax, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x130]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x130]
call fcn.140118eb0
inc eax
mov edx, eax
lea rcx, [rsp + 0x390]
call fcn.1400e7fa0
movsxd rax, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x130]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x20], 0
mov r9, rax
mov r8, qword [rsp + 0x130]
mov edx, dword [rsp + 0x390]
mov rcx, qword [rsp + 0x398]
call fcn.140119040
cmp dword [rsp + 0x98], 0
jle 0x140154749
mov eax, dword [rsp + 0x390]
dec eax
mov dword [rsp + 0x1e8], eax
jmp 0x140154754
mov dword [rsp + 0x1e8], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov r9d, dword [rsp + 0x1e8]
mov r8, qword [rsp + 0x398]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.1401649b0
nop
lea rcx, [rsp + 0x390]
call fcn.1400d7c50
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1401547eb
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x48], 1
mov rax, qword [rsp + 0x58]
add rax, 0x28
mov qword [rsp + 0x448], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x18]
lea eax, [rax*4 + 1]
mov edx, eax
mov rcx, qword [rsp + 0x448]
call fcn.140135710
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.140119120
movzx eax, byte [rsp + 0x7d]
test eax, eax
je 0x140154818
movzx eax, byte [rsp + 0x92]
test eax, eax
je 0x14015480e
mov eax, dword [rsp + 0x6e8]
and eax, 0x20
test eax, eax
jne 0x140154818
mov byte [rsp + 0xc2], 0
jmp 0x140154820
mov byte [rsp + 0xc2], 1
movzx eax, byte [rsp + 0xc2]
mov byte [rsp + 0xeb], al
movzx eax, byte [rsp + 0xeb]
test eax, eax
je 0x140154dc3
mov eax, dword [rsp + 0x6e8]
and eax, 0x801c0
test eax, eax
je 0x140154d7b
mov dword [rsp + 0xf4], 0
mov dword [rsp + 0x144], 0
mov eax, dword [rsp + 0x6e8]
and eax, 0x40
test eax, eax
je 0x1401548aa
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x200
call fcn.14012ba50
movzx eax, al
test eax, eax
je 0x1401548aa
mov dword [rsp + 0xf4], 0x40
mov dword [rsp + 0x144], 0x200
jmp 0x14015496b
mov eax, dword [rsp + 0x6e8]
and eax, 0x80
test eax, eax
je 0x1401548e8
mov dl, 1
mov ecx, 0x203
call fcn.14011a800
movzx eax, al
test eax, eax
je 0x1401548e8
mov dword [rsp + 0xf4], 0x80
mov dword [rsp + 0x144], 0x203
jmp 0x14015496b
mov eax, dword [rsp + 0x6e8]
and eax, 0x80
test eax, eax
je 0x140154923
mov dl, 1
mov ecx, 0x204
call fcn.14011a800
movzx eax, al
test eax, eax
je 0x140154923
mov dword [rsp + 0xf4], 0x80
mov dword [rsp + 0x144], 0x204
jmp 0x14015496b
mov eax, dword [rsp + 0x6e8]
and eax, 0x80000
test eax, eax
je 0x140154950
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe86]
test eax, eax
je 0x140154950
mov dword [rsp + 0xf4], 0x80000
jmp 0x14015496b
mov eax, dword [rsp + 0x6e8]
and eax, 0x100
test eax, eax
je 0x14015496b
mov dword [rsp + 0xf4], 0x100
cmp dword [rsp + 0xf4], 0
je 0x140154d7b
lea rcx, [rsp + 0x2a0]
call fcn.140144310
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x2a0], rax
mov eax, dword [rsp + 0xf4]
mov dword [rsp + 0x2a8], eax
mov eax, dword [rsp + 0x6e8]
mov dword [rsp + 0x2ac], eax
mov rax, qword [rsp + 0x6f8]
mov qword [rsp + 0x2b0], rax
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x1401549da
mov rax, qword [rsp + 0x6d0]
mov qword [rsp + 0x3b0], rax
jmp 0x1401549eb
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x3b0], rax
mov rax, qword [rsp + 0x3b0]
mov qword [rsp + 0x3c0], rax
mov eax, dword [rsp + 0x144]
mov dword [rsp + 0x2bc], eax
mov rax, qword [rsp + 0x3c0]
mov qword [rsp + 0x2c0], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x2c8], eax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x4c]
mov dword [rsp + 0x2cc], eax
mov byte [rsp + 0x2d0], 0
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x1a8], rax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x54]
mov rcx, qword [rsp + 0x1a8]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x1a8]
call fcn.140118fb0
mov dword [rsp + 0x2d4], eax
mov eax, dword [rsp + 0x2d4]
mov dword [rsp + 0x314], eax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x58]
mov rcx, qword [rsp + 0x1a8]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x1a8]
call fcn.140118fb0
mov dword [rsp + 0x2d8], eax
mov eax, dword [rsp + 0x2d8]
mov dword [rsp + 0x318], eax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x5c]
mov rcx, qword [rsp + 0x1a8]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x1a8]
call fcn.140118fb0
mov dword [rsp + 0x2dc], eax
mov eax, dword [rsp + 0x2dc]
mov dword [rsp + 0x31c], eax
mov rax, qword [rsp + 0x6f0]
mov qword [rsp + 0x450], rax
lea rcx, [rsp + 0x2a0]
call qword [rsp + 0x450]
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x140154b38
mov rax, qword [rsp + 0x6d0]
mov qword [rsp + 0x3b8], rax
jmp 0x140154b49
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x3b8], rax
mov rax, qword [rsp + 0x3b8]
mov qword [rsp + 0x3c0], rax
movzx eax, byte [rsp + 0x2d0]
mov byte [rsp + 0x8c], al
mov eax, dword [rsp + 0x314]
cmp dword [rsp + 0x2d4], eax
jne 0x140154b84
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x140154bbe
movsxd rax, dword [rsp + 0x2d4]
mov rcx, qword [rsp + 0x2c0]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x2c0]
call fcn.140118eb0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x54], eax
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov eax, dword [rsp + 0x318]
cmp dword [rsp + 0x2d8], eax
jne 0x140154bda
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x140154c37
mov eax, dword [rsp + 0x2d4]
cmp dword [rsp + 0x2d8], eax
jne 0x140154bfb
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
mov dword [rsp + 0x1ec], eax
jmp 0x140154c28
movsxd rax, dword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x2c0]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x2c0]
call fcn.140118eb0
mov dword [rsp + 0x1ec], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x1ec]
mov dword [rax + 0x58], ecx
mov eax, dword [rsp + 0x31c]
cmp dword [rsp + 0x2dc], eax
jne 0x140154c53
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x140154cb0
mov eax, dword [rsp + 0x2d8]
cmp dword [rsp + 0x2dc], eax
jne 0x140154c74
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x58]
mov dword [rsp + 0x1f0], eax
jmp 0x140154ca1
movsxd rax, dword [rsp + 0x2dc]
mov rcx, qword [rsp + 0x2c0]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x2c0]
call fcn.140118eb0
mov dword [rsp + 0x1f0], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x1f0]
mov dword [rax + 0x5c], ecx
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x140154d7b
mov r8d, dword [rsp + 0x2c8]
mov rdx, qword [rsp + 0x2c0]
mov rcx, qword [rsp + 0x58]
call fcn.1401568a0
mov eax, dword [rsp + 0x184]
cmp dword [rsp + 0x2c8], eax
jle 0x140154d30
movzx eax, byte [rsp + 0x91]
test eax, eax
je 0x140154d30
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x458], rax
mov eax, dword [rsp + 0x184]
mov ecx, dword [rsp + 0x2c8]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x58]
add eax, dword [rcx + 0x18]
mov edx, eax
mov rcx, qword [rsp + 0x458]
call fcn.1400e7fa0
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8, qword [rsp + 0x2c0]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x18]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.140119040
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x2c8]
mov dword [rax + 0x10], ecx
mov rcx, qword [rsp + 0x58]
call fcn.14014eb30
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140154dc3
mov rdx, qword [rsp + 0x6d0]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x30]
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
je 0x140154dc3
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x98], eax
mov byte [rsp + 0x7b], 1
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x5c48], ecx
jne 0x140154e7e
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4068], ecx
je 0x140154e6f
call fcn.14011a280
movzx eax, al
test eax, eax
je 0x140154e6f
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140154e6f
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x5c58]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x5c50]
dec eax
mov dword [rsp + 0x98], eax
mov rdx, qword [rsp + 0x6d0]
mov rax, qword [rsp + 0x70]
mov rcx, qword [rax + 0x5c58]
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
je 0x140154e54
mov dword [rsp + 0x1f4], 1
jmp 0x140154e5f
mov dword [rsp + 0x1f4], 0
movzx eax, byte [rsp + 0x7b]
or eax, dword [rsp + 0x1f4]
mov byte [rsp + 0x7b], al
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x5c48], 0
cmp qword [rsp + 0x130], 0
je 0x140154fa8
movzx eax, byte [rsp + 0x91]
test eax, eax
je 0x140154f77
lea rcx, [rsp + 0x540]
call fcn.140144310
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x540], rax
mov dword [rsp + 0x548], 0x40000
mov eax, dword [rsp + 0x6e8]
mov dword [rsp + 0x54c], eax
mov rax, qword [rsp + 0x6d0]
mov qword [rsp + 0x560], rax
mov eax, dword [rsp + 0x98]
mov dword [rsp + 0x568], eax
mov eax, dword [rsp + 0x98]
inc eax
mov edx, eax
mov ecx, dword [rsp + 0x6d8]
call fcn.1400d7520
mov dword [rsp + 0x56c], eax
mov rax, qword [rsp + 0x6f8]
mov qword [rsp + 0x550], rax
mov rax, qword [rsp + 0x6f0]
mov qword [rsp + 0x460], rax
lea rcx, [rsp + 0x540]
call qword [rsp + 0x460]
mov rax, qword [rsp + 0x560]
mov qword [rsp + 0x6d0], rax
mov eax, dword [rsp + 0x56c]
mov dword [rsp + 0x6d8], eax
mov eax, dword [rsp + 0x6d8]
dec eax
mov edx, eax
mov ecx, dword [rsp + 0x568]
call fcn.1400f4400
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x98]
inc eax
mov edx, dword [rsp + 0x6d8]
mov ecx, eax
call fcn.1400f4400
cdqe
mov r8, rax
mov rdx, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x6d0]
call fcn.140118810
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4068], ecx
jne 0x140154fc9
movzx eax, byte [rsp + 0x7a]
test eax, eax
je 0x140154fc9
call fcn.140102ce0
jmp 0x140154fe9
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4068], ecx
jne 0x140154fe9
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x6044], 1
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140155067
mov r8d, 1
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x168]
call fcn.140125910
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x44]
movss dword [rsp + 0x320], xmm0
movss xmm1, dword [0x1401d7eac]
mov ecx, 7
call fcn.1401145c0
mov dword [rsp + 0x324], eax
movss xmm0, dword [rsp + 0x320]
movss dword [rsp + 0x20], xmm0
mov r9b, 1
mov r8d, dword [rsp + 0x324]
mov rdx, qword [rsp + 0x170]
mov rcx, qword [rsp + 0x168]
call fcn.140124fc0
movss xmm0, dword [rsp + 0x16c]
addss xmm0, dword [rsp + 0x114]
movss xmm1, dword [rsp + 0x168]
addss xmm1, dword [rsp + 0x110]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm1
movss xmm2, dword [rsp + 0x16c]
movss xmm1, dword [rsp + 0x168]
lea rcx, [rsp + 0x380]
call fcn.14002ac00
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1401550e5
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x138]
mov qword [rsp + 0x468], rax
lea rax, [rsp + 0x468]
mov qword [rsp + 0x3c8], rax
jmp 0x140155111
mov rax, qword [rsp + 0xe0]
add rax, 0x3c
mov r8, rax
lea rdx, [rsp + 0x168]
lea rcx, [rsp + 0x608]
call fcn.140036b80
mov qword [rsp + 0x3c8], rax
mov rax, qword [rsp + 0x3c8]
mov qword [rsp + 0x470], rax
mov rax, qword [rsp + 0x470]
mov rax, qword [rax]
mov qword [rsp + 0x160], rax
xorps xmm2, xmm2
xorps xmm1, xmm1
lea rcx, [rsp + 0x268]
call fcn.14002fdd0
mov dword [rsp + 0x4fc], 0x200000
movzx eax, byte [rsp + 0xc3]
test eax, eax
je 0x140155171
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x3d0], rax
jmp 0x140155181
mov rax, qword [rsp + 0x6d0]
mov qword [rsp + 0x3d0], rax
mov rax, qword [rsp + 0x3d0]
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x138], 0
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x1401551d9
mov rax, qword [rsp + 0x6c8]
mov qword [rsp + 0x128], rax
mov rcx, qword [rsp + 0x6c8]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov rcx, qword [rsp + 0x6c8]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x138], rax
movzx eax, byte [rsp + 0x68]
test eax, eax
jne 0x1401551ef
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x140156175
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x140155217
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x128]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x138], rax
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x190], rax
lea rcx, [rsp + 0x118]
call fcn.140036b10
lea rcx, [rsp + 0x358]
call fcn.140036b10
mov qword [rsp + 0x2e0], 0
mov qword [rsp + 0x2e8], 0
mov dword [rsp + 0x100], 0xfffffc18
mov dword [rsp + 0x104], 0xfffffc18
mov dword [rsp + 0x9c], 0
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x1401552ce
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x54]
mov rcx, qword [rsp + 0x190]
lea rax, [rcx + rax*2]
mov ecx, 8
imul rcx, rcx, 0
mov qword [rsp + rcx + 0x2e0], rax
mov eax, 4
imul rax, rax, 0
mov dword [rsp + rax + 0x100], 0xffffffff
mov eax, dword [rsp + 0x9c]
inc eax
mov dword [rsp + 0x9c], eax
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x14015532f
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.1400f4400
cdqe
mov rcx, qword [rsp + 0x190]
lea rax, [rcx + rax*2]
mov ecx, 8
imul rcx, rcx, 1
mov qword [rsp + rcx + 0x2e0], rax
mov eax, 4
imul rax, rax, 1
mov dword [rsp + rax + 0x100], 0xffffffff
mov eax, dword [rsp + 0x9c]
inc eax
mov dword [rsp + 0x9c], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140155345
mov dword [rsp + 0x1f8], 1
jmp 0x140155350
mov dword [rsp + 0x1f8], 0
mov eax, dword [rsp + 0x1f8]
mov ecx, dword [rsp + 0x9c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x9c], eax
mov dword [rsp + 0xd8], 0
mov rax, qword [rsp + 0x190]
mov qword [rsp + 0x1b0], rax
jmp 0x14015539a
mov rax, qword [rsp + 0x1b0]
add rax, 2
mov qword [rsp + 0x1b0], rax
mov rax, qword [rsp + 0x1b0]
movzx eax, word [rax]
test eax, eax
je 0x140155498
mov rax, qword [rsp + 0x1b0]
movzx eax, word [rax]
cmp eax, 0xa
jne 0x140155493
mov eax, dword [rsp + 0xd8]
inc eax
mov dword [rsp + 0xd8], eax
mov eax, 4
imul rax, rax, 0
cmp dword [rsp + rax + 0x100], 0xffffffff
jne 0x140155432
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x2e0]
cmp qword [rsp + 0x1b0], rax
jb 0x140155432
mov eax, 4
imul rax, rax, 0
mov ecx, dword [rsp + 0xd8]
mov dword [rsp + rax + 0x100], ecx
mov eax, dword [rsp + 0x9c]
dec eax
mov dword [rsp + 0x9c], eax
cmp dword [rsp + 0x9c], 0
jg 0x140155432
jmp 0x140155498
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0x100], 0xffffffff
jne 0x140155493
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x2e0]
cmp qword [rsp + 0x1b0], rax
jb 0x140155493
mov eax, 4
imul rax, rax, 1
mov ecx, dword [rsp + 0xd8]
mov dword [rsp + rax + 0x100], ecx
mov eax, dword [rsp + 0x9c]
dec eax
mov dword [rsp + 0x9c], eax
cmp dword [rsp + 0x9c], 0
jg 0x140155493
jmp 0x140155498
jmp 0x140155386
mov eax, dword [rsp + 0xd8]
inc eax
mov dword [rsp + 0xd8], eax
mov eax, 4
imul rax, rax, 0
cmp dword [rsp + rax + 0x100], 0xffffffff
jne 0x1401554d2
mov eax, 4
imul rax, rax, 0
mov ecx, dword [rsp + 0xd8]
mov dword [rsp + rax + 0x100], ecx
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0x100], 0xffffffff
jne 0x1401554fc
mov eax, 4
imul rax, rax, 1
mov ecx, dword [rsp + 0xd8]
mov dword [rsp + rax + 0x100], ecx
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x2e0]
mov qword [rsp + 0x478], rax
mov eax, 8
imul rax, rax, 0
mov rdx, qword [rsp + 0x190]
mov rcx, qword [rsp + rax + 0x2e0]
call fcn.140118610
mov qword [rsp + 0x480], rax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x478]
mov r8, qword [rsp + 0x480]
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x5d8]
call fcn.140151a00
movss xmm0, dword [rax]
movss dword [rsp + 0x118], xmm0
mov eax, 4
imul rax, rax, 0
cvtsi2ss xmm0, dword [rsp + rax + 0x100]
mov rax, qword [rsp + 0x70]
mulss xmm0, dword [rax + 0x3d40]
movss dword [rsp + 0x11c], xmm0
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0x100], 0
jl 0x14015566d
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x2e0]
mov qword [rsp + 0x488], rax
mov eax, 8
imul rax, rax, 1
mov rdx, qword [rsp + 0x190]
mov rcx, qword [rsp + rax + 0x2e0]
call fcn.140118610
mov qword [rsp + 0x490], rax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x488]
mov r8, qword [rsp + 0x490]
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x610]
call fcn.140151a00
movss xmm0, dword [rax]
movss dword [rsp + 0x358], xmm0
mov eax, 4
imul rax, rax, 1
cvtsi2ss xmm0, dword [rsp + rax + 0x100]
mov rax, qword [rsp + 0x70]
mulss xmm0, dword [rax + 0x3d40]
movss dword [rsp + 0x35c], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1401556b0
cvtsi2ss xmm0, dword [rsp + 0xd8]
mov rax, qword [rsp + 0x70]
mulss xmm0, dword [rax + 0x3d40]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x110]
lea rcx, [rsp + 0x648]
call fcn.14002fdd0
mov rax, qword [rax]
mov qword [rsp + 0x268], rax
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x140155945
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe84]
test eax, eax
je 0x140155945
mov eax, dword [rsp + 0x6e8]
and eax, 0x1000
test eax, eax
jne 0x1401557af
movss xmm0, dword [rsp + 0x110]
mulss xmm0, dword [0x1401d7e4c]
movss dword [rsp + 0x200], xmm0
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rsp + 0x110]
subss xmm0, dword [rax + 0x3c]
movss dword [rsp + 0x1fc], xmm0
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 0x50]
comiss xmm0, dword [rsp + 0x118]
jbe 0x140155763
movss xmm0, dword [rsp + 0x118]
subss xmm0, dword [rsp + 0x200]
movaps xmm1, xmm0
xorps xmm0, xmm0
call fcn.1400d7550
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x58]
movss dword [rax + 0x50], xmm0
jmp 0x1401557ad
movss xmm0, dword [rsp + 0x118]
subss xmm0, dword [rsp + 0x1fc]
mov rax, qword [rsp + 0x58]
comiss xmm0, dword [rax + 0x50]
jb 0x1401557ad
movss xmm0, dword [rsp + 0x118]
subss xmm0, dword [rsp + 0x1fc]
addss xmm0, dword [rsp + 0x200]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x58]
movss dword [rax + 0x50], xmm0
jmp 0x1401557bc
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
movss dword [rax + 0x50], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140155939
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x11c]
subss xmm0, dword [rax + 0x3d40]
movss xmm1, dword [rsp + 0xa0]
comiss xmm1, xmm0
jbe 0x140155819
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x11c]
subss xmm0, dword [rax + 0x3d40]
movaps xmm1, xmm0
xorps xmm0, xmm0
call fcn.1400d7550
movss dword [rsp + 0xa0], xmm0
jmp 0x14015588c
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x1401d7ed0]
movss xmm1, dword [rsp + 0x114]
subss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [rsp + 0x11c]
subss xmm1, xmm0
movaps xmm0, xmm1
comiss xmm0, dword [rsp + 0xa0]
jb 0x14015588c
movss xmm0, dword [rsp + 0x11c]
subss xmm0, dword [rsp + 0x114]
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x40]
mulss xmm1, dword [0x1401d7ed0]
addss xmm0, xmm1
movss dword [rsp + 0xa0], xmm0
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x1401d7ed0]
movss xmm1, dword [rsp + 0x26c]
addss xmm1, xmm0
movaps xmm0, xmm1
subss xmm0, dword [rsp + 0x114]
xorps xmm1, xmm1
call fcn.1400d7550
movss dword [rsp + 0x33c], xmm0
movss xmm2, dword [rsp + 0x33c]
xorps xmm1, xmm1
movss xmm0, dword [rsp + 0xa0]
call fcn.1400d74b0
movss dword [rsp + 0xa0], xmm0
mov rax, qword [rsp + 0xd0]
movss xmm0, dword [rax + 0xbc]
subss xmm0, dword [rsp + 0xa0]
movss xmm1, dword [rsp + 0x164]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x164], xmm0
mov rax, qword [rsp + 0xd0]
movss xmm0, dword [rsp + 0xa0]
movss dword [rax + 0xbc], 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 + 0x290]
call fcn.14002fdd0
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x140155d73
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.1400f4400
cdqe
mov rcx, qword [rsp + 0x190]
lea rax, [rcx + rax*2]
mov qword [rsp + 0x498], rax
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.1400d7520
cdqe
mov rcx, qword [rsp + 0x190]
lea rax, [rcx + rax*2]
mov qword [rsp + 0x360], rax
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x1401559de
movss xmm0, dword [0x1401d7eac]
movss dword [rsp + 0x204], xmm0
jmp 0x1401559ef
movss xmm0, dword [0x1401c7fb4]
movss dword [rsp + 0x204], xmm0
movss xmm1, dword [rsp + 0x204]
mov ecx, gethostbyname
call fcn.1401145c0
mov dword [rsp + 0x334], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140155a20
xorps xmm0, xmm0
movss dword [rsp + 0x208], xmm0
jmp 0x140155a31
movss xmm0, dword [0x1401d7fc4]
movss dword [rsp + 0x208], xmm0
movss xmm0, dword [rsp + 0x208]
movss dword [rsp + 0x330], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140155a5a
xorps xmm0, xmm0
movss dword [rsp + 0x20c], xmm0
jmp 0x140155a6b
movss xmm0, dword [0x1401d7ed0]
movss dword [rsp + 0x20c], xmm0
movss xmm0, dword [rsp + 0x20c]
movss dword [rsp + 0x32c], xmm0
lea r8, [rsp + 0x358]
lea rdx, [rsp + 0x160]
lea rcx, [rsp + 0x580]
call fcn.140036b80
lea r8, [rsp + 0x290]
mov rdx, rax
lea rcx, [rsp + 0x198]
call fcn.1400d8020
mov rax, qword [rsp + 0x498]
mov qword [rsp + 0x1a0], rax
mov rax, qword [rsp + 0x360]
cmp qword [rsp + 0x1a0], rax
jae 0x140155d73
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x38c]
addss xmm0, dword [rax + 0x3d40]
movss xmm1, dword [rsp + 0x19c]
comiss xmm1, xmm0
jbe 0x140155b01
jmp 0x140155d73
movss xmm0, dword [rsp + 0x384]
comiss xmm0, dword [rsp + 0x19c]
jbe 0x140155b5f
mov rax, qword [rsp + 0x360]
cmp qword [rsp + 0x1a0], rax
jae 0x140155b5a
mov rax, qword [rsp + 0x1a0]
movzx eax, word [rax]
mov dword [rsp + 0x328], eax
mov rax, qword [rsp + 0x1a0]
add rax, 2
mov qword [rsp + 0x1a0], rax
cmp dword [rsp + 0x328], 0xa
jne 0x140155b58
jmp 0x140155b5a
jmp 0x140155b14
jmp 0x140155d34
mov byte [rsp + 0x30], 1
mov qword [rsp + 0x28], 0
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x360]
mov r8, qword [rsp + 0x1a0]
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x368]
call fcn.140151a00
xorps xmm0, xmm0
comiss xmm0, dword [rsp + 0x368]
jb 0x140155be7
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3d38]
mov qword [rsp + 0x4a0], rax
mov dx, 0x20
mov rcx, qword [rsp + 0x4a0]
call fcn.140150be0
mulss xmm0, dword [0x1401d7e6c]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
movss dword [rsp + 0x368], xmm0
movss xmm2, dword [rsp + 0x32c]
movss xmm1, dword [rsp + 0x368]
lea rcx, [rsp + 0x588]
call fcn.14002fdd0
mov r8, rax
lea rdx, [rsp + 0x198]
lea rcx, [rsp + 0x590]
call fcn.140036b80
mov qword [rsp + 0x4a8], rax
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x330]
subss xmm0, dword [rax + 0x3d40]
movaps xmm2, xmm0
xorps xmm1, xmm1
lea rcx, [rsp + 0x598]
call fcn.14002fdd0
mov r8, rax
lea rdx, [rsp + 0x198]
lea rcx, [rsp + 0x5a0]
call fcn.140036b80
mov qword [rsp + 0x4b0], rax
mov r8, qword [rsp + 0x4a8]
mov rdx, qword [rsp + 0x4b0]
lea rcx, [rsp + 0x408]
call fcn.1400f7fb0
lea rdx, [rsp + 0x380]
lea rcx, [rsp + 0x618]
call fcn.1400f7ff0
lea rdx, [rsp + 0x618]
lea rcx, [rsp + 0x408]
call fcn.140103050
lea rdx, [rsp + 0x380]
lea rcx, [rsp + 0x628]
call fcn.1400f7ff0
lea rdx, [rsp + 0x628]
lea rcx, [rsp + 0x408]
call fcn.1401235f0
movzx eax, al
test eax, eax
je 0x140155d34
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x2d8]
mov qword [rsp + 0x4b8], rax
mov dword [rsp + 0x28], 0
xorps xmm0, xmm0
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x334]
lea r8, [rsp + 0x410]
lea rdx, [rsp + 0x408]
mov rcx, qword [rsp + 0x4b8]
call fcn.1400dbd20
movss xmm0, dword [rsp + 0x160]
subss xmm0, dword [rsp + 0x290]
movss dword [rsp + 0x198], xmm0
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x19c]
addss xmm0, dword [rax + 0x3d40]
movss dword [rsp + 0x19c], xmm0
jmp 0x140155ac2
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140155d9e
mov rax, qword [rsp + 0x128]
mov rcx, qword [rsp + 0x138]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x140155ed8
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x140155db4
mov dword [rsp + 0x210], 1
jmp 0x140155dbf
mov dword [rsp + 0x210], 0
movss xmm1, dword [0x1401d7eac]
mov ecx, dword [rsp + 0x210]
call fcn.1401145c0
mov dword [rsp + 0x338], eax
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x2d8]
mov qword [rsp + 0x4d8], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140155e08
mov qword [rsp + 0x3d8], 0
jmp 0x140155e18
lea rax, [rsp + 0x380]
mov qword [rsp + 0x3d8], rax
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x4c0], rax
lea r8, [rsp + 0x290]
lea rdx, [rsp + 0x160]
lea rcx, [rsp + 0x5a8]
call fcn.1400d8020
mov qword [rsp + 0x4c8], rax
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x3d40]
movss dword [rsp + 0x374], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3d38]
mov qword [rsp + 0x4d0], rax
mov rax, qword [rsp + 0x3d8]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov rax, qword [rsp + 0x4c0]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x338]
mov dword [rsp + 0x20], eax
mov r9, qword [rsp + 0x4c8]
movss xmm2, dword [rsp + 0x374]
mov rdx, qword [rsp + 0x4d0]
mov rcx, qword [rsp + 0x4d8]
call fcn.1400dbfd0
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x140156170
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x80]
movss xmm0, dword [rax + 0xe80]
addss xmm0, dword [rcx + 0x10]
mov rax, qword [rsp + 0x58]
movss dword [rax + 0xe80], xmm0
mov rax, qword [rsp + 0x70]
movzx eax, byte [rax + 0x83]
test eax, eax
je 0x140155f62
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
comiss xmm0, dword [rax + 0xe80]
jae 0x140155f62
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 0xe80]
movss xmm1, dword [0x1401c9390]
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_fmodf]
movss xmm1, dword [0x1401d7e8c]
comiss xmm1, xmm0
jae 0x140155f62
mov dword [rsp + 0x214], 0
jmp 0x140155f6d
mov dword [rsp + 0x214], 1
movzx eax, byte [rsp + 0x214]
mov byte [rsp + 0xec], al
lea r8, [rsp + 0x118]
lea rdx, [rsp + 0x160]
lea rcx, [rsp + 0x5b0]
call fcn.140036b80
lea r8, [rsp + 0x290]
mov rdx, rax
lea rcx, [rsp + 0x5b8]
call fcn.1400d8020
mov rdx, rax
lea rcx, [rsp + 0x1b8]
call fcn.140116a60
movss xmm0, dword [rsp + 0x1bc]
subss xmm0, dword [0x1401c93a0]
movss xmm1, dword [rsp + 0x1b8]
addss xmm1, dword [0x1401d7eac]
mov rax, qword [rsp + 0x70]
movss xmm2, dword [rsp + 0x1bc]
subss xmm2, dword [rax + 0x3d40]
addss xmm2, dword [0x1401d7e6c]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm1
movss xmm1, dword [rsp + 0x1b8]
lea rcx, [rsp + 0x520]
call fcn.1400f8060
movzx eax, byte [rsp + 0xec]
test eax, eax
je 0x1401560de
lea rdx, [rsp + 0x380]
lea rcx, [rsp + 0x638]
call fcn.1400f7ff0
lea rdx, [rsp + 0x638]
lea rcx, [rsp + 0x520]
call fcn.1401235f0
movzx eax, al
test eax, eax
je 0x1401560de
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x2d8]
mov qword [rsp + 0x4e8], rax
movss xmm1, dword [0x1401d7eac]
xor ecx, ecx
call fcn.1401145c0
mov dword [rsp + 0x310], eax
lea rdx, [rsp + 0x5c0]
lea rcx, [rsp + 0x520]
call fcn.1401141b0
mov qword [rsp + 0x4e0], rax
movss xmm0, dword [0x1401d7eac]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x310]
mov r8, qword [rsp + 0x4e0]
lea rdx, [rsp + 0x520]
mov rcx, qword [rsp + 0x4e8]
call fcn.1400d9980
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140156170
mov rax, qword [rsp + 0x70]
mov byte [rax + 0x5d78], 1
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x1bc]
subss xmm0, dword [rax + 0x3d40]
movss xmm1, dword [rsp + 0x1b8]
subss xmm1, dword [0x1401d7eac]
movaps xmm2, xmm0
lea rcx, [rsp + 0x5c8]
call fcn.14002fdd0
mov rax, qword [rax]
mov rcx, qword [rsp + 0x70]
mov qword [rcx + 0x5d7c], rax
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x70]
movss xmm0, dword [rcx + 0x3d40]
movss dword [rax + 0x5d84], xmm0
mov rax, qword [rsp + 0x120]
mov rax, qword [rax + 0x38]
mov rcx, qword [rsp + 0x70]
mov eax, dword [rax]
mov dword [rcx + 0x5d98], eax
jmp 0x14015633f
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1401561ca
lea rdx, [rsp + 0x138]
mov rcx, qword [rsp + 0x128]
call fcn.140151940
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x70]
mulss xmm0, dword [rax + 0x3d40]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x110]
lea rcx, [rsp + 0x5d0]
call fcn.14002fdd0
mov rax, qword [rax]
mov qword [rsp + 0x268], rax
jmp 0x140156231
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x140156205
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4068], ecx
jne 0x140156205
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x128]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x138], rax
jmp 0x140156231
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x140156231
mov rcx, qword [rsp + 0x128]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov rcx, qword [rsp + 0x128]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x138], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14015625c
mov rax, qword [rsp + 0x128]
mov rcx, qword [rsp + 0x138]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x14015633f
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x140156272
mov dword [rsp + 0x234], 1
jmp 0x14015627d
mov dword [rsp + 0x234], 0
movss xmm1, dword [0x1401d7eac]
mov ecx, dword [rsp + 0x234]
call fcn.1401145c0
mov dword [rsp + 0x344], eax
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x2d8]
mov qword [rsp + 0x4f0], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1401562c6
mov qword [rsp + 0x3a8], 0
jmp 0x1401562d6
lea rax, [rsp + 0x380]
mov qword [rsp + 0x3a8], rax
mov rax, qword [rsp + 0x3a8]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x344]
mov dword [rsp + 0x20], eax
lea r9, [rsp + 0x160]
mov rax, qword [rsp + 0x70]
movss xmm2, dword [rax + 0x3d40]
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax + 0x3d38]
mov rcx, qword [rsp + 0x4f0]
call fcn.1400dbfd0
movzx eax, byte [rsp + 0x7e]
test eax, eax
je 0x140156356
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x140156356
call fcn.140123750
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140156446
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rsp + 0x26c]
addss xmm0, dword [rax + 0x40]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x268]
lea rcx, [rsp + 0x650]
call fcn.14002fdd0
mov rcx, rax
call fcn.140150540
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4888]
mov dword [rsp + 0x370], eax
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4888]
or eax, 0x401
mov rcx, qword [rsp + 0x70]
mov dword [rcx + 0x4888], eax
call fcn.140110930
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x48ac]
and eax, 0x80
mov ecx, dword [rsp + 0x660]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x660], eax
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x370]
mov dword [rax + 0x4888], ecx
call fcn.1401111e0
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x48a4], 0
jne 0x140156446
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
mov dword [rax + 0x48a4], ecx
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x65c]
mov dword [rax + 0x48a8], ecx
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x660]
mov dword [rax + 0x48ac], ecx
mov rax, qword [rsp + 0x70]
movzx eax, byte [rax + 0x5e80]
test eax, eax
je 0x140156498
movzx eax, byte [rsp + 0x7e]
test eax, eax
je 0x140156468
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x140156498
lea rdx, [0x1401c9418]
lea rcx, [0x1401c941c]
call fcn.14011c900
mov r8, qword [rsp + 0x138]
mov rdx, qword [rsp + 0x128]
lea rcx, [rsp + 0x160]
call fcn.14011c5e0
movss xmm0, dword [rsp + 0x298]
comiss xmm0, dword [0x1401d7dec]
jbe 0x1401564fc
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rsp + 0x16c]
addss xmm0, dword [rax + 0x40]
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rsp + 0x170]
addss xmm1, dword [rax + 0x54]
movaps xmm2, xmm0
lea rcx, [rsp + 0x5e0]
call fcn.14002fdd0
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rsp + 0x6c0]
mov rcx, qword [rax]
call fcn.140125de0
movzx eax, byte [rsp + 0x7b]
test eax, eax
je 0x14015651e
mov eax, dword [rsp + 0x6e8]
and eax, 0x8000000
test eax, eax
jne 0x14015651e
mov ecx, dword [rsp + 0x64]
call fcn.14011cc00
mov eax, dword [rsp + 0x6e8]
and eax, 0x20
test eax, eax
je 0x140156538
movzx eax, byte [rsp + 0x92]
jmp 0x14015653d
movzx eax, byte [rsp + 0x7b]
add rsp, 0x6a8
pop rdi
pop rsi
ret