Function at 0x14022cd90
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, 0x738
call fcn.1401a5720
mov qword [rsp + 0x138], rax
mov rax, qword [rsp + 0x138]
movzx eax, byte [rax + 0xc3]
test eax, eax
je 0x14022cdd4
xor al, al
jmp 0x140231755
mov rax, qword [0x140459e30]
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, 0x38e8
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0x178], 0
mov eax, dword [rsp + 0x778]
and eax, 0x4000000
test eax, eax
je 0x14022ce26
mov byte [rsp + 0xc3], 1
jmp 0x14022ce2e
mov byte [rsp + 0xc3], 0
movzx eax, byte [rsp + 0xc3]
mov byte [rsp + 0x50], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14022ce49
call fcn.1401703d0
nop
xor r8d, r8d
mov rdx, qword [rsp + 0x750]
mov rcx, qword [rsp + 0x138]
call fcn.14017c410
mov dword [rsp + 0x64], eax
movss xmm0, dword [0x14025fe7c]
movss dword [rsp + 0x20], xmm0
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rsp + 0x750]
lea rcx, [rsp + 0x328]
call fcn.140173ba0
nop
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14022ceb8
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x3d40]
mulss xmm0, dword [0x14025fe08]
movss dword [rsp + 0x21c], xmm0
jmp 0x14022ceca
movss xmm0, dword [rsp + 0x32c]
movss dword [rsp + 0x21c], xmm0
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x14025fd90]
movss xmm1, dword [rsp + 0x21c]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x2ec], xmm0
call fcn.14016fa70
movss dword [rsp + 0x324], xmm0
mov rax, qword [rsp + 0x770]
mov rax, qword [rax]
mov qword [rsp + 0x510], rax
mov rax, qword [rsp + 0x510]
mov qword [rsp + 0x518], rax
movss xmm3, dword [rsp + 0x2ec]
movss xmm2, dword [rsp + 0x324]
mov rdx, qword [rsp + 0x518]
lea rcx, [rsp + 0x258]
call fcn.140181cf0
nop
movss xmm0, dword [rsp + 0x25c]
movss dword [rsp + 0x2e4], xmm0
movss xmm0, dword [rsp + 0x328]
comiss xmm0, dword [0x14025fd18]
jbe 0x14022cf96
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x54]
addss xmm0, dword [rsp + 0x328]
movss dword [rsp + 0x220], xmm0
jmp 0x14022cfa2
xorps xmm0, xmm0
movss dword [rsp + 0x220], xmm0
movss xmm0, dword [rsp + 0x258]
addss xmm0, dword [rsp + 0x220]
movss xmm2, dword [rsp + 0x2e4]
movaps xmm1, xmm0
lea rcx, [rsp + 0x530]
call fcn.140157090
nop
mov rax, qword [rsp + 0x138]
add rax, 0x110
lea r8, [rsp + 0x258]
mov rdx, rax
lea rcx, [rsp + 0x608]
call fcn.14021e160
mov rcx, qword [rsp + 0x138]
add rcx, 0x110
mov r8, rax
mov rdx, rcx
lea rcx, [rsp + 0x180]
call fcn.1401a3050
nop
lea r8, [rsp + 0x530]
lea rdx, [rsp + 0x180]
lea rcx, [rsp + 0x610]
call fcn.14021e160
mov r8, rax
lea rdx, [rsp + 0x180]
lea rcx, [rsp + 0x350]
call fcn.1401a3050
nop
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0x110], rax
lea rcx, [rsp + 0x660]
call fcn.1401a26d0
nop
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14022d34b
mov rax, qword [rsp + 0x138]
mov rax, qword [rax + 0x110]
mov qword [rsp + 0x3e8], rax
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x350]
call fcn.14020cc10
nop
mov r9d, 0x400
lea r8, [rsp + 0x180]
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x350]
call fcn.140181510
movzx eax, al
test eax, eax
jne 0x14022d0ec
call fcn.140170600
xor al, al
jmp 0x140231755
lea rax, [rsp + 0x660]
mov rcx, qword [rsp + 0x70]
mov rdi, rax
lea rsi, [rcx + 0x49c0]
mov ecx, 0x4c
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x3e8]
mov qword [rax + 0x110], rcx
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4b48], ecx
jne 0x14022d163
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4b54]
and eax, 8
test eax, eax
je 0x14022d163
mov eax, dword [rsp + 0x778]
and eax, 0x400
test eax, eax
je 0x14022d163
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x4b48], 0
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4b48]
mov dword [rsp + 0x2dc], eax
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4074], ecx
jne 0x14022d195
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x4b48], 0
mov eax, 0x10
imul rax, rax, 7
mov rcx, qword [rsp + 0xe0]
lea rax, [rcx + rax + 0xec]
mov rdx, rax
mov ecx, 3
call fcn.14016f420
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x44]
mov ecx, 7
call fcn.14016f590
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x48]
mov ecx, 8
call fcn.14016f590
nop
xorps xmm2, xmm2
xorps xmm1, xmm1
lea rcx, [rsp + 0x618]
call fcn.140157090
mov rdx, rax
mov ecx, 2
call fcn.14016f640
nop
lea rdx, [rsp + 0x620]
lea rcx, [rsp + 0x180]
call fcn.1401a5940
mov qword [rsp + 0x3f0], rax
mov eax, dword [rsp + 0x64]
mov dword [rsp + 0x2e0], eax
mov dword [rsp + 0x20], 4
mov r9d, 1
mov r8, qword [rsp + 0x3f0]
mov edx, dword [rsp + 0x2e0]
mov rcx, qword [rsp + 0x750]
call fcn.1401826f0
mov byte [rsp + 0xed], al
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x2dc]
mov dword [rax + 0x4b48], ecx
mov ecx, 3
call fcn.14016f6f0
mov ecx, 1
call fcn.14016f4e0
nop
movzx eax, byte [rsp + 0xed]
test eax, eax
jne 0x14022d2a8
call fcn.14016df90
call fcn.140170600
xor al, al
jmp 0x140231755
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x4010]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0xd0]
mov eax, dword [rax + 0x168]
mov ecx, 1
mov dword [rsp + 0x2d8], ecx
movzx ecx, al
mov eax, dword [rsp + 0x2d8]
shl eax, cl
mov rcx, qword [rsp + 0xd0]
movsx ecx, word [rcx + 0x16e]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0xd0]
mov word [rcx + 0x16e], ax
mov rax, qword [rsp + 0xe0]
add rax, 0x3c
mov rcx, qword [rsp + 0xd0]
add rcx, 0x110
mov rdx, rax
call fcn.14021e220
mov rax, qword [rsp + 0xd0]
movss xmm0, dword [rsp + 0x110]
subss xmm0, dword [rax + 0xb4]
movss dword [rsp + 0x110], xmm0
jmp 0x14022d3a3
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x350]
call fcn.14020cc10
nop
mov eax, dword [rsp + 0x778]
and eax, 0x10000000
test eax, eax
jne 0x14022d3a3
mov r9d, 0x400
lea r8, [rsp + 0x180]
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x350]
call fcn.140181510
movzx eax, al
test eax, eax
jne 0x14022d3a3
xor al, al
jmp 0x140231755
mov rax, qword [rsp + 0x70]
mov r8d, dword [rax + 0x49c4]
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x180]
call fcn.140181820
mov byte [rsp + 0x8a], al
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x14022d3e2
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x4ed0], 1
mov ecx, dword [rsp + 0x64]
call fcn.140251ea0
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x49c4]
and eax, 0x80
test eax, eax
je 0x14022d416
mov eax, dword [rsp + 0x778]
bts eax, 0xe
mov dword [rsp + 0x778], eax
mov eax, dword [rsp + 0x778]
and eax, 0x4000
test eax, eax
je 0x14022d430
mov byte [rsp + 0xc4], 1
jmp 0x14022d438
mov byte [rsp + 0xc4], 0
movzx eax, byte [rsp + 0xc4]
mov byte [rsp + 0x60], al
mov eax, dword [rsp + 0x778]
and eax, 0x8000
test eax, eax
je 0x14022d45e
mov byte [rsp + 0xc5], 1
jmp 0x14022d466
mov byte [rsp + 0xc5], 0
movzx eax, byte [rsp + 0xc5]
mov byte [rsp + 0x7f], al
mov eax, dword [rsp + 0x778]
and eax, 0x10000
test eax, eax
jne 0x14022d48c
mov byte [rsp + 0xc6], 1
jmp 0x14022d494
mov byte [rsp + 0xc6], 0
movzx eax, byte [rsp + 0xc6]
mov byte [rsp + 0xb7], al
mov eax, dword [rsp + 0x778]
and eax, 0x40000
test eax, eax
je 0x14022d4bd
mov byte [rsp + 0xc7], 1
jmp 0x14022d4c5
mov byte [rsp + 0xc7], 0
movzx eax, byte [rsp + 0xc7]
mov byte [rsp + 0x92], al
movzx eax, byte [rsp + 0x92]
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4074], ecx
je 0x14022d528
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4b48], ecx
jne 0x14022d528
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4b54]
and eax, 1
test eax, eax
jne 0x14022d51e
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x4b74], 2
jne 0x14022d528
mov byte [rsp + 0xc8], 1
jmp 0x14022d530
mov byte [rsp + 0xc8], 0
movzx eax, byte [rsp + 0xc8]
mov byte [rsp + 0x90], al
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x14022d572
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0x2b10]
test eax, eax
je 0x14022d572
mov byte [rsp + 0xc9], 1
jmp 0x14022d57a
mov byte [rsp + 0xc9], 0
movzx eax, byte [rsp + 0xc9]
mov byte [rsp + 0x8e], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14022d5d1
cmp qword [rsp + 0x58], 0
je 0x14022d5d1
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x4074], 0
jne 0x14022d5d1
mov edx, 1
mov rcx, qword [rsp + 0xd0]
call fcn.140228e30
mov rcx, qword [rsp + 0x70]
cmp dword [rcx + 0x40a4], eax
jne 0x14022d5d1
mov byte [rsp + 0xca], 1
jmp 0x14022d5d9
mov byte [rsp + 0xca], 0
movzx eax, byte [rsp + 0xca]
mov byte [rsp + 0xee], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14022d622
cmp qword [rsp + 0x58], 0
je 0x14022d622
mov edx, 1
mov rcx, qword [rsp + 0xd0]
call fcn.140228e30
mov rcx, qword [rsp + 0x70]
cmp dword [rcx + 0x4074], eax
jne 0x14022d622
mov byte [rsp + 0xa4], 1
jmp 0x14022d62a
mov byte [rsp + 0xa4], 0
movzx eax, byte [rsp + 0xa4]
mov byte [rsp + 0xab], al
mov byte [rsp + 0x7b], 0
mov byte [rsp + 0x7d], 0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14022d667
mov rax, qword [rsp + 0xd0]
movss xmm0, dword [rax + 0x90]
movss dword [rsp + 0x224], xmm0
jmp 0x14022d678
movss xmm0, dword [0x14025fe78]
movss dword [rsp + 0x224], xmm0
movss xmm0, dword [rsp + 0x224]
movss dword [rsp + 0xa0], xmm0
cmp qword [rsp + 0x58], 0
je 0x14022d6ac
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe8c]
test eax, eax
je 0x14022d6ac
mov byte [rsp + 0xa5], 1
jmp 0x14022d6b4
mov byte [rsp + 0xa5], 0
movzx eax, byte [rsp + 0xa5]
mov byte [rsp + 0x88], al
cmp qword [rsp + 0x58], 0
je 0x14022d708
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14022d6e1
mov dword [rsp + 0x228], 1
jmp 0x14022d6ec
mov dword [rsp + 0x228], 0
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x6b]
cmp eax, dword [rsp + 0x228]
je 0x14022d708
mov byte [rsp + 0xa6], 1
jmp 0x14022d710
mov byte [rsp + 0xa6], 0
movzx eax, byte [rsp + 0xa6]
mov byte [rsp + 0xa9], al
movzx eax, byte [rsp + 0x8e]
test eax, eax
jne 0x14022d74d
movzx eax, byte [rsp + 0xee]
test eax, eax
jne 0x14022d74d
movzx eax, byte [rsp + 0x90]
test eax, eax
jne 0x14022d74d
mov byte [rsp + 0xa7], 0
jmp 0x14022d755
mov byte [rsp + 0xa7], 1
movzx eax, byte [rsp + 0xa7]
mov byte [rsp + 0x8f], al
movzx eax, byte [rsp + 0x8f]
test eax, eax
jne 0x14022d786
movzx eax, byte [rsp + 0xab]
test eax, eax
jne 0x14022d786
mov byte [rsp + 0xa8], 0
jmp 0x14022d78e
mov byte [rsp + 0xa8], 1
movzx eax, byte [rsp + 0xa8]
mov byte [rsp + 0xaa], al
movzx eax, byte [rsp + 0xaa]
test eax, eax
je 0x14022d7ba
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4074], ecx
jne 0x14022d7d6
movzx eax, byte [rsp + 0xa9]
test eax, eax
jne 0x14022d7d6
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x14022db10
mov rax, qword [rsp + 0x70]
add rax, 0x4ee0
mov qword [rsp + 0x58], rax
mov rcx, qword [rsp + 0x58]
call fcn.140251ca0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe8c], 0
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 8]
call fcn.140231770
mov rcx, qword [rsp + 0x760]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov dword [rsp + 0x15c], eax
movzx eax, byte [rsp + 0x88]
test eax, eax
jne 0x14022d877
mov rax, qword [rsp + 0x58]
add rax, 0x38
mov qword [rsp + 0x3f8], rax
mov eax, dword [rsp + 0x15c]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x3f8]
call fcn.1401aaf10
mov eax, dword [rsp + 0x15c]
inc eax
cdqe
mov r8, rax
mov rdx, qword [rsp + 0x760]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x40]
call sub.VCRUNTIME140.dll_memcpy
nop
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 8], ecx
jne 0x14022d8aa
movzx eax, byte [rsp + 0xa9]
test eax, eax
jne 0x14022d8aa
movzx eax, byte [rsp + 0x88]
test eax, eax
jne 0x14022d8aa
mov dword [rsp + 0x22c], 1
jmp 0x14022d8b5
mov dword [rsp + 0x22c], 0
movzx eax, byte [rsp + 0x22c]
mov byte [rsp + 0x89], al
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x14022d91c
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x15c]
cmp dword [rax + 0x10], ecx
jne 0x14022d914
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x48]
test eax, eax
je 0x14022d91c
movsxd rax, dword [rsp + 0x15c]
mov r8, rax
mov rdx, qword [rsp + 0x760]
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 0x14022d91c
mov byte [rsp + 0x89], 0
mov qword [rsp + 0x3d0], 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 + 0x400], rax
mov eax, dword [rsp + 0x768]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x400]
call fcn.1401ab060
mov rax, qword [rsp + 0x58]
add rax, 0x28
mov qword [rsp + 0x408], rax
xor edx, edx
mov rcx, qword [rsp + 0x408]
call fcn.1401aaf10
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x48], 0
lea rax, [rsp + 0x3d0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x760]
mov edx, dword [rsp + 0x768]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.14017a5b0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x760]
mov rcx, qword [rsp + 0x3d0]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x10], eax
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x14022d9f2
mov rcx, qword [rsp + 0x58]
call fcn.140251cc0
nop
jmp 0x14022da39
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
movss dword [rax + 0x50], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14022da15
mov dword [rsp + 0x230], 1
jmp 0x14022da20
mov dword [rsp + 0x230], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov edx, dword [rsp + 0x230]
mov rcx, rax
call fcn.140238ac0
nop
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x14022da88
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0xe90]
mov dword [rax + 0x58], ecx
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0xe94]
mov dword [rax + 0x5c], ecx
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
mov dword [rax + 0x54], ecx
mov rcx, qword [rsp + 0x58]
call fcn.140251cc0
nop
jmp 0x14022daf7
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14022daf7
mov eax, dword [rsp + 0x778]
and eax, 0x10
test eax, eax
je 0x14022daa4
mov byte [rsp + 0x7d], 1
movzx eax, byte [rsp + 0x90]
test eax, eax
je 0x14022dad3
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x14022dace
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4b54]
and eax, 4
test eax, eax
jne 0x14022dad3
mov byte [rsp + 0x7d], 1
movzx eax, byte [rsp + 0x8e]
test eax, eax
je 0x14022daf7
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14022daf7
mov byte [rsp + 0x7d], 1
mov eax, dword [rsp + 0x778]
and eax, 0x2000
test eax, eax
je 0x14022db10
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x60], 1
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x51]
mov byte [rsp + 0x7a], al
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4074], ecx
je 0x14022db6f
movzx eax, byte [rsp + 0x8f]
test eax, eax
je 0x14022db6f
mov rdx, qword [rsp + 0x138]
mov ecx, dword [rsp + 0x64]
call fcn.140180ae0
mov rdx, qword [rsp + 0x138]
mov ecx, dword [rsp + 0x64]
call fcn.140180de0
xor edx, edx
mov rcx, qword [rsp + 0x138]
call fcn.14017d070
nop
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4074], ecx
jne 0x14022dc79
movzx eax, byte [rsp + 0x8e]
test eax, eax
je 0x14022dba2
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x28f
call fcn.140186180
nop
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4980]
or eax, 3
mov rcx, qword [rsp + 0x70]
mov dword [rcx + 0x4980], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14022dbd4
mov eax, dword [rsp + 0x778]
and eax, 0x80
test eax, eax
je 0x14022dbed
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x4980]
or eax, 0xc
mov rcx, qword [rsp + 0x70]
mov dword [rcx + 0x4980], eax
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x20d
call fcn.140186180
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x273
call fcn.140186180
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x207
call fcn.140186180
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x208
call fcn.140186180
nop
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14022dc5e
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x205
call fcn.140186180
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x206
call fcn.140186180
nop
movzx eax, byte [rsp + 0x7a]
test eax, eax
je 0x14022dc79
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x4000
call fcn.140186180
nop
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4074], ecx
jne 0x14022dc98
cmp qword [rsp + 0x58], 0
jne 0x14022dc98
call fcn.140180f10
nop
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4074], ecx
jne 0x14022dce3
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0x2b10]
test eax, eax
je 0x14022dce3
movzx eax, byte [rsp + 0xaa]
test eax, eax
jne 0x14022dce3
movzx eax, byte [rsp + 0x8f]
test eax, eax
jne 0x14022dce3
mov byte [rsp + 0x7b], 1
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4074], ecx
je 0x14022dd15
cmp qword [rsp + 0x58], 0
je 0x14022dd08
movzx eax, byte [rsp + 0xab]
test eax, eax
jne 0x14022dd15
mov dword [rsp + 0x234], 0
jmp 0x14022dd20
mov dword [rsp + 0x234], 1
movzx eax, byte [rsp + 0x234]
mov byte [rsp + 0x78], al
cmp qword [rsp + 0x58], 0
je 0x14022dd6a
mov rcx, qword [rsp + 0x58]
call fcn.140251fd0
movzx eax, al
test eax, eax
jne 0x14022dd4e
movzx eax, byte [rsp + 0x7d]
test eax, eax
je 0x14022dd6a
xor eax, eax
test eax, eax
jne 0x14022dd5d
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x14022dd6a
mov dword [rsp + 0x238], 1
jmp 0x14022dd75
mov dword [rsp + 0x238], 0
movzx eax, byte [rsp + 0x238]
mov byte [rsp + 0x68], al
mov byte [rsp + 0x7c], 0
mov byte [rsp + 0x93], 0
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x14022de78
cmp qword [rsp + 0x58], 0
je 0x14022de78
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x14022ddbd
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x14022de78
mov qword [rsp + 0x3d8], 0
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x410], rax
mov eax, dword [rsp + 0x768]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x410]
call fcn.1401ab060
lea rax, [rsp + 0x3d8]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x760]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x18]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.14017a5b0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x760]
mov rcx, qword [rsp + 0x3d8]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x10], eax
mov rcx, qword [rsp + 0x58]
call fcn.140251cc0
movzx eax, byte [rsp + 0x68]
mov dword [rsp + 0x2d4], eax
mov rcx, qword [rsp + 0x58]
call fcn.140251fd0
movzx eax, al
mov ecx, dword [rsp + 0x2d4]
and ecx, eax
mov eax, ecx
mov byte [rsp + 0x68], al
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x14022de9b
movzx eax, byte [rsp + 0x68]
test eax, eax
jne 0x14022de9b
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4074], ecx
jne 0x14022dec3
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14022dec3
cmp qword [rsp + 0x58], 0
je 0x14022dec3
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x48]
test eax, eax
je 0x14022dec3
mov byte [rsp + 0xac], 1
jmp 0x14022decb
mov byte [rsp + 0xac], 0
movzx eax, byte [rsp + 0xac]
mov byte [rsp + 0xc2], al
cmp qword [rsp + 0x758], 0
je 0x14022df37
movzx eax, byte [rsp + 0xc2]
test eax, eax
je 0x14022df04
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x370], rax
jmp 0x14022df14
mov rax, qword [rsp + 0x760]
mov qword [rsp + 0x370], rax
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x370]
movsx eax, byte [rcx + rax]
test eax, eax
jne 0x14022df37
mov byte [rsp + 0xad], 1
jmp 0x14022df3f
mov byte [rsp + 0xad], 0
movzx eax, byte [rsp + 0xad]
mov byte [rsp + 0x79], al
movzx eax, byte [rsp + 0x7f]
test eax, eax
je 0x14022e075
movzx eax, byte [rsp + 0x79]
test eax, eax
jne 0x14022e075
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3d38]
mov qword [rsp + 0x418], rax
mov dx, 0x2a
mov rcx, qword [rsp + 0x418]
call fcn.1401dd0c0
mov qword [rsp + 0x378], rax
mov rax, qword [rsp + 0x70]
add rax, 0x5d90
mov qword [rsp + 0x168], rax
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3d38]
mov rcx, qword [rsp + 0x168]
movss xmm0, dword [rax + 0x14]
movss dword [rcx + 0x14], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3d38]
mov rcx, qword [rsp + 0x168]
movss xmm0, dword [rax + 0x64]
movss dword [rcx + 0x64], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3d38]
mov rcx, qword [rsp + 0x168]
movss xmm0, dword [rax + 0x68]
movss dword [rcx + 0x68], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3d38]
mov rcx, qword [rsp + 0x168]
movss xmm0, dword [rax + 0x6c]
movss dword [rcx + 0x6c], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3d38]
mov rcx, qword [rsp + 0x168]
mov rax, qword [rax + 0x40]
mov qword [rcx + 0x40], rax
mov rax, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x378]
mov qword [rax + 0x38], rcx
mov rax, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x378]
movss xmm0, dword [rcx + 4]
movss dword [rax + 0x10], xmm0
mov rcx, qword [rsp + 0x168]
call fcn.14016f220
nop
mov dword [rsp + 0x174], 0
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4074], ecx
jne 0x14022e7e2
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x174], eax
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe86], 0
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x768]
mov dword [rax + 0x4c], ecx
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x778]
mov dword [rax + 0xe88], ecx
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0xf8]
test eax, eax
jne 0x14022e0fb
mov dword [rsp + 0x23c], 1
jmp 0x14022e106
mov dword [rsp + 0x23c], 0
mov rax, qword [rsp + 0x70]
movzx ecx, byte [rsp + 0x23c]
mov byte [rax + 0x4081], cl
mov rax, qword [rsp + 0x80]
movss xmm0, dword [rax + 0xf0]
subss xmm0, dword [rsp + 0x180]
mov rax, qword [rsp + 0xe0]
subss xmm0, dword [rax + 0x3c]
mov rax, qword [rsp + 0x58]
addss xmm0, dword [rax + 0x50]
movss dword [rsp + 0x150], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14022e186
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0xd0]
movss xmm0, dword [rax + 0xf4]
subss xmm0, dword [rcx + 0x114]
movss dword [rsp + 0x250], xmm0
jmp 0x14022e1a4
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x3d40]
mulss xmm0, dword [0x14025fd48]
movss dword [rsp + 0x250], xmm0
movss xmm0, dword [rsp + 0x250]
movss dword [rsp + 0x160], xmm0
movzx eax, byte [rsp + 0x7d]
test eax, eax
je 0x14022e1da
mov rcx, qword [rsp + 0x58]
call fcn.140252080
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe85], 1
jmp 0x14022e588
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x14022e42b
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, word [rcx + rax + 0x2b1a]
cmp eax, 2
jl 0x14022e42b
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10d]
test eax, eax
jne 0x14022e42b
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x160]
movss xmm2, dword [rsp + 0x150]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.140236360
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, word [rcx + rax + 0x2b1a]
sub eax, 2
mov dword [rsp + 0x300], eax
mov eax, dword [rsp + 0x300]
cdq
and eax, 1
xor eax, edx
sub eax, edx
test eax, eax
jne 0x14022e367
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x54], 0
je 0x14022e2b8
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
dec eax
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.140235720
movzx eax, ax
cmp eax, 0xa
je 0x14022e2b8
mov byte [rsp + 0xae], 0
jmp 0x14022e2c0
mov byte [rsp + 0xae], 1
movzx eax, byte [rsp + 0xae]
mov byte [rsp + 0xef], al
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
cmp dword [rax + 0x58], ecx
jne 0x14022e2ed
movzx eax, byte [rsp + 0xef]
test eax, eax
jne 0x14022e2fd
mov edx, 0x20000c
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
nop
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
cmp dword [rax + 0x58], ecx
jne 0x14022e321
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov rcx, rax
call fcn.140237100
nop
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x54]
mov rcx, qword [rsp + 0x58]
call fcn.140235cb0
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.140236dd0
nop
jmp 0x14022e41b
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x54]
mov rcx, qword [rsp + 0x58]
call fcn.140235720
movzx eax, ax
cmp eax, 0xa
jne 0x14022e38b
mov byte [rsp + 0xaf], 1
jmp 0x14022e393
mov byte [rsp + 0xaf], 0
movzx eax, byte [rsp + 0xaf]
mov byte [rsp + 0xf0], al
mov edx, 0x200004
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
mov edx, 0x600005
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
mov edx, 0x600001
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
nop
movzx eax, byte [rsp + 0xf0]
test eax, eax
jne 0x14022e40f
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14022e40f
mov rax, qword [rsp + 0x58]
add rax, 0x5c
mov rcx, qword [rsp + 0x58]
add rcx, 0x58
mov rdx, rax
call fcn.140238e70
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.140251ca0
nop
jmp 0x14022e588
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0x2b10]
test eax, eax
je 0x14022e4e3
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
jne 0x14022e4e3
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x14022e4de
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10d]
test eax, eax
je 0x14022e4aa
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x160]
movss xmm2, dword [rsp + 0x150]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.140236410
nop
jmp 0x14022e4d3
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x160]
movss xmm2, dword [rsp + 0x150]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.140236360
nop
mov rcx, qword [rsp + 0x58]
call fcn.140251ca0
nop
jmp 0x14022e588
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0xf8]
test eax, eax
je 0x14022e588
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
jne 0x14022e588
mov rax, qword [rsp + 0x80]
movss xmm0, dword [rax + 0xe0]
ucomiss xmm0, dword [0x14025fd18]
jp 0x14022e54a
jne 0x14022e54a
mov rax, qword [rsp + 0x80]
movss xmm0, dword [rax + 0xe4]
ucomiss xmm0, dword [0x14025fd18]
jp 0x14022e54a
je 0x14022e588
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x160]
movss xmm2, dword [rsp + 0x150]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.140236410
mov rcx, qword [rsp + 0x58]
call fcn.140251ca0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
je 0x14022e5c1
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movzx eax, byte [rcx + rax + 0xf8]
test eax, eax
jne 0x14022e5c1
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe85], 0
mov eax, dword [rsp + 0x778]
and eax, 0x400
test eax, eax
je 0x14022e64d
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14022e64d
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x200
call fcn.140186b10
movzx eax, al
test eax, eax
je 0x14022e64d
mov dword [rsp + 0x1a8], 9
mov byte [rsp + 0x28], 0
mov rax, qword [rsp + 0x788]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x780]
mov r8d, dword [rsp + 0x778]
lea rdx, [rsp + 0x1a8]
mov rcx, qword [rsp + 0x70]
call fcn.140233b60
movzx eax, al
test eax, eax
je 0x14022e64d
mov edx, dword [rsp + 0x1a8]
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
nop
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14022e673
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10e]
test eax, eax
je 0x14022e699
movzx eax, byte [rsp + 0x7a]
test eax, eax
je 0x14022e68f
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10c]
test eax, eax
jne 0x14022e699
mov byte [rsp + 0xb0], 0
jmp 0x14022e6a1
mov byte [rsp + 0xb0], 1
movzx eax, byte [rsp + 0xb0]
mov byte [rsp + 0xf1], al
mov rax, qword [rsp + 0x80]
cmp dword [rax + 0x2b88], 0
jle 0x14022e7e2
movzx eax, byte [rsp + 0xf1]
test eax, eax
jne 0x14022e7bc
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14022e7bc
movzx eax, byte [rsp + 0x90]
test eax, eax
jne 0x14022e7bc
mov dword [rsp + 0x154], 0
jmp 0x14022e70f
mov eax, dword [rsp + 0x154]
inc eax
mov dword [rsp + 0x154], eax
mov rax, qword [rsp + 0x80]
mov eax, dword [rax + 0x2b88]
cmp dword [rsp + 0x154], eax
jge 0x14022e7bc
mov rax, qword [rsp + 0x80]
add rax, 0x2b88
mov qword [rsp + 0x420], rax
mov edx, dword [rsp + 0x154]
mov rcx, qword [rsp + 0x420]
call fcn.1401a4450
movzx eax, word [rax]
mov dword [rsp + 0x17c], eax
cmp dword [rsp + 0x17c], 9
jne 0x14022e76a
jmp 0x14022e6ff
mov byte [rsp + 0x28], 0
mov rax, qword [rsp + 0x788]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x780]
mov r8d, dword [rsp + 0x778]
lea rdx, [rsp + 0x17c]
mov rcx, qword [rsp + 0x70]
call fcn.140233b60
movzx eax, al
test eax, eax
je 0x14022e7b7
mov edx, dword [rsp + 0x17c]
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
nop
jmp 0x14022e6ff
mov rax, qword [rsp + 0x80]
add rax, 0x2b88
mov qword [rsp + 0x428], rax
xor edx, edx
mov rcx, qword [rsp + 0x428]
call fcn.1401ab060
nop
mov byte [rsp + 0x7e], 0
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4074], ecx
jne 0x14022f802
mov rax, qword [rsp + 0x70]
movzx eax, byte [rax + 0x4080]
test eax, eax
jne 0x14022f802
movzx eax, byte [rsp + 0x7b]
test eax, eax
jne 0x14022f802
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.140235550
mov dword [rsp + 0x170], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x170]
mov dword [rax + 0x64], ecx
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10d]
test eax, eax
je 0x14022e886
mov dword [rsp + 0x1ac], 0x400000
jmp 0x14022e891
mov dword [rsp + 0x1ac], 0
mov eax, dword [rsp + 0x1ac]
mov dword [rsp + 0x94], eax
movzx eax, byte [rsp + 0x7a]
test eax, eax
je 0x14022e8c0
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10e]
mov byte [rsp + 0xb1], al
jmp 0x14022e8d6
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10c]
mov byte [rsp + 0xb1], al
movzx eax, byte [rsp + 0xb1]
mov byte [rsp + 0x8c], al
movzx eax, byte [rsp + 0x7a]
test eax, eax
je 0x14022e931
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14022e931
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10f]
test eax, eax
jne 0x14022e931
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10e]
test eax, eax
jne 0x14022e931
mov byte [rsp + 0xb2], 1
jmp 0x14022e939
mov byte [rsp + 0xb2], 0
movzx eax, byte [rsp + 0xb2]
mov byte [rsp + 0x8b], al
mov dword [rsp + 0x508], 1
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x1239
call fcn.140186b10
movzx eax, al
test eax, eax
jne 0x14022e989
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x220a
call fcn.140186b10
movzx eax, al
test eax, eax
je 0x14022e9bf
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14022e9bf
movzx eax, byte [rsp + 0x7f]
test eax, eax
jne 0x14022e9bf
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14022e9b5
mov rcx, qword [rsp + 0x58]
call fcn.140251fd0
movzx eax, al
test eax, eax
je 0x14022e9bf
mov byte [rsp + 0xb3], 1
jmp 0x14022e9c7
mov byte [rsp + 0xb3], 0
movzx eax, byte [rsp + 0xb3]
mov byte [rsp + 0x91], al
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x1224
call fcn.140186b10
movzx eax, al
test eax, eax
jne 0x14022ea06
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x1209
call fcn.140186b10
movzx eax, al
test eax, eax
je 0x14022ea33
movzx eax, byte [rsp + 0x7f]
test eax, eax
jne 0x14022ea33
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14022ea29
mov rcx, qword [rsp + 0x58]
call fcn.140251fd0
movzx eax, al
test eax, eax
je 0x14022ea33
mov byte [rsp + 0xb4], 1
jmp 0x14022ea3b
mov byte [rsp + 0xb4], 0
movzx eax, byte [rsp + 0xb4]
mov byte [rsp + 0xe9], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x1237
call fcn.140186b10
movzx eax, al
test eax, eax
jne 0x14022ea80
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x2209
call fcn.140186b10
movzx eax, al
test eax, eax
je 0x14022ea93
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14022ea93
mov byte [rsp + 0xb5], 1
jmp 0x14022ea9b
mov byte [rsp + 0xb5], 0
movzx eax, byte [rsp + 0xb5]
mov byte [rsp + 0xea], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x123b
call fcn.140186b10
movzx eax, al
test eax, eax
je 0x14022eae4
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14022eae4
movzx eax, byte [rsp + 0xb7]
test eax, eax
je 0x14022eae4
mov byte [rsp + 0xb6], 1
jmp 0x14022eaec
mov byte [rsp + 0xb6], 0
movzx eax, byte [rsp + 0xb6]
mov byte [rsp + 0xc0], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x123a
call fcn.140186b10
movzx eax, al
test eax, eax
jne 0x14022eb3a
movzx eax, byte [rsp + 0x7a]
test eax, eax
je 0x14022eb59
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x323b
call fcn.140186b10
movzx eax, al
test eax, eax
je 0x14022eb59
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14022eb59
movzx eax, byte [rsp + 0xb7]
test eax, eax
je 0x14022eb59
mov byte [rsp + 0xb8], 1
jmp 0x14022eb61
mov byte [rsp + 0xb8], 0
movzx eax, byte [rsp + 0xb8]
mov byte [rsp + 0xfa], al
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x1222
call fcn.140186b10
mov byte [rsp + 0xe8], al
mov rax, qword [rsp + 0x80]
mov eax, dword [rax]
and eax, 2
test eax, eax
je 0x14022ebb5
mov rax, qword [rsp + 0x80]
mov eax, dword [rax + 4]
and eax, 1
test eax, eax
je 0x14022ebb5
mov byte [rsp + 0xb9], 1
jmp 0x14022ebbd
mov byte [rsp + 0xb9], 0
movzx eax, byte [rsp + 0xb9]
mov byte [rsp + 0xbc], al
mov dl, 1
mov ecx, 0x20d
call fcn.140174270
movzx eax, al
test eax, eax
jne 0x14022ebfc
mov dl, 1
mov ecx, 0x273
call fcn.140174270
movzx eax, al
test eax, eax
jne 0x14022ebfc
mov byte [rsp + 0xba], 0
jmp 0x14022ec04
mov byte [rsp + 0xba], 1
movzx eax, byte [rsp + 0xba]
mov byte [rsp + 0xf8], al
movzx eax, byte [rsp + 0xbc]
test eax, eax
je 0x14022ec4f
xor edx, edx
mov ecx, 0x27c
call fcn.140174270
movzx eax, al
test eax, eax
jne 0x14022ec45
xor edx, edx
mov ecx, 0x27b
call fcn.140174270
movzx eax, al
test eax, eax
je 0x14022ec4f
mov byte [rsp + 0xbb], 1
jmp 0x14022ec57
mov byte [rsp + 0xbb], 0
movzx eax, byte [rsp + 0xbb]
mov byte [rsp + 0xbe], al
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x20e
call fcn.140186b10
movzx eax, al
test eax, eax
jne 0x14022ecb2
movzx eax, byte [rsp + 0xbc]
test eax, eax
je 0x14022eca8
mov r8d, 1
mov edx, dword [rsp + 0x64]
mov ecx, 0x27a
call fcn.140186b10
movzx eax, al
test eax, eax
jne 0x14022ecb2
mov byte [rsp + 0xbd], 0
jmp 0x14022ecba
mov byte [rsp + 0xbd], 1
movzx eax, byte [rsp + 0xbd]
mov byte [rsp + 0xf9], al
mov dl, 1
mov ecx, 0x201
call fcn.140174270
movzx eax, al
test eax, eax
je 0x14022ed4b
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x14022ecf5
mov dword [rsp + 0x1b0], 0x200004
jmp 0x14022ed27
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x14022ed0e
mov dword [rsp + 0x218], 0x20000c
jmp 0x14022ed19
mov dword [rsp + 0x218], 0x200000
mov eax, dword [rsp + 0x218]
mov dword [rsp + 0x1b0], eax
mov eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x1b0]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
nop
jmp 0x14022f7ba
mov dl, 1
mov ecx, 0x202
call fcn.140174270
movzx eax, al
test eax, eax
je 0x14022edcd
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x14022ed77
mov dword [rsp + 0x1b8], 0x200005
jmp 0x14022eda9
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x14022ed90
mov dword [rsp + 0x1b4], 0x20000d
jmp 0x14022ed9b
mov dword [rsp + 0x1b4], 0x200001
mov eax, dword [rsp + 0x1b4]
mov dword [rsp + 0x1b8], eax
mov eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x1b8]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
nop
jmp 0x14022f7ba
mov dl, 1
mov ecx, 0x203
call fcn.140174270
movzx eax, al
test eax, eax
je 0x14022ee84
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14022ee84
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14022ee3c
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x90]
subss xmm0, dword [rcx + 0x3d40]
xorps xmm1, xmm1
call fcn.14021f260
movaps xmm1, xmm0
mov rcx, qword [rsp + 0xd0]
call fcn.140180190
nop
jmp 0x14022ee7f
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x14022ee55
mov dword [rsp + 0x1bc], 0x200006
jmp 0x14022ee60
mov dword [rsp + 0x1bc], 0x200002
mov eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x1bc]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
nop
jmp 0x14022f7ba
mov dl, 1
mov ecx, 0x204
call fcn.140174270
movzx eax, al
test eax, eax
je 0x14022ef61
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14022ef61
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14022ef19
call fcn.14016ef60
movss dword [rsp + 0x2f4], xmm0
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x90]
addss xmm0, dword [rcx + 0x3d40]
movss dword [rsp + 0x2f8], xmm0
movss xmm1, dword [rsp + 0x2f4]
movss xmm0, dword [rsp + 0x2f8]
call fcn.14021f210
movaps xmm1, xmm0
mov rcx, qword [rsp + 0xd0]
call fcn.140180190
nop
jmp 0x14022ef5c
movzx eax, byte [rsp + 0x8b]
test eax, eax
je 0x14022ef32
mov dword [rsp + 0x1c0], 0x200007
jmp 0x14022ef3d
mov dword [rsp + 0x1c0], 0x200003
mov eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x1c0]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
nop
jmp 0x14022f7ba
mov dl, 1
mov ecx, 0x205
call fcn.140174270
movzx eax, al
test eax, eax
je 0x14022efc9
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14022efc9
mov eax, dword [rsp + 0x94]
or eax, 0x20000e
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
cvtsi2ss xmm0, dword [rsp + 0x170]
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 0x14022f7ba
mov dl, 1
mov ecx, 0x206
call fcn.140174270
movzx eax, al
test eax, eax
je 0x14022f031
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14022f031
mov eax, dword [rsp + 0x94]
or eax, 0x20000f
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
cvtsi2ss xmm0, dword [rsp + 0x170]
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 0x14022f7ba
mov dl, 1
mov ecx, 0x207
call fcn.140174270
movzx eax, al
test eax, eax
je 0x14022f096
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14022f06c
mov eax, dword [rsp + 0x94]
or eax, 0x200006
mov dword [rsp + 0x1c4], eax
jmp 0x14022f07f
mov eax, dword [rsp + 0x94]
or eax, 0x200004
mov dword [rsp + 0x1c4], eax
mov edx, dword [rsp + 0x1c4]
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
nop
jmp 0x14022f7ba
mov dl, 1
mov ecx, 0x208
call fcn.140174270
movzx eax, al
test eax, eax
je 0x14022f0fb
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14022f0d1
mov eax, dword [rsp + 0x94]
or eax, 0x200007
mov dword [rsp + 0x1c8], eax
jmp 0x14022f0e4
mov eax, dword [rsp + 0x94]
or eax, 0x200005
mov dword [rsp + 0x1c8], eax
mov edx, dword [rsp + 0x1c8]
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
nop
jmp 0x14022f7ba
mov dl, 1
mov ecx, 0x20a
call fcn.140174270
movzx eax, al
test eax, eax
je 0x14022f16e
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14022f16e
movzx eax, byte [rsp + 0x91]
test eax, eax
jne 0x14022f16e
mov rcx, qword [rsp + 0x58]
call fcn.140251fd0
movzx eax, al
test eax, eax
jne 0x14022f150
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x14022f150
mov edx, 0x60000d
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
nop
mov eax, dword [rsp + 0x94]
or eax, 0x200008
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
nop
jmp 0x14022f7ba
mov dl, 1
mov ecx, 0x20b
call fcn.140174270
movzx eax, al
test eax, eax
je 0x14022f231
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14022f231
mov rcx, qword [rsp + 0x58]
call fcn.140251fd0
movzx eax, al
test eax, eax
jne 0x14022f213
movzx eax, byte [rsp + 0x8c]
test eax, eax
je 0x14022f1c1
mov edx, 0x60000c
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
nop
jmp 0x14022f213
movzx eax, byte [rsp + 0x7a]
test eax, eax
je 0x14022f213
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14022f213
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10e]
test eax, eax
jne 0x14022f213
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10f]
test eax, eax
jne 0x14022f213
mov edx, 0x600004
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
nop
mov eax, dword [rsp + 0x94]
or eax, 0x200009
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
nop
jmp 0x14022f7ba
movzx eax, byte [rsp + 0xf8]
test eax, eax
jne 0x14022f24d
movzx eax, byte [rsp + 0xbe]
test eax, eax
je 0x14022f372
mov eax, dword [rsp + 0x778]
and eax, 0x800
test eax, eax
je 0x14022f26a
mov dword [rsp + 0x1cc], 1
jmp 0x14022f275
mov dword [rsp + 0x1cc], 0
movzx eax, byte [rsp + 0x1cc]
mov byte [rsp + 0xbf], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14022f2d7
movzx eax, byte [rsp + 0xbe]
test eax, eax
jne 0x14022f2d7
movzx eax, byte [rsp + 0xbf]
test eax, eax
je 0x14022f2b8
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14022f2d7
movzx eax, byte [rsp + 0xbf]
test eax, eax
jne 0x14022f30c
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x10c]
test eax, eax
je 0x14022f30c
mov byte [rsp + 0x93], 1
mov rax, qword [rsp + 0x80]
movzx eax, byte [rax + 0x54]
test eax, eax
je 0x14022f305
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x14022f305
mov rcx, qword [rsp + 0x58]
call fcn.140252080
nop
jmp 0x14022f30a
mov byte [rsp + 0x7b], 1
jmp 0x14022f36d
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14022f36d
mov dword [rsp + 0x1d0], 0xa
mov byte [rsp + 0x28], 0
mov rax, qword [rsp + 0x788]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x780]
mov r8d, dword [rsp + 0x778]
lea rdx, [rsp + 0x1d0]
mov rcx, qword [rsp + 0x70]
call fcn.140233b60
movzx eax, al
test eax, eax
je 0x14022f36d
mov edx, dword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
nop
jmp 0x14022f7ba
movzx eax, byte [rsp + 0xf9]
test eax, eax
je 0x14022f3e4
mov eax, dword [rsp + 0x778]
and eax, 0x100000
test eax, eax
je 0x14022f3c3
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x760]
movsx eax, byte [rcx + rax]
test eax, eax
je 0x14022f3ae
mov byte [rsp + 0x7e], 1
jmp 0x14022f3c1
mov byte [rsp + 0x68], 0
movzx eax, byte [rsp + 0x68]
mov byte [rsp + 0x78], al
mov byte [rsp + 0x7b], 1
jmp 0x14022f3df
mov byte [rsp + 0x7e], 1
movzx eax, byte [rsp + 0x7e]
mov byte [rsp + 0x7b], al
mov byte [rsp + 0x68], 0
movzx eax, byte [rsp + 0x68]
mov byte [rsp + 0x78], al
jmp 0x14022f7ba
movzx eax, byte [rsp + 0xc0]
test eax, eax
jne 0x14022f3fc
movzx eax, byte [rsp + 0xfa]
test eax, eax
je 0x14022f441
movzx eax, byte [rsp + 0xc0]
test eax, eax
je 0x14022f415
mov dword [rsp + 0x1d4], 0x20000a
jmp 0x14022f420
mov dword [rsp + 0x1d4], 0x20000b
mov edx, dword [rsp + 0x1d4]
mov rcx, qword [rsp + 0x58]
call fcn.14021f590
mov rcx, qword [rsp + 0x58]
call fcn.140251c10
nop
jmp 0x14022f7ba
movzx eax, byte [rsp + 0xe8]
test eax, eax
je 0x14022f468
mov rcx, qword [rsp + 0x58]
call fcn.140252080
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
jmp 0x14022f7ba
movzx eax, byte [rsp + 0x91]
test eax, eax
jne 0x14022f484
movzx eax, byte [rsp + 0xe9]
test eax, eax
je 0x14022f630
mov rax, qword [rsp + 0x80]
cmp qword [rax + 0xa8], 0
je 0x14022f5e0
mov rcx, qword [rsp + 0x58]
call fcn.140251fd0
movzx eax, al
test eax, eax
je 0x14022f4c9
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.14021f5e0
mov dword [rsp + 0x1d8], eax
jmp 0x14022f4d4
mov dword [rsp + 0x1d8], 0
mov eax, dword [rsp + 0x1d8]
mov dword [rsp + 0x1e4], eax
mov rcx, qword [rsp + 0x58]
call fcn.140251fd0
movzx eax, al
test eax, eax
je 0x14022f511
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.140235550
mov dword [rsp + 0x1dc], eax
jmp 0x14022f520
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0xc]
mov dword [rsp + 0x1dc], eax
mov eax, dword [rsp + 0x1dc]
mov dword [rsp + 0x1e0], eax
movsxd rax, dword [rsp + 0x1e0]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x20]
lea rax, [rcx + rax*2]
movsxd rcx, dword [rsp + 0x1e4]
mov rdx, qword [rsp + 0x58]
mov rdx, qword [rdx + 0x20]
lea rcx, [rdx + rcx*2]
mov rdx, rax
call fcn.14017a760
inc eax
mov dword [rsp + 0x1e8], eax
movsxd rax, dword [rsp + 0x1e8]
mov rcx, rax
call fcn.140175720
mov qword [rsp + 0x330], rax
movsxd rax, dword [rsp + 0x1e0]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x20]
lea rax, [rcx + rax*2]
movsxd rcx, dword [rsp + 0x1e4]
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 + 0x1e8]
mov rcx, qword [rsp + 0x330]
call fcn.140179ff0
mov rcx, qword [rsp + 0x330]
call fcn.140174ba0
mov rcx, qword [rsp + 0x330]
call fcn.1401757a0
nop
movzx eax, byte [rsp + 0x91]
test eax, eax
je 0x14022f62b
mov rcx, qword [rsp + 0x58]
call fcn.140251fd0
movzx eax, al
test eax, eax
jne 0x14022f608
mov rcx, qword [rsp + 0x58]
call fcn.140252080
nop
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.140237150
nop
jmp 0x14022f7ba
movzx eax, byte [rsp + 0xea]
test eax, eax
je 0x14022f7ba
call fcn.140174b30
mov qword [rsp + 0x338], rax
cmp qword [rsp + 0x338], 0
je 0x14022f7ba
mov rcx, qword [rsp + 0x338]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov dword [rsp + 0x2fc], eax
mov eax, dword [rsp + 0x2fc]
inc eax
cdqe
shl rax, 1
mov rcx, rax
call fcn.140175720
mov qword [rsp + 0x268], rax
mov dword [rsp + 0x108], 0
mov rax, qword [rsp + 0x338]
mov qword [rsp + 0x260], rax
mov rax, qword [rsp + 0x260]
movsx eax, byte [rax]
test eax, eax
je 0x14022f75a
xor r8d, r8d
mov rdx, qword [rsp + 0x260]
lea rcx, [rsp + 0x1ec]
call fcn.14017a110
cdqe
mov rcx, qword [rsp + 0x260]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x260], rax
mov byte [rsp + 0x28], 1
mov rax, qword [rsp + 0x788]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x780]
mov r8d, dword [rsp + 0x778]
lea rdx, [rsp + 0x1ec]
mov rcx, qword [rsp + 0x70]
call fcn.140233b60
movzx eax, al
test eax, eax
jne 0x14022f729
jmp 0x14022f6a9
movsxd rax, dword [rsp + 0x108]
mov rcx, qword [rsp + 0x268]
movzx edx, word [rsp + 0x1ec]
mov word [rcx + rax*2], dx
mov eax, dword [rsp + 0x108]
inc eax
mov dword [rsp + 0x108], eax
jmp 0x14022f6a9
movsxd rax, dword [rsp + 0x108]
xor ecx, ecx
mov rdx, qword [rsp + 0x268]
mov word [rdx + rax*2], cx
cmp dword [rsp + 0x108], 0
jle 0x14022f7ac
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov r9d, dword [rsp + 0x108]
mov r8, qword [rsp + 0x268]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.140238af0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rcx, qword [rsp + 0x268]
call fcn.1401757a0
nop
mov rcx, qword [rsp + 0x58]
call fcn.140251fd0
movzx eax, al
test eax, eax
je 0x14022f7e7
xor eax, eax
test eax, eax
jne 0x14022f7da
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x14022f7e7
mov dword [rsp + 0x1f0], 1
jmp 0x14022f7f2
mov dword [rsp + 0x1f0], 0
movzx eax, byte [rsp + 0x68]
or eax, dword [rsp + 0x1f0]
mov byte [rsp + 0x68], al
mov qword [rsp + 0x140], 0
mov dword [rsp + 0x98], 0
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4074], ecx
jne 0x14023000c
movzx eax, byte [rsp + 0x7e]
test eax, eax
je 0x14022f9cd
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14022f9cd
mov eax, dword [rsp + 0x778]
and eax, 0x100000
test eax, eax
je 0x14022f89e
lea rax, [0x140281071]
mov qword [rsp + 0x140], rax
mov dword [rsp + 0x98], 0
mov byte [rsp + 0x7c], 1
mov rax, qword [rsp + 0x58]
add rax, 0x54
xor r9d, r9d
lea r8, [rsp + 0x2f0]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.140238b30
nop
jmp 0x14022f9cd
mov rax, qword [rsp + 0x58]
mov rdx, qword [rax + 0x40]
mov rcx, qword [rsp + 0x760]
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
je 0x14022f9cd
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x40]
mov qword [rsp + 0x140], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x38]
dec eax
mov dword [rsp + 0x98], eax
mov byte [rsp + 0x7c], 1
lea rcx, [rsp + 0x360]
call fcn.1401a04e0
nop
cmp dword [rsp + 0x98], 0
jle 0x14022f971
movsxd rax, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x140]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x140]
call fcn.14017a6a0
inc eax
mov edx, eax
lea rcx, [rsp + 0x360]
call fcn.1401ab060
movsxd rax, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x140]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x20], 0
mov r9, rax
mov r8, qword [rsp + 0x140]
mov edx, dword [rsp + 0x360]
mov rcx, qword [rsp + 0x368]
call fcn.14017a5b0
nop
cmp dword [rsp + 0x98], 0
jle 0x14022f98d
mov eax, dword [rsp + 0x360]
dec eax
mov dword [rsp + 0x1f4], eax
jmp 0x14022f998
mov dword [rsp + 0x1f4], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov r9d, dword [rsp + 0x1f4]
mov r8, qword [rsp + 0x368]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.140238b30
nop
lea rcx, [rsp + 0x360]
call fcn.1401a33d0
nop
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14022fa31
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x48], 1
mov rax, qword [rsp + 0x58]
add rax, 0x28
mov qword [rsp + 0x430], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x18]
lea eax, [rax*4 + 1]
mov edx, eax
mov rcx, qword [rsp + 0x430]
call fcn.1401aaf10
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.140179ff0
nop
movzx eax, byte [rsp + 0x7e]
test eax, eax
je 0x14022fa5e
movzx eax, byte [rsp + 0x93]
test eax, eax
je 0x14022fa54
mov eax, dword [rsp + 0x778]
and eax, 0x20
test eax, eax
jne 0x14022fa5e
mov byte [rsp + 0xc1], 0
jmp 0x14022fa66
mov byte [rsp + 0xc1], 1
movzx eax, byte [rsp + 0xc1]
mov byte [rsp + 0xeb], al
movzx eax, byte [rsp + 0xeb]
test eax, eax
je 0x14023000c
mov eax, dword [rsp + 0x778]
and eax, 0x801c0
test eax, eax
je 0x14022ffc4
mov dword [rsp + 0xf4], 0
mov dword [rsp + 0x158], 0
mov eax, dword [rsp + 0x778]
and eax, 0x40
test eax, eax
je 0x14022faf0
xor r8d, r8d
mov edx, dword [rsp + 0x64]
mov ecx, 0x200
call fcn.140186b10
movzx eax, al
test eax, eax
je 0x14022faf0
mov dword [rsp + 0xf4], 0x40
mov dword [rsp + 0x158], 0x200
jmp 0x14022fbb1
mov eax, dword [rsp + 0x778]
and eax, 0x80
test eax, eax
je 0x14022fb2e
mov dl, 1
mov ecx, 0x203
call fcn.140174270
movzx eax, al
test eax, eax
je 0x14022fb2e
mov dword [rsp + 0xf4], 0x80
mov dword [rsp + 0x158], 0x203
jmp 0x14022fbb1
mov eax, dword [rsp + 0x778]
and eax, 0x80
test eax, eax
je 0x14022fb69
mov dl, 1
mov ecx, 0x204
call fcn.140174270
movzx eax, al
test eax, eax
je 0x14022fb69
mov dword [rsp + 0xf4], 0x80
mov dword [rsp + 0x158], 0x204
jmp 0x14022fbb1
mov eax, dword [rsp + 0x778]
and eax, 0x80000
test eax, eax
je 0x14022fb96
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe86]
test eax, eax
je 0x14022fb96
mov dword [rsp + 0xf4], 0x80000
jmp 0x14022fbb1
mov eax, dword [rsp + 0x778]
and eax, 0x100
test eax, eax
je 0x14022fbb1
mov dword [rsp + 0xf4], 0x100
cmp dword [rsp + 0xf4], 0
je 0x14022ffc4
lea rcx, [rsp + 0x270]
call fcn.14021dd40
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x270], rax
mov eax, dword [rsp + 0xf4]
mov dword [rsp + 0x278], eax
mov eax, dword [rsp + 0x778]
mov dword [rsp + 0x27c], eax
mov rax, qword [rsp + 0x788]
mov qword [rsp + 0x280], rax
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x14022fc20
mov rax, qword [rsp + 0x760]
mov qword [rsp + 0x380], rax
jmp 0x14022fc31
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x380], rax
mov rax, qword [rsp + 0x380]
mov qword [rsp + 0x390], rax
mov eax, dword [rsp + 0x158]
mov dword [rsp + 0x28c], eax
mov rax, qword [rsp + 0x390]
mov qword [rsp + 0x290], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x298], eax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x4c]
mov dword [rsp + 0x29c], eax
mov byte [rsp + 0x2a0], 0
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x1a0], rax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x54]
mov rcx, qword [rsp + 0x1a0]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x1a0]
call fcn.14017a760
mov dword [rsp + 0x2a4], eax
mov eax, dword [rsp + 0x2a4]
mov dword [rsp + 0x304], eax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x58]
mov rcx, qword [rsp + 0x1a0]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x1a0]
call fcn.14017a760
mov dword [rsp + 0x2a8], eax
mov eax, dword [rsp + 0x2a8]
mov dword [rsp + 0x308], eax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x5c]
mov rcx, qword [rsp + 0x1a0]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x1a0]
call fcn.14017a760
mov dword [rsp + 0x2ac], eax
mov eax, dword [rsp + 0x2ac]
mov dword [rsp + 0x30c], eax
mov rax, qword [rsp + 0x780]
mov qword [rsp + 0x438], rax
lea rcx, [rsp + 0x270]
call qword [rsp + 0x438]
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x14022fd7e
mov rax, qword [rsp + 0x760]
mov qword [rsp + 0x3b8], rax
jmp 0x14022fd8f
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x3b8], rax
mov rax, qword [rsp + 0x3b8]
mov qword [rsp + 0x390], rax
movzx eax, byte [rsp + 0x2a0]
mov byte [rsp + 0x8d], al
mov eax, dword [rsp + 0x304]
cmp dword [rsp + 0x2a4], eax
jne 0x14022fdca
movzx eax, byte [rsp + 0x8d]
test eax, eax
je 0x14022fe04
movsxd rax, dword [rsp + 0x2a4]
mov rcx, qword [rsp + 0x290]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x290]
call fcn.14017a6a0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x54], eax
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov eax, dword [rsp + 0x308]
cmp dword [rsp + 0x2a8], eax
jne 0x14022fe20
movzx eax, byte [rsp + 0x8d]
test eax, eax
je 0x14022fe7d
mov eax, dword [rsp + 0x2a4]
cmp dword [rsp + 0x2a8], eax
jne 0x14022fe41
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
mov dword [rsp + 0x1f8], eax
jmp 0x14022fe6e
movsxd rax, dword [rsp + 0x2a8]
mov rcx, qword [rsp + 0x290]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x290]
call fcn.14017a6a0
mov dword [rsp + 0x1f8], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x1f8]
mov dword [rax + 0x58], ecx
mov eax, dword [rsp + 0x30c]
cmp dword [rsp + 0x2ac], eax
jne 0x14022fe99
movzx eax, byte [rsp + 0x8d]
test eax, eax
je 0x14022fef6
mov eax, dword [rsp + 0x2a8]
cmp dword [rsp + 0x2ac], eax
jne 0x14022feba
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x58]
mov dword [rsp + 0x1fc], eax
jmp 0x14022fee7
movsxd rax, dword [rsp + 0x2ac]
mov rcx, qword [rsp + 0x290]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x290]
call fcn.14017a6a0
mov dword [rsp + 0x1fc], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x1fc]
mov dword [rax + 0x5c], ecx
movzx eax, byte [rsp + 0x8d]
test eax, eax
je 0x14022ffc4
mov r8d, dword [rsp + 0x298]
mov rdx, qword [rsp + 0x290]
mov rcx, qword [rsp + 0x58]
call fcn.140238c00
nop
mov eax, dword [rsp + 0x174]
cmp dword [rsp + 0x298], eax
jle 0x14022ff78
movzx eax, byte [rsp + 0x92]
test eax, eax
je 0x14022ff78
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x440], rax
mov eax, dword [rsp + 0x174]
mov ecx, dword [rsp + 0x298]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x58]
add eax, dword [rcx + 0x18]
mov edx, eax
mov rcx, qword [rsp + 0x440]
call fcn.1401ab060
nop
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8, qword [rsp + 0x290]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x18]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.14017a5b0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x298]
mov dword [rax + 0x10], ecx
mov rcx, qword [rsp + 0x58]
call fcn.140251ca0
nop
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14023000c
mov rdx, qword [rsp + 0x760]
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 0x14023000c
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x140], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x98], eax
mov byte [rsp + 0x7c], 1
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x5d78], ecx
jne 0x14023009c
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4074], ecx
je 0x14023008d
call fcn.140173310
movzx eax, al
test eax, eax
je 0x14023008d
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x14023008d
mov rdx, qword [rsp + 0x760]
mov rax, qword [rsp + 0x70]
mov rcx, qword [rax + 0x5d88]
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
je 0x14023008d
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x5d88]
mov qword [rsp + 0x140], rax
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x5d80]
dec eax
mov dword [rsp + 0x98], eax
mov byte [rsp + 0x7c], 1
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x5d78], 0
cmp qword [rsp + 0x140], 0
je 0x1402301c7
movzx eax, byte [rsp + 0x92]
test eax, eax
je 0x140230195
lea rcx, [rsp + 0x550]
call fcn.14021dd40
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x550], rax
mov dword [rsp + 0x558], 0x40000
mov eax, dword [rsp + 0x778]
mov dword [rsp + 0x55c], eax
mov rax, qword [rsp + 0x760]
mov qword [rsp + 0x570], rax
mov eax, dword [rsp + 0x98]
mov dword [rsp + 0x578], eax
mov eax, dword [rsp + 0x98]
inc eax
mov edx, eax
mov ecx, dword [rsp + 0x768]
call fcn.140235550
mov dword [rsp + 0x57c], eax
mov rax, qword [rsp + 0x788]
mov qword [rsp + 0x560], rax
mov rax, qword [rsp + 0x780]
mov qword [rsp + 0x448], rax
lea rcx, [rsp + 0x550]
call qword [rsp + 0x448]
mov rax, qword [rsp + 0x570]
mov qword [rsp + 0x760], rax
mov eax, dword [rsp + 0x57c]
mov dword [rsp + 0x768], eax
mov eax, dword [rsp + 0x768]
dec eax
mov edx, eax
mov ecx, dword [rsp + 0x578]
call fcn.14021f5e0
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x98]
inc eax
mov edx, dword [rsp + 0x768]
mov ecx, eax
call fcn.14021f5e0
cdqe
mov r8, rax
mov rdx, qword [rsp + 0x140]
mov rcx, qword [rsp + 0x760]
call fcn.1401794e0
nop
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4074], ecx
jne 0x1402301e9
movzx eax, byte [rsp + 0x7b]
test eax, eax
je 0x1402301e9
call fcn.140180f10
nop
jmp 0x140230209
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4074], ecx
jne 0x140230209
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x6210], 1
mov eax, 4
mov eax, eax
mov ecx, dword [0x1404611b0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov eax, dword [rax + rcx]
cmp dword [0x140460bb0], eax
jle 0x140230269
lea rcx, [0x140460bb0]
call fcn.1402597c8
cmp dword [0x140460bb0], 0xffffffff
jne 0x140230269
lea rcx, [0x140460ba0]
call fcn.140250480
lea rcx, [0x14025df10]
call fcn.1402591e0
nop
lea rcx, [0x140460bb0]
call fcn.14025975c
nop
lea r8, [rsp + 0x64]
lea rdx, [rsp + 0x118]
lea rcx, [0x140460ba0]
call fcn.1402563a0
nop
lea rdx, [rsp + 0x628]
lea rcx, [0x140460ba0]
call fcn.140256090
mov rdx, rax
lea rcx, [rsp + 0x118]
call fcn.140251570
movzx eax, al
test eax, eax
je 0x140230325
lea rax, [rsp + 0x6d0]
mov rdi, rax
xor eax, eax
mov ecx, 0x2c
rep stosb byte [rdi], al
lea rcx, [rsp + 0x6d0]
call fcn.1402507b0
mov r8, rax
lea rdx, [rsp + 0x64]
lea rcx, [rsp + 0x6fc]
call fcn.14023c1e0
lea r8, [rsp + 0x6fc]
lea rdx, [rsp + 0x6b0]
lea rcx, [0x140460ba0]
call fcn.14024f360
nop
lea r8, [rsp + 0x64]
lea rdx, [rsp + 0x650]
lea rcx, [0x140460ba0]
call fcn.1402563a0
mov rax, qword [rax]
mov qword [rsp + 0x118], rax
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x18]
mulss xmm0, dword [0x14025fe04]
movss dword [rsp + 0x310], xmm0
call fcn.140173060
movzx eax, al
test eax, eax
je 0x14023035d
lea rax, [0x140460aa0]
mov qword [rsp + 0x398], rax
jmp 0x14023036c
lea rax, [0x1404609d0]
mov qword [rsp + 0x398], rax
mov rax, qword [rsp + 0x398]
mov qword [rsp + 0x450], rax
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0x458], rax
lea rcx, [rsp + 0x118]
call fcn.140251770
add rax, 0x14
mov qword [rsp + 0x460], rax
movss xmm3, dword [rsp + 0x310]
mov r8, qword [rsp + 0x458]
mov rdx, qword [rsp + 0x460]
lea rcx, [rsp + 0x6c0]
call fcn.14021ee30
lea rcx, [rsp + 0x630]
mov rdi, rcx
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x118]
call fcn.140251770
lea rcx, [rsp + 0x630]
lea rdi, [rax + 0x14]
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1402304ad
call fcn.14016e540
mov qword [rsp + 0x468], rax
movss xmm0, dword [0x140458a84]
movss dword [rsp + 0x314], xmm0
lea rcx, [rsp + 0x118]
call fcn.140251770
add rax, 0x14
mov rcx, rax
call fcn.14016fcf0
mov dword [rsp + 0x318], eax
movss xmm0, dword [0x14025fd70]
movss dword [rsp + 0x30], xmm0
mov dword [rsp + 0x28], 0
movss xmm0, dword [rsp + 0x314]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x318]
lea r8, [rsp + 0x188]
lea rdx, [rsp + 0x180]
mov rcx, qword [rsp + 0x468]
call fcn.1401d4250
xor r8d, r8d
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x180]
call fcn.140188600
nop
movss xmm0, dword [rsp + 0x184]
addss xmm0, dword [rsp + 0x114]
movss xmm1, dword [rsp + 0x180]
addss xmm1, dword [rsp + 0x110]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm1
movss xmm2, dword [rsp + 0x184]
movss xmm1, dword [rsp + 0x180]
lea rcx, [rsp + 0x520]
call fcn.1401570d0
nop
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14023052c
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x110]
mov qword [rsp + 0x470], rax
lea rax, [rsp + 0x470]
mov qword [rsp + 0x3a0], rax
jmp 0x140230558
mov rax, qword [rsp + 0xe0]
add rax, 0x3c
mov r8, rax
lea rdx, [rsp + 0x180]
lea rcx, [rsp + 0x590]
call fcn.14021e160
mov qword [rsp + 0x3a0], rax
mov rax, qword [rsp + 0x3a0]
mov qword [rsp + 0x478], rax
mov rax, qword [rsp + 0x478]
mov rax, qword [rax]
mov qword [rsp + 0x120], rax
xorps xmm2, xmm2
xorps xmm1, xmm1
lea rcx, [rsp + 0x248]
call fcn.140157090
mov dword [rsp + 0x50c], 0x200000
movzx eax, byte [rsp + 0xc2]
test eax, eax
je 0x1402305b8
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x3a8], rax
jmp 0x1402305c8
mov rax, qword [rsp + 0x760]
mov qword [rsp + 0x3a8], rax
mov rax, qword [rsp + 0x3a8]
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x148], 0
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x140230620
mov rax, qword [rsp + 0x758]
mov qword [rsp + 0x130], rax
mov rcx, qword [rsp + 0x758]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov rcx, qword [rsp + 0x758]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x148], rax
movzx eax, byte [rsp + 0x78]
test eax, eax
jne 0x140230636
movzx eax, byte [rsp + 0x68]
test eax, eax
je 0x1402313ca
movzx eax, byte [rsp + 0x79]
test eax, eax
jne 0x14023065e
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x130]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x148], rax
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x240], rax
lea rcx, [rsp + 0x128]
call fcn.1401a31e0
lea rcx, [rsp + 0x3b0]
call fcn.1401a31e0
nop
mov qword [rsp + 0x2b0], 0
mov qword [rsp + 0x2b8], 0
mov dword [rsp + 0x100], 0xfffffc18
mov dword [rsp + 0x104], 0xfffffc18
mov dword [rsp + 0x9c], 0
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x140230716
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x54]
mov rcx, qword [rsp + 0x240]
lea rax, [rcx + rax*2]
mov ecx, 8
imul rcx, rcx, 0
mov qword [rsp + rcx + 0x2b0], 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 + 0x68]
test eax, eax
je 0x140230777
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.14021f5e0
cdqe
mov rcx, qword [rsp + 0x240]
lea rax, [rcx + rax*2]
mov ecx, 8
imul rcx, rcx, 1
mov qword [rsp + rcx + 0x2b0], 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 0x14023078d
mov dword [rsp + 0x200], 1
jmp 0x140230798
mov dword [rsp + 0x200], 0
mov eax, dword [rsp + 0x200]
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 + 0x240]
mov qword [rsp + 0x190], rax
jmp 0x1402307e2
mov rax, qword [rsp + 0x190]
add rax, 2
mov qword [rsp + 0x190], rax
mov rax, qword [rsp + 0x190]
movzx eax, word [rax]
test eax, eax
je 0x1402308e0
mov rax, qword [rsp + 0x190]
movzx eax, word [rax]
cmp eax, 0xa
jne 0x1402308db
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 0x14023087a
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x2b0]
cmp qword [rsp + 0x190], rax
jb 0x14023087a
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 0x14023087a
jmp 0x1402308e0
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0x100], 0xffffffff
jne 0x1402308db
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x2b0]
cmp qword [rsp + 0x190], rax
jb 0x1402308db
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 0x1402308db
jmp 0x1402308e0
jmp 0x1402307ce
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 0x14023091a
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 0x140230944
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 + 0x2b0]
mov qword [rsp + 0x480], rax
mov eax, 8
imul rax, rax, 0
mov rdx, qword [rsp + 0x240]
mov rcx, qword [rsp + rax + 0x2b0]
call fcn.140179a20
mov qword [rsp + 0x488], rax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x480]
mov r8, qword [rsp + 0x488]
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x598]
call fcn.140233fa0
movss xmm0, dword [rax]
movss dword [rsp + 0x128], 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 + 0x12c], xmm0
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0x100], 0
jl 0x140230ab5
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x2b0]
mov qword [rsp + 0x490], rax
mov eax, 8
imul rax, rax, 1
mov rdx, qword [rsp + 0x240]
mov rcx, qword [rsp + rax + 0x2b0]
call fcn.140179a20
mov qword [rsp + 0x498], rax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x490]
mov r8, qword [rsp + 0x498]
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x5a0]
call fcn.140233fa0
movss xmm0, dword [rax]
movss dword [rsp + 0x3b0], 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 + 0x3b4], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140230af8
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 + 0x5a8]
call fcn.140157090
mov rax, qword [rax]
mov qword [rsp + 0x248], rax
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x140230d8d
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe84]
test eax, eax
je 0x140230d8d
mov eax, dword [rsp + 0x778]
and eax, 0x1000
test eax, eax
jne 0x140230bf7
movss xmm0, dword [rsp + 0x110]
mulss xmm0, dword [0x140264a54]
movss dword [rsp + 0x208], xmm0
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rsp + 0x110]
subss xmm0, dword [rax + 0x3c]
movss dword [rsp + 0x204], xmm0
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 0x50]
comiss xmm0, dword [rsp + 0x128]
jbe 0x140230bab
movss xmm0, dword [rsp + 0x128]
subss xmm0, dword [rsp + 0x208]
movaps xmm1, xmm0
xorps xmm0, xmm0
call fcn.14021f260
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x58]
movss dword [rax + 0x50], xmm0
jmp 0x140230bf5
movss xmm0, dword [rsp + 0x128]
subss xmm0, dword [rsp + 0x204]
mov rax, qword [rsp + 0x58]
comiss xmm0, dword [rax + 0x50]
jb 0x140230bf5
movss xmm0, dword [rsp + 0x128]
subss xmm0, dword [rsp + 0x204]
addss xmm0, dword [rsp + 0x208]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x58]
movss dword [rax + 0x50], xmm0
jmp 0x140230c04
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
movss dword [rax + 0x50], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140230d81
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x12c]
subss xmm0, dword [rax + 0x3d40]
movss xmm1, dword [rsp + 0xa0]
comiss xmm1, xmm0
jbe 0x140230c61
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x12c]
subss xmm0, dword [rax + 0x3d40]
movaps xmm1, xmm0
xorps xmm0, xmm0
call fcn.14021f260
movss dword [rsp + 0xa0], xmm0
jmp 0x140230cd4
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x14025fd90]
movss xmm1, dword [rsp + 0x114]
subss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [rsp + 0x12c]
subss xmm1, xmm0
movaps xmm0, xmm1
comiss xmm0, dword [rsp + 0xa0]
jb 0x140230cd4
movss xmm0, dword [rsp + 0x12c]
subss xmm0, dword [rsp + 0x114]
mov rax, qword [rsp + 0xe0]
movss xmm1, dword [rax + 0x40]
mulss xmm1, dword [0x14025fd90]
addss xmm0, xmm1
movss dword [rsp + 0xa0], xmm0
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x14025fd90]
movss xmm1, dword [rsp + 0x24c]
addss xmm1, xmm0
movaps xmm0, xmm1
subss xmm0, dword [rsp + 0x114]
xorps xmm1, xmm1
call fcn.14021f260
movss dword [rsp + 0x31c], xmm0
movss xmm2, dword [rsp + 0x31c]
xorps xmm1, xmm1
movss xmm0, dword [rsp + 0xa0]
call fcn.140234200
movss dword [rsp + 0xa0], xmm0
mov rax, qword [rsp + 0xd0]
movss xmm0, dword [rax + 0x90]
subss xmm0, dword [rsp + 0xa0]
movss xmm1, dword [rsp + 0x124]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x124], xmm0
mov rax, qword [rsp + 0xd0]
movss xmm0, dword [rsp + 0xa0]
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 + 0x388]
call fcn.140157090
nop
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140230dd3
mov rax, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x148]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x140230f64
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x140230ded
lea rax, [0x140460990]
mov qword [rsp + 0x3e0], rax
jmp 0x140230dfc
lea rax, [0x1404609a0]
mov qword [rsp + 0x3e0], rax
mov rax, qword [rsp + 0x3e0]
mov qword [rsp + 0x4a0], rax
mov rcx, qword [rsp + 0x4a0]
call fcn.14016fcf0
mov dword [rsp + 0x320], eax
movss xmm0, dword [rsp + 0x120]
addss xmm0, dword [0x140264aa0]
movss xmm1, dword [rsp + 0x124]
addss xmm1, dword [0x140264a9c]
movaps xmm2, xmm1
movaps xmm1, xmm0
lea rcx, [rsp + 0x4a8]
call fcn.140157090
mov rax, qword [rsp + 0x4a8]
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x2a8]
mov qword [rsp + 0x4c8], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140230e93
mov qword [rsp + 0x3c0], 0
jmp 0x140230ea3
lea rax, [rsp + 0x520]
mov qword [rsp + 0x3c0], rax
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0x4b0], rax
lea r8, [rsp + 0x388]
lea rdx, [rsp + 0x120]
lea rcx, [rsp + 0x5b0]
call fcn.14021e1c0
mov qword [rsp + 0x4b8], rax
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x3d40]
movss dword [rsp + 0x344], xmm0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x3d38]
mov qword [rsp + 0x4c0], rax
mov rax, qword [rsp + 0x3c0]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov rax, qword [rsp + 0x4b0]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x320]
mov dword [rsp + 0x20], eax
mov r9, qword [rsp + 0x4b8]
movss xmm2, dword [rsp + 0x344]
mov rdx, qword [rsp + 0x4c0]
mov rcx, qword [rsp + 0x4c8]
call fcn.1401d4e70
nop
movzx eax, byte [rsp + 0x78]
test eax, eax
je 0x1402313c5
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 + 0x5b]
test eax, eax
je 0x140230feb
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
comiss xmm0, dword [rax + 0xe80]
jae 0x140230feb
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 0xe80]
movss xmm1, dword [0x14025fd74]
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_fmodf]
movss xmm1, dword [0x140264a7c]
comiss xmm1, xmm0
jae 0x140230feb
mov dword [rsp + 0x20c], 0
jmp 0x140230ff6
mov dword [rsp + 0x20c], 1
movzx eax, byte [rsp + 0x20c]
mov byte [rsp + 0xec], al
lea r8, [rsp + 0x128]
lea rdx, [rsp + 0x120]
lea rcx, [rsp + 0x5b8]
call fcn.14021e160
lea r8, [rsp + 0x388]
mov rdx, rax
lea rcx, [rsp + 0x5c0]
call fcn.14021e1c0
mov rdx, rax
lea rcx, [rsp + 0x198]
call fcn.14021f0b0
nop
movss xmm0, dword [rsp + 0x19c]
subss xmm0, dword [0x14025fd78]
movss xmm1, dword [rsp + 0x198]
addss xmm1, dword [0x14025fd70]
mov rax, qword [rsp + 0x70]
movss xmm2, dword [rsp + 0x19c]
subss xmm2, dword [rax + 0x3d40]
addss xmm2, dword [0x14025fd48]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm1
movss xmm1, dword [rsp + 0x198]
lea rcx, [rsp + 0x538]
call fcn.1401a3100
nop
lea rdx, [rsp + 0x520]
lea rcx, [rsp + 0x640]
call fcn.1401a3090
lea rdx, [rsp + 0x640]
lea rcx, [rsp + 0x538]
call fcn.1401a5f80
movzx eax, al
test eax, eax
je 0x140231350
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x18]
mulss xmm0, dword [0x14025fe20]
movss dword [rsp + 0x2e8], xmm0
lea rcx, [rsp + 0x118]
call fcn.140251770
movss xmm0, dword [rax + 0x24]
movss dword [rsp + 0x340], xmm0
movss xmm0, dword [rsp + 0x538]
subss xmm0, dword [rsp + 0x350]
movss xmm2, dword [rsp + 0x2e8]
movaps xmm1, xmm0
movss xmm0, dword [rsp + 0x340]
call fcn.1402341c0
movss dword [rsp + 0x348], xmm0
lea rcx, [rsp + 0x118]
call fcn.140251770
movss xmm0, dword [rsp + 0x348]
movss dword [rax + 0x24], xmm0
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rax + 0x18]
mulss xmm0, dword [0x14025fe04]
movss dword [rsp + 0x2c0], xmm0
movzx eax, byte [rsp + 0xec]
test eax, eax
je 0x1402311a0
movss xmm0, dword [0x14025fd70]
movss dword [rsp + 0x210], xmm0
jmp 0x1402311ac
xorps xmm0, xmm0
movss dword [rsp + 0x210], xmm0
lea rcx, [rsp + 0x118]
call fcn.140251770
movss xmm0, dword [rax + 0x28]
movss dword [rsp + 0x2c4], xmm0
movss xmm2, dword [rsp + 0x2c0]
movss xmm1, dword [rsp + 0x210]
movss xmm0, dword [rsp + 0x2c4]
call fcn.1402341c0
movss dword [rsp + 0x2c8], xmm0
lea rcx, [rsp + 0x118]
call fcn.140251770
movss xmm0, dword [rsp + 0x2c8]
movss dword [rax + 0x28], xmm0
lea rcx, [rsp + 0x118]
call fcn.140251770
movss xmm1, dword [rax + 0x28]
xor ecx, ecx
call fcn.14016f590
nop
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x2a8]
mov qword [rsp + 0x4f0], rax
lea rcx, [0x1404609a0]
call fcn.14016fcf0
mov dword [rsp + 0x2cc], eax
lea rcx, [rsp + 0x118]
call fcn.140251770
movss xmm0, dword [rax + 0x24]
xorps xmm0, xmmword [0x14025fea0]
movss xmm2, dword [0x140264a9c]
movaps xmm1, xmm0
lea rcx, [rsp + 0x5c8]
call fcn.140157090
mov qword [rsp + 0x4d0], rax
lea rdx, [rsp + 0x5d0]
lea rcx, [rsp + 0x350]
call fcn.1401a5580
mov qword [rsp + 0x4d8], rax
mov r8, qword [rsp + 0x4d0]
mov rdx, qword [rsp + 0x4d8]
lea rcx, [rsp + 0x5d8]
call fcn.14021e1c0
mov qword [rsp + 0x4e0], rax
lea rcx, [rsp + 0x118]
call fcn.140251770
movss xmm2, dword [0x140264a9c]
movss xmm1, dword [rax + 0x24]
lea rcx, [rsp + 0x5e0]
call fcn.140157090
mov r8, rax
lea rdx, [rsp + 0x350]
lea rcx, [rsp + 0x5e8]
call fcn.14021e160
mov qword [rsp + 0x4e8], rax
movss xmm0, dword [0x14025fd70]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x2cc]
mov r8, qword [rsp + 0x4e0]
mov rdx, qword [rsp + 0x4e8]
mov rcx, qword [rsp + 0x4f0]
call fcn.1401d4180
nop
mov ecx, 1
call fcn.14016f6f0
nop
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1402313c5
mov rax, qword [rsp + 0x70]
mov byte [rax + 0x5f30], 1
mov rax, qword [rsp + 0x70]
movss xmm0, dword [rsp + 0x19c]
subss xmm0, dword [rax + 0x3d40]
movss xmm1, dword [rsp + 0x198]
subss xmm1, dword [0x14025fd70]
movaps xmm2, xmm0
lea rcx, [rsp + 0x5f0]
call fcn.140157090
mov rax, qword [rax]
mov rcx, qword [rsp + 0x70]
mov qword [rcx + 0x5f34], rax
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x70]
movss xmm0, dword [rcx + 0x3d40]
movss dword [rax + 0x5f3c], xmm0
jmp 0x1402315da
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14023141f
lea rdx, [rsp + 0x148]
mov rcx, qword [rsp + 0x130]
call fcn.140233ee0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x70]
mulss xmm0, dword [rax + 0x3d40]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x110]
lea rcx, [rsp + 0x5f8]
call fcn.140157090
mov rax, qword [rax]
mov qword [rsp + 0x248], rax
jmp 0x140231486
movzx eax, byte [rsp + 0x79]
test eax, eax
jne 0x14023145a
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
cmp dword [rax + 0x4074], ecx
jne 0x14023145a
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x130]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x148], rax
jmp 0x140231486
movzx eax, byte [rsp + 0x79]
test eax, eax
jne 0x140231486
mov rcx, qword [rsp + 0x130]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov rcx, qword [rsp + 0x130]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x148], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1402314b1
mov rax, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x148]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x1402315da
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x1402314c7
mov dword [rsp + 0x214], 1
jmp 0x1402314d2
mov dword [rsp + 0x214], 0
movss xmm1, dword [0x14025fd70]
mov ecx, dword [rsp + 0x214]
call fcn.14016fc70
mov dword [rsp + 0x2d0], eax
movss xmm0, dword [rsp + 0x120]
addss xmm0, dword [0x140264aa0]
movss xmm1, dword [rsp + 0x124]
addss xmm1, dword [0x140264a9c]
movaps xmm2, xmm1
movaps xmm1, xmm0
lea rcx, [rsp + 0x4f8]
call fcn.140157090
mov rax, qword [rsp + 0x4f8]
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 0x2a8]
mov qword [rsp + 0x500], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140231560
mov qword [rsp + 0x3c8], 0
jmp 0x140231570
lea rax, [rsp + 0x520]
mov qword [rsp + 0x3c8], rax
mov rax, qword [rsp + 0x3c8]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x2d0]
mov dword [rsp + 0x20], eax
lea r9, [rsp + 0x120]
mov rax, qword [rsp + 0x70]
movss xmm2, dword [rax + 0x3d40]
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax + 0x3d38]
mov rcx, qword [rsp + 0x500]
call fcn.1401d4e70
nop
movzx eax, byte [rsp + 0x7f]
test eax, eax
je 0x1402315f2
movzx eax, byte [rsp + 0x79]
test eax, eax
jne 0x1402315f2
call fcn.14016f2b0
nop
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1402316c0
mov rax, qword [rsp + 0xe0]
movss xmm0, dword [rsp + 0x24c]
addss xmm0, dword [rax + 0x40]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x248]
lea rcx, [rsp + 0x600]
call fcn.140157090
mov rcx, rax
call fcn.14020df70
nop
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x49a4]
or eax, 0x401
mov rcx, qword [rsp + 0x70]
mov dword [rcx + 0x49a4], eax
call fcn.14016df90
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x49c8]
and eax, 0x80
mov ecx, dword [rsp + 0x668]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x668], eax
call fcn.140170600
nop
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x49c0], 0
jne 0x1402316c0
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x64]
mov dword [rax + 0x49c0], ecx
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x664]
mov dword [rax + 0x49c4], ecx
mov rax, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x668]
mov dword [rax + 0x49c8], ecx
mov rax, qword [rsp + 0x70]
movzx eax, byte [rax + 0x5ff0]
test eax, eax
je 0x140231713
movzx eax, byte [rsp + 0x7f]
test eax, eax
je 0x1402316e2
movzx eax, byte [rsp + 0x79]
test eax, eax
je 0x140231713
lea rdx, [0x1402810bc]
lea rcx, [0x1402810c0]
call fcn.1401826a0
mov r8, qword [rsp + 0x148]
mov rdx, qword [rsp + 0x130]
lea rcx, [rsp + 0x120]
call fcn.140182380
nop
movzx eax, byte [rsp + 0x7c]
test eax, eax
je 0x140231736
mov eax, dword [rsp + 0x778]
and eax, 0x8000000
test eax, eax
jne 0x140231736
mov ecx, dword [rsp + 0x64]
call fcn.140181050
nop
mov eax, dword [rsp + 0x778]
and eax, 0x20
test eax, eax
je 0x140231750
movzx eax, byte [rsp + 0x93]
jmp 0x140231755
movzx eax, byte [rsp + 0x7c]
add rsp, 0x738
pop rdi
pop rsi
ret