Function at 0x140153fe0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0x808
mov rax, qword [0x14090abc0]
xor rax, rsp
mov qword [rsp + 0x7f8], rax
call fcn.1400e9d80
mov qword [rsp + 0x118], rax
mov rax, qword [rsp + 0x118]
movzx eax, byte [rax + 0xbb]
test eax, eax
je 0x140154036
xor al, al
jmp 0x140158e4a
mov rax, qword [0x14090bdd0]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
add rax, 8
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x68]
add rax, 0x37c8
mov qword [rsp + 0xe8], rax
mov byte [rsp + 0x14c], 0
mov eax, dword [rsp + 0x848]
and eax, 0x4000000
test eax, eax
je 0x140154085
mov byte [rsp + 0xb5], 1
jmp 0x14015408d
mov byte [rsp + 0xb5], 0
movzx eax, byte [rsp + 0xb5]
mov byte [rsp + 0x50], al
mov eax, dword [rsp + 0x848]
and eax, 0x4000
test eax, eax
je 0x1401540b3
mov byte [rsp + 0xbe], 1
jmp 0x1401540bb
mov byte [rsp + 0xbe], 0
movzx eax, byte [rsp + 0xbe]
mov byte [rsp + 0x60], al
mov eax, dword [rsp + 0x848]
and eax, 0x8000
test eax, eax
je 0x1401540e1
mov byte [rsp + 0xbf], 1
jmp 0x1401540e9
mov byte [rsp + 0xbf], 0
movzx eax, byte [rsp + 0xbf]
mov byte [rsp + 0x77], al
mov eax, dword [rsp + 0x848]
and eax, 0x10000
test eax, eax
jne 0x14015410f
mov byte [rsp + 0xc0], 1
jmp 0x140154117
mov byte [rsp + 0xc0], 0
movzx eax, byte [rsp + 0xc0]
mov byte [rsp + 0xb1], al
mov eax, dword [rsp + 0x848]
and eax, 0x40000
test eax, eax
je 0x140154140
mov byte [rsp + 0xc1], 1
jmp 0x140154148
mov byte [rsp + 0xc1], 0
movzx eax, byte [rsp + 0xc1]
mov byte [rsp + 0x89], al
movzx eax, byte [rsp + 0x89]
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14015416e
call fcn.1400e1dc0
nop
xor r8d, r8d
mov rdx, qword [rsp + 0x820]
mov rcx, qword [rsp + 0x118]
call fcn.1400ea1e0
mov dword [rsp + 0x624], eax
movss xmm0, dword [0x14030a624]
movss dword [rsp + 0x20], xmm0
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rsp + 0x820]
lea rcx, [rsp + 0x788]
call fcn.1400e3180
nop
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1401541e0
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x3c30]
mulss xmm0, dword [0x140310d5c]
movss dword [rsp + 0x194], xmm0
jmp 0x1401541f2
movss xmm0, dword [rsp + 0x78c]
movss dword [rsp + 0x194], xmm0
mov rax, qword [rsp + 0xe8]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x14030a230]
movss xmm1, dword [rsp + 0x194]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x258], xmm0
call fcn.1400e2970
movss dword [rsp + 0x25c], xmm0
mov rax, qword [rsp + 0x840]
mov rax, qword [rax]
mov qword [rsp + 0x3f0], rax
mov rax, qword [rsp + 0x3f0]
mov qword [rsp + 0x3f8], rax
movss xmm3, dword [rsp + 0x258]
movss xmm2, dword [rsp + 0x25c]
mov rdx, qword [rsp + 0x3f8]
lea rcx, [rsp + 0x760]
call fcn.1400e2820
nop
movss xmm0, dword [rsp + 0x764]
movss dword [rsp + 0x260], xmm0
movss xmm0, dword [rsp + 0x788]
comiss xmm0, dword [0x14030a21c]
jbe 0x1401542be
mov rax, qword [rsp + 0xe8]
movss xmm0, dword [rax + 0x54]
addss xmm0, dword [rsp + 0x788]
movss dword [rsp + 0x1b0], xmm0
jmp 0x1401542ca
xorps xmm0, xmm0
movss dword [rsp + 0x1b0], xmm0
movss xmm0, dword [rsp + 0x760]
addss xmm0, dword [rsp + 0x1b0]
movss xmm2, dword [rsp + 0x260]
movaps xmm1, xmm0
lea rcx, [rsp + 0x7b0]
call fcn.14003b880
nop
mov rax, qword [rsp + 0x118]
add rax, 0x100
lea r8, [rsp + 0x760]
mov rdx, rax
lea rcx, [rsp + 0x498]
call fcn.1400dbfa0
mov rcx, qword [rsp + 0x118]
add rcx, 0x100
mov r8, rax
mov rdx, rcx
lea rcx, [rsp + 0x730]
call fcn.1400daff0
nop
lea r8, [rsp + 0x7b0]
lea rdx, [rsp + 0x730]
lea rcx, [rsp + 0x4a0]
call fcn.1400dbfa0
mov r8, rax
lea rdx, [rsp + 0x730]
lea rcx, [rsp + 0x698]
call fcn.1400daff0
nop
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0x760]
mov qword [rsp + 0x628], rax
mov dword [rsp + 0x140], 0
lea rcx, [rsp + 0x7b8]
call fcn.1400d9c40
nop
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140154654
mov rax, qword [rsp + 0x118]
mov rax, qword [rax + 0x100]
mov qword [rsp + 0x7a8], rax
mov rax, qword [rsp + 0xe8]
movss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x698]
call fcn.14010fe20
nop
mov r9d, 0x400
lea r8, [rsp + 0x730]
mov edx, dword [rsp + 0x624]
lea rcx, [rsp + 0x698]
call fcn.1400ef750
movzx eax, al
test eax, eax
jne 0x140154422
call fcn.1400e6ea0
xor al, al
jmp 0x140158e4a
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x47b8]
mov dword [rsp + 0x140], eax
lea rax, [rsp + 0x7b8]
mov rcx, qword [rsp + 0x68]
mov rdi, rax
lea rsi, [rcx + 0x47b0]
mov ecx, reloc.WLDAP32.dll_Ordinal_60
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x7a8]
mov qword [rax + 0x100], rcx
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4918]
mov dword [rsp + 0x268], eax
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x624]
cmp dword [rax + 0x3f68], ecx
jne 0x14015449e
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x4918], 0
mov eax, reloc.WS2_32.dll_recv
imul rax, rax, 7
mov rcx, qword [rsp + 0xe8]
lea rax, [rcx + rax + 0xec]
mov rdx, rax
mov ecx, 3
call fcn.1400f86a0
mov rax, qword [rsp + 0xe8]
movss xmm1, dword [rax + 0x44]
mov ecx, 7
call fcn.1400f88e0
mov rax, qword [rsp + 0xe8]
movss xmm1, dword [rax + 0x48]
mov ecx, 8
call fcn.1400f88e0
nop
xorps xmm2, xmm2
xorps xmm1, xmm1
lea rcx, [rsp + 0x4a8]
call fcn.14003b880
mov rdx, rax
mov ecx, 2
call fcn.1400f8830
nop
lea rdx, [rsp + 0x4b0]
lea rcx, [rsp + 0x730]
call fcn.1400eaed0
mov qword [rsp + 0x410], rax
mov eax, dword [rsp + 0x624]
mov dword [rsp + 0x264], eax
mov dword [rsp + 0x20], 4
mov r9b, 1
mov r8, qword [rsp + 0x410]
mov edx, dword [rsp + 0x264]
mov rcx, qword [rsp + 0x820]
call fcn.1400e1440
mov byte [rsp + 0xd8], al
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x268]
mov dword [rax + 0x4918], ecx
mov ecx, 3
call fcn.1400f8160
mov ecx, 1
call fcn.1400f80b0
nop
movzx eax, byte [rsp + 0xd8]
test eax, eax
jne 0x1401545b1
call fcn.1400e6570
call fcn.1400e6ea0
xor al, al
jmp 0x140158e4a
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3f08]
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xc8]
mov eax, dword [rax + 0x158]
mov ecx, 1
mov dword [rsp + 0x26c], ecx
movzx ecx, al
mov eax, dword [rsp + 0x26c]
shl eax, cl
mov rcx, qword [rsp + 0xc8]
movsx ecx, word [rcx + 0x15e]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0xc8]
mov word [rcx + 0x15e], ax
mov rax, qword [rsp + 0xe8]
add rax, 0x3c
mov rcx, qword [rsp + 0xc8]
add rcx, 0x100
mov rdx, rax
call fcn.1400dc0d0
mov rax, qword [rsp + 0xc8]
movss xmm0, dword [rsp + 0x628]
subss xmm0, dword [rax + 0xac]
movss dword [rsp + 0x628], xmm0
jmp 0x1401546c1
mov rax, qword [rsp + 0xe8]
movss xmm1, dword [rax + 0x40]
lea rcx, [rsp + 0x698]
call fcn.14010fe20
nop
mov eax, dword [rsp + 0x848]
and eax, 0x10000000
test eax, eax
jne 0x1401546af
mov r9d, 0x400
lea r8, [rsp + 0x730]
mov edx, dword [rsp + 0x624]
lea rcx, [rsp + 0x698]
call fcn.1400ef750
movzx eax, al
test eax, eax
jne 0x1401546af
xor al, al
jmp 0x140158e4a
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x47b8]
mov dword [rsp + 0x140], eax
mov rax, qword [rsp + 0x68]
mov r8d, dword [rax + 0x47b4]
mov edx, dword [rsp + 0x624]
lea rcx, [rsp + 0x730]
call fcn.1400efa30
mov byte [rsp + 0x81], al
movzx eax, byte [rsp + 0x81]
test eax, eax
je 0x140154703
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x4ca8], 1
mov ecx, dword [rsp + 0x624]
call fcn.140153230
mov qword [rsp + 0x58], rax
mov eax, dword [rsp + 0x140]
and eax, 0x100
test eax, eax
je 0x14015472e
mov byte [rsp + 0xc2], 1
jmp 0x140154736
mov byte [rsp + 0xc2], 0
movzx eax, byte [rsp + 0xc2]
mov byte [rsp + 0xa3], al
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x624]
cmp dword [rax + 0x3f68], ecx
je 0x140154797
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x624]
cmp dword [rax + 0x4918], ecx
jne 0x140154797
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4924]
and eax, 1
test eax, eax
jne 0x14015478d
mov rax, qword [rsp + 0x68]
cmp dword [rax + 0x493c], 2
jne 0x140154797
mov byte [rsp + 0xc3], 1
jmp 0x14015479f
mov byte [rsp + 0xc3], 0
movzx eax, byte [rsp + 0xc3]
mov byte [rsp + 0x87], al
movzx eax, byte [rsp + 0x81]
test eax, eax
je 0x1401547de
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0x3738]
test eax, eax
je 0x1401547de
mov byte [rsp + 0x9c], 1
jmp 0x1401547e6
mov byte [rsp + 0x9c], 0
movzx eax, byte [rsp + 0x9c]
mov byte [rsp + 0x85], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14015483d
cmp qword [rsp + 0x58], 0
je 0x14015483d
mov rax, qword [rsp + 0x68]
cmp dword [rax + 0x3f68], 0
jne 0x14015483d
mov edx, 1
mov rcx, qword [rsp + 0xc8]
call fcn.1401532f0
mov rcx, qword [rsp + 0x68]
cmp dword [rcx + 0x3f98], eax
jne 0x14015483d
mov byte [rsp + 0x9d], 1
jmp 0x140154845
mov byte [rsp + 0x9d], 0
movzx eax, byte [rsp + 0x9d]
mov byte [rsp + 0xd9], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14015488e
cmp qword [rsp + 0x58], 0
je 0x14015488e
mov edx, 1
mov rcx, qword [rsp + 0xc8]
call fcn.1401532f0
mov rcx, qword [rsp + 0x68]
cmp dword [rcx + 0x3f68], eax
jne 0x14015488e
mov byte [rsp + 0x9e], 1
jmp 0x140154896
mov byte [rsp + 0x9e], 0
movzx eax, byte [rsp + 0x9e]
mov byte [rsp + 0xa5], al
mov byte [rsp + 0x73], 0
mov byte [rsp + 0x75], 0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1401548d3
mov rax, qword [rsp + 0xc8]
movss xmm0, dword [rax + 0x88]
movss dword [rsp + 0x1c4], xmm0
jmp 0x1401548e4
movss xmm0, dword [0x14030a620]
movss dword [rsp + 0x1c4], xmm0
movss xmm0, dword [rsp + 0x1c4]
movss dword [rsp + 0x98], xmm0
cmp qword [rsp + 0x58], 0
je 0x14015493b
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140154914
mov dword [rsp + 0x1e0], 1
jmp 0x14015491f
mov dword [rsp + 0x1e0], 0
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x6b]
cmp eax, dword [rsp + 0x1e0]
je 0x14015493b
mov byte [rsp + 0x9f], 1
jmp 0x140154943
mov byte [rsp + 0x9f], 0
movzx eax, byte [rsp + 0x9f]
mov byte [rsp + 0xa2], al
movzx eax, byte [rsp + 0x85]
test eax, eax
jne 0x14015498c
movzx eax, byte [rsp + 0xd9]
test eax, eax
jne 0x14015498c
movzx eax, byte [rsp + 0x87]
test eax, eax
jne 0x14015498c
movzx eax, byte [rsp + 0xa3]
test eax, eax
jne 0x14015498c
mov byte [rsp + 0xa0], 0
jmp 0x140154994
mov byte [rsp + 0xa0], 1
movzx eax, byte [rsp + 0xa0]
mov byte [rsp + 0x86], al
movzx eax, byte [rsp + 0x86]
test eax, eax
jne 0x1401549c5
movzx eax, byte [rsp + 0xa5]
test eax, eax
jne 0x1401549c5
mov byte [rsp + 0xa1], 0
jmp 0x1401549cd
mov byte [rsp + 0xa1], 1
movzx eax, byte [rsp + 0xa1]
mov byte [rsp + 0xa4], al
movzx eax, byte [rsp + 0xa4]
test eax, eax
je 0x1401549fc
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x624]
cmp dword [rax + 0x3f68], ecx
jne 0x140154a0c
movzx eax, byte [rsp + 0xa2]
test eax, eax
je 0x140154d13
mov rax, qword [rsp + 0x68]
add rax, 0x4cb8
mov qword [rsp + 0x58], rax
mov rcx, qword [rsp + 0x58]
call fcn.140151730
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 8]
call fcn.140153f00
mov rax, qword [rsp + 0x830]
mov qword [rsp + 0x418], rax
mov qword [rsp + 0x208], 0xffffffffffffffff
inc qword [rsp + 0x208]
mov rax, qword [rsp + 0x418]
mov rcx, qword [rsp + 0x208]
cmp byte [rax + rcx], 0
jne 0x140154a4f
mov rax, qword [rsp + 0x208]
mov dword [rsp + 0x130], eax
mov rax, qword [rsp + 0x58]
add rax, 0x38
mov qword [rsp + 0x420], rax
mov eax, dword [rsp + 0x130]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x420]
call fcn.140106850
mov eax, dword [rsp + 0x130]
inc eax
cdqe
mov rcx, qword [rsp + 0x58]
mov rdi, qword [rcx + 0x40]
mov rsi, qword [rsp + 0x830]
mov rcx, rax
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x624]
cmp dword [rax + 8], ecx
jne 0x140154af0
movzx eax, byte [rsp + 0xa2]
test eax, eax
jne 0x140154af0
mov dword [rsp + 0x1e4], 1
jmp 0x140154afb
mov dword [rsp + 0x1e4], 0
movzx eax, byte [rsp + 0x1e4]
mov byte [rsp + 0x80], al
movzx eax, byte [rsp + 0x80]
test eax, eax
je 0x140154b62
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x130]
cmp dword [rax + 0x10], ecx
jne 0x140154b5a
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x48]
test eax, eax
je 0x140154b62
movsxd rax, dword [rsp + 0x130]
mov r8, rax
mov rdx, qword [rsp + 0x830]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x30]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
je 0x140154b62
mov byte [rsp + 0x80], 0
mov qword [rsp + 0x6c0], 0
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x624]
mov dword [rax + 8], ecx
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x428], rax
mov eax, dword [rsp + 0x838]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x428]
call fcn.140106940
mov rax, qword [rsp + 0x58]
add rax, 0x28
mov qword [rsp + 0x430], rax
xor edx, edx
mov rcx, qword [rsp + 0x430]
call fcn.140106850
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x48], 0
lea rax, [rsp + 0x6c0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x830]
mov edx, dword [rsp + 0x838]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.1400ed440
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x830]
mov rcx, qword [rsp + 0x6c0]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x10], eax
movzx eax, byte [rsp + 0x80]
test eax, eax
je 0x140154c3b
mov rcx, qword [rsp + 0x58]
call fcn.140151750
nop
jmp 0x140154c82
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
movss dword [rax + 0x50], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140154c5e
mov dword [rsp + 0x1e8], 1
jmp 0x140154c69
mov dword [rsp + 0x1e8], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov edx, dword [rsp + 0x1e8]
mov rcx, rax
call fcn.14015ea50
nop
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140154cfa
mov eax, dword [rsp + 0x848]
and eax, 0x10
test eax, eax
je 0x140154c9e
mov byte [rsp + 0x75], 1
movzx eax, byte [rsp + 0x87]
test eax, eax
je 0x140154ccd
movzx eax, byte [rsp + 0x80]
test eax, eax
je 0x140154cc8
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4924]
and eax, 4
test eax, eax
jne 0x140154ccd
mov byte [rsp + 0x75], 1
movzx eax, byte [rsp + 0xa3]
test eax, eax
jne 0x140154cf5
movzx eax, byte [rsp + 0x85]
test eax, eax
je 0x140154cfa
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe14]
test eax, eax
je 0x140154cfa
mov byte [rsp + 0x75], 1
mov eax, dword [rsp + 0x848]
and eax, 0x2000
test eax, eax
je 0x140154d13
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x60], 1
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x51]
mov byte [rsp + 0x72], al
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x624]
cmp dword [rax + 0x3f68], ecx
je 0x140154d78
movzx eax, byte [rsp + 0x86]
test eax, eax
je 0x140154d78
mov rdx, qword [rsp + 0x118]
mov ecx, dword [rsp + 0x624]
call fcn.1400fcd90
mov rdx, qword [rsp + 0x118]
mov ecx, dword [rsp + 0x624]
call fcn.1400fd710
xor edx, edx
mov rcx, qword [rsp + 0x118]
call fcn.1400e9150
nop
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x624]
cmp dword [rax + 0x3f68], ecx
jne 0x140154e9a
movzx eax, byte [rsp + 0x85]
test eax, eax
je 0x140154db1
xor r8d, r8d
mov edx, dword [rsp + 0x624]
mov ecx, 0x281
call fcn.1400fda50
nop
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4778]
or eax, 3
mov rcx, qword [rsp + 0x68]
mov dword [rcx + 0x4778], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140154de3
mov eax, dword [rsp + 0x848]
and eax, 0x80
test eax, eax
je 0x140154dfc
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4778]
or eax, 0xc
mov rcx, qword [rsp + 0x68]
mov dword [rcx + 0x4778], eax
xor r8d, r8d
mov edx, dword [rsp + 0x624]
mov ecx, 0x207
call fcn.1400fda50
xor r8d, r8d
mov edx, dword [rsp + 0x624]
mov ecx, 0x208
call fcn.1400fda50
nop
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140154e57
xor r8d, r8d
mov edx, dword [rsp + 0x624]
mov ecx, 0x205
call fcn.1400fda50
xor r8d, r8d
mov edx, dword [rsp + 0x624]
mov ecx, 0x206
call fcn.1400fda50
nop
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x140154e75
xor r8d, r8d
mov edx, dword [rsp + 0x624]
mov ecx, 0x4000
call fcn.1400fda50
nop
mov eax, dword [rsp + 0x848]
and eax, 0x440
test eax, eax
je 0x140154e9a
xor r8d, r8d
mov edx, dword [rsp + 0x624]
mov ecx, 0x200
call fcn.1400fe310
nop
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x624]
cmp dword [rax + 0x3f68], ecx
jne 0x140154ebc
cmp qword [rsp + 0x58], 0
jne 0x140154ebc
call fcn.1400e4480
nop
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x624]
cmp dword [rax + 0x3f68], ecx
jne 0x140154f07
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0x3738]
test eax, eax
je 0x140154f07
movzx eax, byte [rsp + 0xa4]
test eax, eax
jne 0x140154f07
movzx eax, byte [rsp + 0x86]
test eax, eax
jne 0x140154f07
mov byte [rsp + 0x73], 1
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x624]
cmp dword [rax + 0x3f68], ecx
je 0x140154f3c
cmp qword [rsp + 0x58], 0
je 0x140154f2f
movzx eax, byte [rsp + 0xa5]
test eax, eax
jne 0x140154f3c
mov dword [rsp + 0x1ec], 0
jmp 0x140154f47
mov dword [rsp + 0x1ec], 1
movzx eax, byte [rsp + 0x1ec]
mov byte [rsp + 0x70], al
cmp qword [rsp + 0x58], 0
je 0x140154f91
mov rcx, qword [rsp + 0x58]
call fcn.140153500
movzx eax, al
test eax, eax
jne 0x140154f75
movzx eax, byte [rsp + 0x75]
test eax, eax
je 0x140154f91
xor eax, eax
test eax, eax
jne 0x140154f84
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x140154f91
mov dword [rsp + 0x1f0], 1
jmp 0x140154f9c
mov dword [rsp + 0x1f0], 0
movzx eax, byte [rsp + 0x1f0]
mov byte [rsp + 0x61], al
mov byte [rsp + 0x74], 0
mov byte [rsp + 0x8a], 0
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x14015509f
cmp qword [rsp + 0x58], 0
je 0x14015509f
movzx eax, byte [rsp + 0x70]
test eax, eax
jne 0x140154fe4
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x14015509f
mov qword [rsp + 0x6b8], 0
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x490], rax
mov eax, dword [rsp + 0x838]
inc eax
mov edx, eax
mov rcx, qword [rsp + 0x490]
call fcn.140106940
lea rax, [rsp + 0x6b8]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0x830]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x18]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.1400ed440
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x830]
mov rcx, qword [rsp + 0x6b8]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x10], eax
mov rcx, qword [rsp + 0x58]
call fcn.140151750
movzx eax, byte [rsp + 0x61]
mov dword [rsp + 0x270], eax
mov rcx, qword [rsp + 0x58]
call fcn.140153500
movzx eax, al
mov ecx, dword [rsp + 0x270]
and ecx, eax
mov eax, ecx
mov byte [rsp + 0x61], al
movzx eax, byte [rsp + 0x70]
test eax, eax
jne 0x1401550c5
movzx eax, byte [rsp + 0x61]
test eax, eax
jne 0x1401550c5
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x624]
cmp dword [rax + 0x3f68], ecx
jne 0x1401550ed
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1401550ed
cmp qword [rsp + 0x58], 0
je 0x1401550ed
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0x48]
test eax, eax
je 0x1401550ed
mov byte [rsp + 0xa6], 1
jmp 0x1401550f5
mov byte [rsp + 0xa6], 0
movzx eax, byte [rsp + 0xa6]
mov byte [rsp + 0xbc], al
cmp qword [rsp + 0x828], 0
je 0x140155161
movzx eax, byte [rsp + 0xbc]
test eax, eax
je 0x14015512e
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x2f0], rax
jmp 0x14015513e
mov rax, qword [rsp + 0x830]
mov qword [rsp + 0x2f0], rax
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x2f0]
movsx eax, byte [rcx + rax]
test eax, eax
jne 0x140155161
mov byte [rsp + 0xa7], 1
jmp 0x140155169
mov byte [rsp + 0xa7], 0
movzx eax, byte [rsp + 0xa7]
mov byte [rsp + 0x71], al
movzx eax, byte [rsp + 0x77]
test eax, eax
je 0x14015529f
movzx eax, byte [rsp + 0x71]
test eax, eax
jne 0x14015529f
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3c28]
mov qword [rsp + 0x338], rax
mov dx, Ordinal_45
mov rcx, qword [rsp + 0x338]
call fcn.14011e330
mov qword [rsp + 0x2f8], rax
mov rax, qword [rsp + 0x68]
add rax, 0x5b60
mov qword [rsp + 0x138], rax
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3c28]
mov rcx, qword [rsp + 0x138]
movss xmm0, dword [rax + 0x14]
movss dword [rcx + 0x14], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3c28]
mov rcx, qword [rsp + 0x138]
movss xmm0, dword [rax + 0x64]
movss dword [rcx + 0x64], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3c28]
mov rcx, qword [rsp + 0x138]
movss xmm0, dword [rax + 0x68]
movss dword [rcx + 0x68], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3c28]
mov rcx, qword [rsp + 0x138]
movss xmm0, dword [rax + 0x6c]
movss dword [rcx + 0x6c], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3c28]
mov rcx, qword [rsp + 0x138]
mov rax, qword [rax + 0x40]
mov qword [rcx + 0x40], rax
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x2f8]
mov qword [rax + 0x38], rcx
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x2f8]
movss xmm0, dword [rcx + 4]
movss dword [rax + 0x10], xmm0
mov rcx, qword [rsp + 0x138]
call fcn.1400f83a0
nop
mov dword [rsp + 0x148], 0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x624]
cmp dword [rax + 0x3f68], ecx
jne 0x1401559d8
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x148], eax
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe86], 0
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x838]
mov dword [rax + 0x4c], ecx
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x848]
mov dword [rax + 0xe88], ecx
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0xe00]
test eax, eax
jne 0x140155325
mov dword [rsp + 0x168], 1
jmp 0x140155330
mov dword [rsp + 0x168], 0
mov rax, qword [rsp + 0x68]
movzx ecx, byte [rsp + 0x168]
mov byte [rax + 0x3f75], cl
mov rax, qword [rsp + 0x78]
movss xmm0, dword [rax + 0xdf8]
subss xmm0, dword [rsp + 0x730]
mov rax, qword [rsp + 0xe8]
subss xmm0, dword [rax + 0x3c]
mov rax, qword [rsp + 0x58]
addss xmm0, dword [rax + 0x50]
movss dword [rsp + 0x124], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1401553aa
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0xc8]
movss xmm0, dword [rax + 0xdfc]
subss xmm0, dword [rcx + 0x104]
movss dword [rsp + 0x16c], xmm0
jmp 0x1401553c8
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x3c30]
mulss xmm0, dword [0x14030a220]
movss dword [rsp + 0x16c], xmm0
movss xmm0, dword [rsp + 0x16c]
movss dword [rsp + 0x120], xmm0
movzx eax, byte [rsp + 0x75]
test eax, eax
je 0x1401553fe
mov rcx, qword [rsp + 0x58]
call fcn.14015b0b0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe85], 1
jmp 0x140155790
movzx eax, byte [rsp + 0x81]
test eax, eax
je 0x140155646
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, word [rcx + rax + 0x3742]
cmp eax, 2
jl 0x140155646
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe15]
test eax, eax
jne 0x140155646
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x120]
movss xmm2, dword [rsp + 0x124]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.14015e160
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, word [rcx + rax + 0x3742]
sub eax, 2
mov dword [rsp + 0x274], eax
mov eax, dword [rsp + 0x274]
cdq
and eax, 1
xor eax, edx
sub eax, edx
test eax, eax
jne 0x140155582
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x54], 0
je 0x1401554d3
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
dec eax
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.14015a010
movzx eax, ax
cmp eax, 0xa
je 0x1401554d3
mov byte [rsp + 0xa8], 0
jmp 0x1401554db
mov byte [rsp + 0xa8], 1
movzx eax, byte [rsp + 0xa8]
mov byte [rsp + 0xda], al
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
cmp dword [rax + 0x58], ecx
jne 0x140155508
movzx eax, byte [rsp + 0xda]
test eax, eax
jne 0x140155518
mov edx, 0x20000c
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
nop
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x58]
mov ecx, dword [rcx + 0x5c]
cmp dword [rax + 0x58], ecx
jne 0x14015553c
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov rcx, rax
call fcn.14015fec0
nop
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x54]
mov rcx, qword [rsp + 0x58]
call fcn.14015a500
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.14015e000
nop
jmp 0x140155636
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x54]
mov rcx, qword [rsp + 0x58]
call fcn.14015a010
movzx eax, ax
cmp eax, 0xa
jne 0x1401555a6
mov byte [rsp + 0xa9], 1
jmp 0x1401555ae
mov byte [rsp + 0xa9], 0
movzx eax, byte [rsp + 0xa9]
mov byte [rsp + 0xdb], al
mov edx, 0x200004
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
mov edx, 0x600005
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
mov edx, 0x600001
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
nop
movzx eax, byte [rsp + 0xdb]
test eax, eax
jne 0x14015562a
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14015562a
mov rax, qword [rsp + 0x58]
add rax, 0x5c
mov rcx, qword [rsp + 0x58]
add rcx, 0x58
mov rdx, rax
call fcn.14013ef40
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.140151730
nop
jmp 0x140155790
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0x3738]
test eax, eax
je 0x1401556f8
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
jne 0x1401556f8
movzx eax, byte [rsp + 0x81]
test eax, eax
je 0x1401556f3
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe15]
test eax, eax
je 0x1401556bf
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x120]
movss xmm2, dword [rsp + 0x124]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.14015e710
nop
jmp 0x1401556e8
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x120]
movss xmm2, dword [rsp + 0x124]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.14015e160
nop
mov rcx, qword [rsp + 0x58]
call fcn.140151730
nop
jmp 0x140155790
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0xe00]
test eax, eax
je 0x140155790
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
jne 0x140155790
mov rax, qword [rsp + 0x78]
movss xmm0, dword [rax + 0xec]
ucomiss xmm0, dword [0x14030a21c]
jp 0x140155752
jne 0x140155752
mov rax, qword [rsp + 0x78]
movss xmm0, dword [rax + 0xf0]
ucomiss xmm0, dword [0x14030a21c]
jp 0x140155752
je 0x140155790
mov rax, qword [rsp + 0x58]
add rax, 0x54
movss xmm3, dword [rsp + 0x120]
movss xmm2, dword [rsp + 0x124]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.14015e710
mov rcx, qword [rsp + 0x58]
call fcn.140151730
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe85]
test eax, eax
je 0x1401557c6
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + rax + 0xe00]
test eax, eax
jne 0x1401557c6
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe85], 0
mov eax, dword [rsp + 0x848]
and eax, 0x400
test eax, eax
je 0x140155855
xor r8d, r8d
mov edx, dword [rsp + 0x624]
mov ecx, 0x200
call fcn.1400feb90
movzx eax, al
test eax, eax
je 0x140155855
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140155855
mov dword [rsp + 0x75c], 9
mov dword [rsp + 0x28], 2
mov rax, qword [rsp + 0x858]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x850]
mov r8d, dword [rsp + 0x848]
lea rdx, [rsp + 0x75c]
mov rcx, qword [rsp + 0x68]
call fcn.140158e70
movzx eax, al
test eax, eax
je 0x140155855
mov edx, dword [rsp + 0x75c]
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
nop
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe14]
test eax, eax
je 0x140155875
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe16]
test eax, eax
je 0x140155898
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x14015588e
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe17]
test eax, eax
jne 0x140155898
mov byte [rsp + 0xaa], 0
jmp 0x1401558a0
mov byte [rsp + 0xaa], 1
movzx eax, byte [rsp + 0xaa]
mov byte [rsp + 0xdc], al
mov rax, qword [rsp + 0x78]
cmp dword [rax + 0x37b0], 0
jle 0x1401559d8
movzx eax, byte [rsp + 0xdc]
test eax, eax
jne 0x1401559b5
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x1401559b5
movzx eax, byte [rsp + 0x87]
test eax, eax
jne 0x1401559b5
mov dword [rsp + 0x128], 0
jmp 0x14015590b
mov eax, dword [rsp + 0x128]
inc eax
mov dword [rsp + 0x128], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x37b0]
cmp dword [rsp + 0x128], eax
jge 0x1401559b5
mov rax, qword [rsp + 0x78]
add rax, 0x37b0
mov qword [rsp + 0x408], rax
mov edx, dword [rsp + 0x128]
mov rcx, qword [rsp + 0x408]
call fcn.1400dbcb0
movzx eax, word [rax]
mov dword [rsp + 0x750], eax
cmp dword [rsp + 0x750], 9
jne 0x140155960
jmp 0x1401558fb
mov dword [rsp + 0x28], 2
mov rax, qword [rsp + 0x858]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x850]
mov r8d, dword [rsp + 0x848]
lea rdx, [rsp + 0x750]
mov rcx, qword [rsp + 0x68]
call fcn.140158e70
movzx eax, al
test eax, eax
je 0x1401559b0
mov edx, dword [rsp + 0x750]
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
nop
jmp 0x1401558fb
mov rax, qword [rsp + 0x78]
add rax, 0x37b0
mov qword [rsp + 0x400], rax
xor edx, edx
mov rcx, qword [rsp + 0x400]
call fcn.140106940
nop
mov byte [rsp + 0x76], 0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x624]
cmp dword [rax + 0x3f68], ecx
jne 0x140156a24
mov rax, qword [rsp + 0x68]
movzx eax, byte [rax + 0x3f74]
test eax, eax
jne 0x140156a24
movzx eax, byte [rsp + 0x73]
test eax, eax
jne 0x140156a24
mov rax, qword [rsp + 0xe8]
movss xmm0, dword [rsp + 0x62c]
subss xmm0, dword [rax + 0x40]
mov rax, qword [rsp + 0x68]
divss xmm0, dword [rax + 0x3c30]
cvttss2si eax, xmm0
mov edx, 1
mov ecx, eax
call fcn.1400d7780
mov dword [rsp + 0x144], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x144]
mov dword [rax + 0x64], ecx
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe15]
test eax, eax
je 0x140155a7c
mov dword [rsp + 0x1f4], 0x400000
jmp 0x140155a87
mov dword [rsp + 0x1f4], 0
mov eax, dword [rsp + 0x1f4]
mov dword [rsp + 0x8c], eax
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x140155ab3
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe16]
mov byte [rsp + 0xab], al
jmp 0x140155ac6
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe14]
mov byte [rsp + 0xab], al
movzx eax, byte [rsp + 0xab]
mov byte [rsp + 0x83], al
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x140155b18
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe17]
test eax, eax
je 0x140155b18
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe14]
test eax, eax
jne 0x140155b18
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe16]
test eax, eax
jne 0x140155b18
mov byte [rsp + 0xac], 1
jmp 0x140155b20
mov byte [rsp + 0xac], 0
movzx eax, byte [rsp + 0xac]
mov byte [rsp + 0x82], al
mov dword [rsp + 0x3b8], 1
mov r8d, 1
mov edx, dword [rsp + 0x624]
mov ecx, 0xa39
call fcn.1400feb90
movzx eax, al
test eax, eax
jne 0x140155b76
mov r8d, 1
mov edx, dword [rsp + 0x624]
mov ecx, 0x220a
call fcn.1400feb90
movzx eax, al
test eax, eax
je 0x140155bac
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140155bac
movzx eax, byte [rsp + 0x77]
test eax, eax
jne 0x140155bac
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140155ba2
mov rcx, qword [rsp + 0x58]
call fcn.140153500
movzx eax, al
test eax, eax
je 0x140155bac
mov byte [rsp + 0xad], 1
jmp 0x140155bb4
mov byte [rsp + 0xad], 0
movzx eax, byte [rsp + 0xad]
mov byte [rsp + 0x88], al
xor r8d, r8d
mov edx, dword [rsp + 0x624]
mov ecx, 0xa24
call fcn.1400feb90
movzx eax, al
test eax, eax
jne 0x140155bf9
xor r8d, r8d
mov edx, dword [rsp + 0x624]
mov ecx, 0x1209
call fcn.1400feb90
movzx eax, al
test eax, eax
je 0x140155c26
movzx eax, byte [rsp + 0x77]
test eax, eax
jne 0x140155c26
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140155c1c
mov rcx, qword [rsp + 0x58]
call fcn.140153500
movzx eax, al
test eax, eax
je 0x140155c26
mov byte [rsp + 0xae], 1
jmp 0x140155c2e
mov byte [rsp + 0xae], 0
movzx eax, byte [rsp + 0xae]
mov byte [rsp + 0xd4], al
mov r8d, 1
mov edx, dword [rsp + 0x624]
mov ecx, 0xa37
call fcn.1400feb90
movzx eax, al
test eax, eax
jne 0x140155c79
mov r8d, 1
mov edx, dword [rsp + 0x624]
mov ecx, 0x2209
call fcn.1400feb90
movzx eax, al
test eax, eax
je 0x140155c8c
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140155c8c
mov byte [rsp + 0xaf], 1
jmp 0x140155c94
mov byte [rsp + 0xaf], 0
movzx eax, byte [rsp + 0xaf]
mov byte [rsp + 0xd5], al
mov r8d, 1
mov edx, dword [rsp + 0x624]
mov ecx, 0xa3b
call fcn.1400feb90
movzx eax, al
test eax, eax
je 0x140155ce0
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140155ce0
movzx eax, byte [rsp + 0xb1]
test eax, eax
je 0x140155ce0
mov byte [rsp + 0xb0], 1
jmp 0x140155ce8
mov byte [rsp + 0xb0], 0
movzx eax, byte [rsp + 0xb0]
mov byte [rsp + 0xba], al
mov r8d, 1
mov edx, dword [rsp + 0x624]
mov ecx, 0xa3a
call fcn.1400feb90
movzx eax, al
test eax, eax
jne 0x140155d3c
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x140155d5b
mov r8d, 1
mov edx, dword [rsp + 0x624]
mov ecx, 0x2a3b
call fcn.1400feb90
movzx eax, al
test eax, eax
je 0x140155d5b
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140155d5b
movzx eax, byte [rsp + 0xb1]
test eax, eax
je 0x140155d5b
mov byte [rsp + 0xb2], 1
jmp 0x140155d63
mov byte [rsp + 0xb2], 0
movzx eax, byte [rsp + 0xb2]
mov byte [rsp + 0xe4], al
xor r8d, r8d
mov edx, dword [rsp + 0x624]
mov ecx, 0xa22
call fcn.1400feb90
mov byte [rsp + 0xf0], al
mov rax, qword [rsp + 0x78]
mov eax, dword [rax]
and eax, 2
test eax, eax
je 0x140155db4
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 4]
and eax, 1
test eax, eax
je 0x140155db4
mov byte [rsp + 0xb3], 1
jmp 0x140155dbc
mov byte [rsp + 0xb3], 0
movzx eax, byte [rsp + 0xb3]
mov byte [rsp + 0xb6], al
mov dl, 1
mov ecx, 0x20d
call fcn.1400ee940
movzx eax, al
test eax, eax
jne 0x140155dfb
mov dl, 1
mov ecx, 0x267
call fcn.1400ee940
movzx eax, al
test eax, eax
jne 0x140155dfb
mov byte [rsp + 0xb4], 0
jmp 0x140155e03
mov byte [rsp + 0xb4], 1
movzx eax, byte [rsp + 0xb4]
mov byte [rsp + 0xdd], al
movzx eax, byte [rsp + 0xb6]
test eax, eax
je 0x140155e4e
xor edx, edx
mov ecx, 0x26e
call fcn.1400ee940
movzx eax, al
test eax, eax
jne 0x140155e44
xor edx, edx
mov ecx, 0x26d
call fcn.1400ee940
movzx eax, al
test eax, eax
je 0x140155e4e
mov byte [rsp + 0xbd], 1
jmp 0x140155e56
mov byte [rsp + 0xbd], 0
movzx eax, byte [rsp + 0xbd]
mov byte [rsp + 0xb8], al
mov r8d, 1
mov edx, dword [rsp + 0x624]
mov ecx, 0x20e
call fcn.1400feb90
movzx eax, al
test eax, eax
jne 0x140155eb7
movzx eax, byte [rsp + 0xb6]
test eax, eax
je 0x140155ead
mov r8d, 1
mov edx, dword [rsp + 0x624]
mov ecx, 0x26c
call fcn.1400feb90
movzx eax, al
test eax, eax
jne 0x140155eb7
mov byte [rsp + 0xb7], 0
jmp 0x140155ebf
mov byte [rsp + 0xb7], 1
movzx eax, byte [rsp + 0xb7]
mov byte [rsp + 0xde], al
mov dl, 1
mov ecx, 0x201
call fcn.1400ee940
movzx eax, al
test eax, eax
je 0x140155f50
movzx eax, byte [rsp + 0x82]
test eax, eax
je 0x140155efa
mov dword [rsp + 0x174], 0x200004
jmp 0x140155f2c
movzx eax, byte [rsp + 0x83]
test eax, eax
je 0x140155f13
mov dword [rsp + 0x170], 0x20000c
jmp 0x140155f1e
mov dword [rsp + 0x170], 0x200000
mov eax, dword [rsp + 0x170]
mov dword [rsp + 0x174], eax
mov eax, dword [rsp + 0x8c]
mov ecx, dword [rsp + 0x174]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
nop
jmp 0x1401569dc
mov dl, 1
mov ecx, 0x202
call fcn.1400ee940
movzx eax, al
test eax, eax
je 0x140155fd2
movzx eax, byte [rsp + 0x82]
test eax, eax
je 0x140155f7c
mov dword [rsp + 0x17c], 0x200005
jmp 0x140155fae
movzx eax, byte [rsp + 0x83]
test eax, eax
je 0x140155f95
mov dword [rsp + 0x178], 0x20000d
jmp 0x140155fa0
mov dword [rsp + 0x178], 0x200001
mov eax, dword [rsp + 0x178]
mov dword [rsp + 0x17c], eax
mov eax, dword [rsp + 0x8c]
mov ecx, dword [rsp + 0x17c]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
nop
jmp 0x1401569dc
mov dl, 1
mov ecx, 0x203
call fcn.1400ee940
movzx eax, al
test eax, eax
je 0x140156086
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140156086
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe14]
test eax, eax
je 0x14015603e
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x88]
subss xmm0, dword [rcx + 0x3c30]
xorps xmm1, xmm1
call fcn.1400d77b0
movaps xmm1, xmm0
mov rcx, qword [rsp + 0xc8]
call fcn.1400fe2d0
nop
jmp 0x140156081
movzx eax, byte [rsp + 0x82]
test eax, eax
je 0x140156057
mov dword [rsp + 0x180], 0x200006
jmp 0x140156062
mov dword [rsp + 0x180], 0x200002
mov eax, dword [rsp + 0x8c]
mov ecx, dword [rsp + 0x180]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
nop
jmp 0x1401569dc
mov dl, 1
mov ecx, 0x204
call fcn.1400ee940
movzx eax, al
test eax, eax
je 0x140156160
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140156160
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe14]
test eax, eax
je 0x140156118
call fcn.1400ead00
movss dword [rsp + 0x278], xmm0
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x88]
addss xmm0, dword [rcx + 0x3c30]
movss dword [rsp + 0x254], xmm0
movss xmm1, dword [rsp + 0x278]
movss xmm0, dword [rsp + 0x254]
call fcn.1400d7820
movaps xmm1, xmm0
mov rcx, qword [rsp + 0xc8]
call fcn.1400fe2d0
nop
jmp 0x14015615b
movzx eax, byte [rsp + 0x82]
test eax, eax
je 0x140156131
mov dword [rsp + 0x184], 0x200007
jmp 0x14015613c
mov dword [rsp + 0x184], 0x200003
mov eax, dword [rsp + 0x8c]
mov ecx, dword [rsp + 0x184]
or ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
nop
jmp 0x1401569dc
mov dl, 1
mov ecx, 0x205
call fcn.1400ee940
movzx eax, al
test eax, eax
je 0x1401561c8
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1401561c8
mov eax, dword [rsp + 0x8c]
or eax, 0x20000e
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
cvtsi2ss xmm0, dword [rsp + 0x144]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3c30]
movss xmm1, dword [rsp + 0x98]
subss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x98], xmm0
jmp 0x1401569dc
mov dl, 1
mov ecx, 0x206
call fcn.1400ee940
movzx eax, al
test eax, eax
je 0x140156230
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140156230
mov eax, dword [rsp + 0x8c]
or eax, 0x20000f
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
cvtsi2ss xmm0, dword [rsp + 0x144]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3c30]
movss xmm1, dword [rsp + 0x98]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x98], xmm0
jmp 0x1401569dc
mov dl, 1
mov ecx, 0x207
call fcn.1400ee940
movzx eax, al
test eax, eax
je 0x140156292
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe14]
test eax, eax
je 0x140156268
mov eax, dword [rsp + 0x8c]
or eax, 0x200006
mov dword [rsp + 0x188], eax
jmp 0x14015627b
mov eax, dword [rsp + 0x8c]
or eax, 0x200004
mov dword [rsp + 0x188], eax
mov edx, dword [rsp + 0x188]
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
nop
jmp 0x1401569dc
mov dl, 1
mov ecx, 0x208
call fcn.1400ee940
movzx eax, al
test eax, eax
je 0x1401562f4
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe14]
test eax, eax
je 0x1401562ca
mov eax, dword [rsp + 0x8c]
or eax, 0x200007
mov dword [rsp + 0x18c], eax
jmp 0x1401562dd
mov eax, dword [rsp + 0x8c]
or eax, 0x200005
mov dword [rsp + 0x18c], eax
mov edx, dword [rsp + 0x18c]
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
nop
jmp 0x1401569dc
mov dl, 1
mov ecx, 0x20a
call fcn.1400ee940
movzx eax, al
test eax, eax
je 0x140156367
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140156367
movzx eax, byte [rsp + 0x88]
test eax, eax
jne 0x140156367
mov rcx, qword [rsp + 0x58]
call fcn.140153500
movzx eax, al
test eax, eax
jne 0x140156349
movzx eax, byte [rsp + 0x83]
test eax, eax
je 0x140156349
mov edx, 0x60000d
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
nop
mov eax, dword [rsp + 0x8c]
or eax, 0x200008
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
nop
jmp 0x1401569dc
mov dl, 1
mov ecx, 0x20b
call fcn.1400ee940
movzx eax, al
test eax, eax
je 0x140156421
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140156421
mov rcx, qword [rsp + 0x58]
call fcn.140153500
movzx eax, al
test eax, eax
jne 0x140156403
movzx eax, byte [rsp + 0x83]
test eax, eax
je 0x1401563ba
mov edx, 0x60000c
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
nop
jmp 0x140156403
movzx eax, byte [rsp + 0x72]
test eax, eax
je 0x140156403
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe17]
test eax, eax
je 0x140156403
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe16]
test eax, eax
jne 0x140156403
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe14]
test eax, eax
jne 0x140156403
mov edx, 0x600004
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
nop
mov eax, dword [rsp + 0x8c]
or eax, 0x200009
mov edx, eax
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
nop
jmp 0x1401569dc
movzx eax, byte [rsp + 0xdd]
test eax, eax
jne 0x14015643d
movzx eax, byte [rsp + 0xb8]
test eax, eax
je 0x14015655c
mov eax, dword [rsp + 0x848]
and eax, 0x800
test eax, eax
je 0x14015645a
mov dword [rsp + 0x190], 1
jmp 0x140156465
mov dword [rsp + 0x190], 0
movzx eax, byte [rsp + 0x190]
mov byte [rsp + 0xb9], al
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x1401564c1
movzx eax, byte [rsp + 0xb8]
test eax, eax
jne 0x1401564c1
movzx eax, byte [rsp + 0xb9]
test eax, eax
je 0x1401564a5
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe14]
test eax, eax
je 0x1401564c1
movzx eax, byte [rsp + 0xb9]
test eax, eax
jne 0x1401564f3
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0xe14]
test eax, eax
je 0x1401564f3
mov byte [rsp + 0x8a], 1
mov rax, qword [rsp + 0x78]
movzx eax, byte [rax + 0x54]
test eax, eax
je 0x1401564ec
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1401564ec
mov rcx, qword [rsp + 0x58]
call fcn.14015b0b0
nop
jmp 0x1401564f1
mov byte [rsp + 0x73], 1
jmp 0x140156557
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140156557
mov dword [rsp + 0x758], 0xa
mov dword [rsp + 0x28], 2
mov rax, qword [rsp + 0x858]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x850]
mov r8d, dword [rsp + 0x848]
lea rdx, [rsp + 0x758]
mov rcx, qword [rsp + 0x68]
call fcn.140158e70
movzx eax, al
test eax, eax
je 0x140156557
mov edx, dword [rsp + 0x758]
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
nop
jmp 0x1401569dc
movzx eax, byte [rsp + 0xde]
test eax, eax
je 0x1401565ce
mov eax, dword [rsp + 0x848]
and eax, 0x100000
test eax, eax
je 0x1401565ad
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x830]
movsx eax, byte [rcx + rax]
test eax, eax
je 0x140156598
mov byte [rsp + 0x76], 1
jmp 0x1401565ab
mov byte [rsp + 0x61], 0
movzx eax, byte [rsp + 0x61]
mov byte [rsp + 0x70], al
mov byte [rsp + 0x73], 1
jmp 0x1401565c9
mov byte [rsp + 0x76], 1
movzx eax, byte [rsp + 0x76]
mov byte [rsp + 0x73], al
mov byte [rsp + 0x61], 0
movzx eax, byte [rsp + 0x61]
mov byte [rsp + 0x70], al
jmp 0x1401569dc
movzx eax, byte [rsp + 0xba]
test eax, eax
jne 0x1401565e6
movzx eax, byte [rsp + 0xe4]
test eax, eax
je 0x14015662b
movzx eax, byte [rsp + 0xba]
test eax, eax
je 0x1401565ff
mov dword [rsp + 0x198], 0x20000a
jmp 0x14015660a
mov dword [rsp + 0x198], 0x20000b
mov edx, dword [rsp + 0x198]
mov rcx, qword [rsp + 0x58]
call fcn.1401595b0
mov rcx, qword [rsp + 0x58]
call fcn.14014b120
nop
jmp 0x1401569dc
movzx eax, byte [rsp + 0xf0]
test eax, eax
je 0x140156652
mov rcx, qword [rsp + 0x58]
call fcn.14015b0b0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
jmp 0x1401569dc
movzx eax, byte [rsp + 0x88]
test eax, eax
jne 0x14015666e
movzx eax, byte [rsp + 0xd4]
test eax, eax
je 0x140156817
mov rax, qword [rsp + 0x78]
cmp qword [rax + 0xa8], 0
je 0x1401567c7
mov rcx, qword [rsp + 0x58]
call fcn.140153500
movzx eax, al
test eax, eax
je 0x1401566b0
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.1400d77f0
mov dword [rsp + 0x19c], eax
jmp 0x1401566bb
mov dword [rsp + 0x19c], 0
mov eax, dword [rsp + 0x19c]
mov dword [rsp + 0x1a8], eax
mov rcx, qword [rsp + 0x58]
call fcn.140153500
movzx eax, al
test eax, eax
je 0x1401566f8
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.1400d7780
mov dword [rsp + 0x1a0], eax
jmp 0x140156707
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0xc]
mov dword [rsp + 0x1a0], eax
mov eax, dword [rsp + 0x1a0]
mov dword [rsp + 0x1a4], eax
movsxd rax, dword [rsp + 0x1a4]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x20]
lea rax, [rcx + rax*2]
movsxd rcx, dword [rsp + 0x1a8]
mov rdx, qword [rsp + 0x58]
mov rdx, qword [rdx + 0x20]
lea rcx, [rdx + rcx*2]
mov rdx, rax
call fcn.1400ed3b0
inc eax
mov dword [rsp + 0x1ac], eax
movsxd rax, dword [rsp + 0x1ac]
mov rcx, rax
call fcn.1400f0f00
mov qword [rsp + 0x248], rax
movsxd rax, dword [rsp + 0x1a4]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x20]
lea rax, [rcx + rax*2]
movsxd rcx, dword [rsp + 0x1a8]
mov rdx, qword [rsp + 0x58]
mov rdx, qword [rdx + 0x20]
lea rcx, [rdx + rcx*2]
mov r9, rax
mov r8, rcx
mov edx, dword [rsp + 0x1ac]
mov rcx, qword [rsp + 0x248]
call fcn.1400ed540
mov rcx, qword [rsp + 0x248]
call fcn.1400fd0e0
mov rcx, qword [rsp + 0x248]
call fcn.1400f0f60
nop
movzx eax, byte [rsp + 0x88]
test eax, eax
je 0x140156812
mov rcx, qword [rsp + 0x58]
call fcn.140153500
movzx eax, al
test eax, eax
jne 0x1401567ef
mov rcx, qword [rsp + 0x58]
call fcn.14015b0b0
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.14015e210
nop
jmp 0x1401569dc
movzx eax, byte [rsp + 0xd5]
test eax, eax
je 0x1401569dc
call fcn.1400e9810
mov qword [rsp + 0x290], rax
cmp qword [rsp + 0x290], 0
je 0x1401569dc
mov rax, qword [rsp + 0x290]
mov qword [rsp + 0x3b0], rax
mov qword [rsp + 0x210], 0xffffffffffffffff
inc qword [rsp + 0x210]
mov rax, qword [rsp + 0x3b0]
mov rcx, qword [rsp + 0x210]
cmp byte [rax + rcx], 0
jne 0x14015685f
mov rax, qword [rsp + 0x210]
mov dword [rsp + 0x250], eax
mov eax, dword [rsp + 0x250]
inc eax
cdqe
shl rax, 1
mov rcx, rax
call fcn.1400f0f00
mov qword [rsp + 0x220], rax
mov dword [rsp + 0x100], 0
mov rax, qword [rsp + 0x290]
mov qword [rsp + 0x218], rax
mov rax, qword [rsp + 0x218]
movsx eax, byte [rax]
test eax, eax
je 0x14015697c
xor r8d, r8d
mov rdx, qword [rsp + 0x218]
lea rcx, [rsp + 0x754]
call fcn.1400ecc90
cdqe
mov rcx, qword [rsp + 0x218]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x218], rax
mov dword [rsp + 0x28], 4
mov rax, qword [rsp + 0x858]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x850]
mov r8d, dword [rsp + 0x848]
lea rdx, [rsp + 0x754]
mov rcx, qword [rsp + 0x68]
call fcn.140158e70
movzx eax, al
test eax, eax
jne 0x14015694b
jmp 0x1401568c5
movsxd rax, dword [rsp + 0x100]
mov rcx, qword [rsp + 0x220]
movzx edx, word [rsp + 0x754]
mov word [rcx + rax*2], dx
mov eax, dword [rsp + 0x100]
inc eax
mov dword [rsp + 0x100], eax
jmp 0x1401568c5
movsxd rax, dword [rsp + 0x100]
xor ecx, ecx
mov rdx, qword [rsp + 0x220]
mov word [rdx + rax*2], cx
cmp dword [rsp + 0x100], 0
jle 0x1401569ce
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov r9d, dword [rsp + 0x100]
mov r8, qword [rsp + 0x220]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.14015fde0
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov rcx, qword [rsp + 0x220]
call fcn.1400f0f60
nop
mov rcx, qword [rsp + 0x58]
call fcn.140153500
movzx eax, al
test eax, eax
je 0x140156a09
xor eax, eax
test eax, eax
jne 0x1401569fc
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x140156a09
mov dword [rsp + 0x1b4], 1
jmp 0x140156a14
mov dword [rsp + 0x1b4], 0
movzx eax, byte [rsp + 0x61]
or eax, dword [rsp + 0x1b4]
mov byte [rsp + 0x61], al
mov qword [rsp + 0x110], 0
mov dword [rsp + 0x90], 0
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x624]
cmp dword [rax + 0x3f68], ecx
jne 0x140157260
movzx eax, byte [rsp + 0x76]
test eax, eax
je 0x140156c08
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140156c08
mov eax, dword [rsp + 0x848]
and eax, 0x100000
test eax, eax
je 0x140156ac3
lea rax, [0x14032b10e]
mov qword [rsp + 0x110], rax
mov dword [rsp + 0x90], 0
mov byte [rsp + 0x74], 1
mov rax, qword [rsp + 0x58]
add rax, 0x54
xor r9d, r9d
lea r8, [rsp + 0x780]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.14015ff10
nop
jmp 0x140156c08
mov rax, qword [rsp + 0x830]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x40]
sub rcx, rax
movzx edx, byte [rax]
cmp dl, byte [rax + rcx]
jne 0x140156aea
inc rax
test dl, dl
jne 0x140156ad7
xor eax, eax
jmp 0x140156aef
sbb eax, eax
or eax, 1
test eax, eax
je 0x140156c08
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x40]
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x38]
dec eax
mov dword [rsp + 0x90], eax
mov byte [rsp + 0x74], 1
lea rcx, [rsp + 0x6a8]
call fcn.1400d7f90
nop
cmp dword [rsp + 0x90], 0
jle 0x140156bac
movsxd rax, dword [rsp + 0x90]
mov rcx, qword [rsp + 0x110]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x110]
call fcn.1400ed2d0
inc eax
mov edx, eax
lea rcx, [rsp + 0x6a8]
call fcn.140106940
movsxd rax, dword [rsp + 0x90]
mov rcx, qword [rsp + 0x110]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x20], 0
mov r9, rax
mov r8, qword [rsp + 0x110]
mov edx, dword [rsp + 0x6a8]
mov rcx, qword [rsp + 0x6b0]
call fcn.1400ed440
nop
cmp dword [rsp + 0x90], 0
jle 0x140156bc8
mov eax, dword [rsp + 0x6a8]
dec eax
mov dword [rsp + 0x1b8], eax
jmp 0x140156bd3
mov dword [rsp + 0x1b8], 0
mov rax, qword [rsp + 0x58]
add rax, 0x54
mov r9d, dword [rsp + 0x1b8]
mov r8, qword [rsp + 0x6b0]
mov rdx, rax
mov rcx, qword [rsp + 0x58]
call fcn.14015ff10
nop
lea rcx, [rsp + 0x6a8]
call fcn.1400db2c0
nop
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140156c6c
mov rax, qword [rsp + 0x58]
mov byte [rax + 0x48], 1
mov rax, qword [rsp + 0x58]
add rax, 0x28
mov qword [rsp + 0x3e8], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x18]
lea eax, [rax*4 + 1]
mov edx, eax
mov rcx, qword [rsp + 0x3e8]
call fcn.140106850
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.1400ed540
nop
movzx eax, byte [rsp + 0x76]
test eax, eax
je 0x140156c99
movzx eax, byte [rsp + 0x8a]
test eax, eax
je 0x140156c8f
mov eax, dword [rsp + 0x848]
and eax, 0x20
test eax, eax
jne 0x140156c99
mov byte [rsp + 0xbb], 0
jmp 0x140156ca1
mov byte [rsp + 0xbb], 1
movzx eax, byte [rsp + 0xbb]
mov byte [rsp + 0xd6], al
movzx eax, byte [rsp + 0xd6]
test eax, eax
je 0x140157260
mov eax, dword [rsp + 0x848]
and eax, 0x801c0
test eax, eax
je 0x140157202
mov dword [rsp + 0xe0], 0
mov dword [rsp + 0x12c], 0
mov eax, dword [rsp + 0x848]
and eax, 0x40
test eax, eax
je 0x140156d2e
xor r8d, r8d
mov edx, dword [rsp + 0x624]
mov ecx, 0x200
call fcn.1400feb90
movzx eax, al
test eax, eax
je 0x140156d2e
mov dword [rsp + 0xe0], 0x40
mov dword [rsp + 0x12c], 0x200
jmp 0x140156def
mov eax, dword [rsp + 0x848]
and eax, 0x80
test eax, eax
je 0x140156d6c
mov dl, 1
mov ecx, 0x203
call fcn.1400ee940
movzx eax, al
test eax, eax
je 0x140156d6c
mov dword [rsp + 0xe0], 0x80
mov dword [rsp + 0x12c], 0x203
jmp 0x140156def
mov eax, dword [rsp + 0x848]
and eax, 0x80
test eax, eax
je 0x140156da7
mov dl, 1
mov ecx, 0x204
call fcn.1400ee940
movzx eax, al
test eax, eax
je 0x140156da7
mov dword [rsp + 0xe0], 0x80
mov dword [rsp + 0x12c], 0x204
jmp 0x140156def
mov eax, dword [rsp + 0x848]
and eax, 0x80000
test eax, eax
je 0x140156dd4
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe86]
test eax, eax
je 0x140156dd4
mov dword [rsp + 0xe0], 0x80000
jmp 0x140156def
mov eax, dword [rsp + 0x848]
and eax, 0x100
test eax, eax
je 0x140156def
mov dword [rsp + 0xe0], 0x100
cmp dword [rsp + 0xe0], 0
je 0x140157202
lea rcx, [rsp + 0x650]
call fcn.140149a90
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x650], rax
mov eax, dword [rsp + 0xe0]
mov dword [rsp + 0x658], eax
mov eax, dword [rsp + 0x848]
mov dword [rsp + 0x65c], eax
mov rax, qword [rsp + 0x858]
mov qword [rsp + 0x660], rax
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x140156e5e
mov rax, qword [rsp + 0x830]
mov qword [rsp + 0x300], rax
jmp 0x140156e6f
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x300], rax
mov rax, qword [rsp + 0x300]
mov qword [rsp + 0x308], rax
mov eax, dword [rsp + 0x12c]
mov dword [rsp + 0x66c], eax
mov rax, qword [rsp + 0x308]
mov qword [rsp + 0x670], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x678], eax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x4c]
mov dword [rsp + 0x67c], eax
mov byte [rsp + 0x680], 0
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x160], rax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x54]
mov rcx, qword [rsp + 0x160]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x160]
call fcn.1400ed3b0
mov dword [rsp + 0x684], eax
mov eax, dword [rsp + 0x684]
mov dword [rsp + 0x2dc], eax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x58]
mov rcx, qword [rsp + 0x160]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x160]
call fcn.1400ed3b0
mov dword [rsp + 0x688], eax
mov eax, dword [rsp + 0x688]
mov dword [rsp + 0x2d4], eax
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x5c]
mov rcx, qword [rsp + 0x160]
lea rax, [rcx + rax*2]
mov rdx, rax
mov rcx, qword [rsp + 0x160]
call fcn.1400ed3b0
mov dword [rsp + 0x68c], eax
mov eax, dword [rsp + 0x68c]
mov dword [rsp + 0x2cc], eax
mov rax, qword [rsp + 0x850]
mov qword [rsp + 0x3a8], rax
lea rcx, [rsp + 0x650]
call qword [rsp + 0x3a8]
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x140156fbc
mov rax, qword [rsp + 0x830]
mov qword [rsp + 0x2e8], rax
jmp 0x140156fcd
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x2e8], rax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x308], rax
movzx eax, byte [rsp + 0x680]
mov byte [rsp + 0x84], al
mov eax, dword [rsp + 0x2dc]
cmp dword [rsp + 0x684], eax
jne 0x140157008
movzx eax, byte [rsp + 0x84]
test eax, eax
je 0x140157042
movsxd rax, dword [rsp + 0x684]
mov rcx, qword [rsp + 0x670]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x670]
call fcn.1400ed2d0
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x54], eax
mov rax, qword [rsp + 0x58]
mov byte [rax + 0xe84], 1
mov eax, dword [rsp + 0x2d4]
cmp dword [rsp + 0x688], eax
jne 0x14015705e
movzx eax, byte [rsp + 0x84]
test eax, eax
je 0x1401570bb
mov eax, dword [rsp + 0x684]
cmp dword [rsp + 0x688], eax
jne 0x14015707f
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x54]
mov dword [rsp + 0x1bc], eax
jmp 0x1401570ac
movsxd rax, dword [rsp + 0x688]
mov rcx, qword [rsp + 0x670]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x670]
call fcn.1400ed2d0
mov dword [rsp + 0x1bc], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x1bc]
mov dword [rax + 0x58], ecx
mov eax, dword [rsp + 0x2cc]
cmp dword [rsp + 0x68c], eax
jne 0x1401570d7
movzx eax, byte [rsp + 0x84]
test eax, eax
je 0x140157134
mov eax, dword [rsp + 0x688]
cmp dword [rsp + 0x68c], eax
jne 0x1401570f8
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x58]
mov dword [rsp + 0x1c0], eax
jmp 0x140157125
movsxd rax, dword [rsp + 0x68c]
mov rcx, qword [rsp + 0x670]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0x670]
call fcn.1400ed2d0
mov dword [rsp + 0x1c0], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x1c0]
mov dword [rax + 0x5c], ecx
movzx eax, byte [rsp + 0x84]
test eax, eax
je 0x140157202
mov r8d, dword [rsp + 0x678]
mov rdx, qword [rsp + 0x670]
mov rcx, qword [rsp + 0x58]
call fcn.140159210
nop
mov eax, dword [rsp + 0x148]
cmp dword [rsp + 0x678], eax
jle 0x1401571b6
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x1401571b6
mov rax, qword [rsp + 0x58]
add rax, 0x18
mov qword [rsp + 0x398], rax
mov eax, dword [rsp + 0x148]
mov ecx, dword [rsp + 0x678]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x58]
add eax, dword [rcx + 0x18]
mov edx, eax
mov rcx, qword [rsp + 0x398]
call fcn.140106940
nop
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8, qword [rsp + 0x670]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x18]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.1400ed440
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x678]
mov dword [rax + 0x10], ecx
mov rcx, qword [rsp + 0x58]
call fcn.140151730
nop
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140157260
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov rcx, qword [rsp + 0x830]
sub rcx, rax
movzx edx, byte [rax]
cmp dl, byte [rax + rcx]
jne 0x140157232
inc rax
test dl, dl
jne 0x14015721f
xor eax, eax
jmp 0x140157237
sbb eax, eax
or eax, 1
test eax, eax
je 0x140157260
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x90], eax
mov byte [rsp + 0x74], 1
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x624]
cmp dword [rax + 0x5b48], ecx
jne 0x140157310
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x624]
cmp dword [rax + 0x3f68], ecx
je 0x140157301
call fcn.1400ee3a0
movzx eax, al
test eax, eax
je 0x140157301
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140157301
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x5b58]
mov rcx, qword [rsp + 0x830]
sub rcx, rax
movzx edx, byte [rax]
cmp dl, byte [rax + rcx]
jne 0x1401572cb
inc rax
test dl, dl
jne 0x1401572b8
xor eax, eax
jmp 0x1401572d0
sbb eax, eax
or eax, 1
test eax, eax
je 0x140157301
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x5b58]
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x5b50]
dec eax
mov dword [rsp + 0x90], eax
mov byte [rsp + 0x74], 1
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x5b48], 0
cmp qword [rsp + 0x110], 0
je 0x14015743b
movzx eax, byte [rsp + 0x89]
test eax, eax
je 0x140157409
lea rcx, [rsp + 0x6e0]
call fcn.140149a90
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x6e0], rax
mov dword [rsp + 0x6e8], 0x40000
mov eax, dword [rsp + 0x848]
mov dword [rsp + 0x6ec], eax
mov rax, qword [rsp + 0x830]
mov qword [rsp + 0x700], rax
mov eax, dword [rsp + 0x90]
mov dword [rsp + 0x708], eax
mov eax, dword [rsp + 0x90]
inc eax
mov edx, eax
mov ecx, dword [rsp + 0x838]
call fcn.1400d7780
mov dword [rsp + 0x70c], eax
mov rax, qword [rsp + 0x858]
mov qword [rsp + 0x6f0], rax
mov rax, qword [rsp + 0x850]
mov qword [rsp + 0x3e0], rax
lea rcx, [rsp + 0x6e0]
call qword [rsp + 0x3e0]
mov rax, qword [rsp + 0x700]
mov qword [rsp + 0x830], rax
mov eax, dword [rsp + 0x70c]
mov dword [rsp + 0x838], eax
mov eax, dword [rsp + 0x838]
dec eax
mov edx, eax
mov ecx, dword [rsp + 0x708]
call fcn.1400d77f0
mov dword [rsp + 0x90], eax
mov eax, dword [rsp + 0x90]
inc eax
mov edx, dword [rsp + 0x838]
mov ecx, eax
call fcn.1400d77f0
cdqe
mov r8, rax
mov rdx, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x830]
call fcn.1400ecc30
nop
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x624]
cmp dword [rax + 0x3f68], ecx
jne 0x140157460
movzx eax, byte [rsp + 0x73]
test eax, eax
je 0x140157460
call fcn.1400e4480
nop
jmp 0x140157483
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x624]
cmp dword [rax + 0x3f68], ecx
jne 0x140157483
mov rax, qword [rsp + 0x68]
mov dword [rax + 0x5f5c], 1
mov eax, 0x128
mov eax, eax
mov ecx, dword [0x14090c688]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov eax, dword [rax + rcx]
cmp dword [0x14090bfa0], eax
jle 0x1401574f4
lea rcx, [0x14090bfa0]
call fcn.1402fec08
cmp dword [0x14090bfa0], 0xffffffff
jne 0x1401574f4
mov edx, reloc.WS2_32.dll_recv
lea rcx, [0x14090bf90]
call fcn.140035420
lea rcx, [0x14090bf90]
call fcn.140109dd0
lea rcx, [0x1403084a0]
call fcn.1402fe8d8
nop
lea rcx, [0x14090bfa0]
call fcn.1402feb9c
nop
mov edx, 8
lea rcx, [rsp + 0x740]
call fcn.140035420
lea r8, [rsp + 0x624]
lea rdx, [rsp + 0x740]
lea rcx, [0x14090bf90]
call fcn.140105620
nop
lea rdx, [rsp + 0x4b8]
lea rcx, [0x14090bf90]
call fcn.14006bca0
mov rdx, rax
lea rcx, [rsp + 0x740]
call fcn.14003c1e0
movzx eax, al
test eax, eax
je 0x1401575cb
lea rax, [rsp + 0x5d8]
mov rdi, rax
xor eax, eax
mov ecx, 0x24
rep stosb byte [rdi], al
lea rcx, [rsp + 0x5d8]
call fcn.140109f30
mov r8, rax
lea rdx, [rsp + 0x624]
lea rcx, [rsp + 0x5fc]
call fcn.14013acf0
lea r8, [rsp + 0x5fc]
lea rdx, [rsp + 0x5c8]
lea rcx, [0x14090bf90]
call fcn.140149a10
nop
lea r8, [rsp + 0x624]
lea rdx, [rsp + 0x4c0]
lea rcx, [0x14090bf90]
call fcn.140105620
mov rax, qword [rax]
mov qword [rsp + 0x740], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140157799
call fcn.1400eb480
mov qword [rsp + 0x3a0], rax
movss xmm0, dword [0x1403d6a38]
movss dword [rsp + 0x2c8], xmm0
movss xmm1, dword [0x14030a5a0]
lea rcx, [0x14090bce8]
call fcn.1400e99c0
mov dword [rsp + 0x2c4], eax
mov dword [rsp + 0x28], 0
movss xmm0, dword [rsp + 0x2c8]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x2c4]
lea r8, [rsp + 0x738]
lea rdx, [rsp + 0x730]
mov rcx, qword [rsp + 0x3a0]
call fcn.140119480
mov eax, 8
imul rax, rax, 0x11
lea rcx, [0x14090c0d0]
mov rcx, qword [rcx + rax]
call fcn.1400f83a0
nop
call fcn.1400eb480
mov qword [rsp + 0x388], rax
movss xmm1, dword [0x14030a5a0]
lea rcx, [0x14090bc68]
call fcn.1400e99c0
mov dword [rsp + 0x2b0], eax
movss xmm0, dword [0x14030a624]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rsp + 0x820]
lea rcx, [rsp + 0x4c8]
call fcn.1400e3180
mov rcx, qword [rsp + 0x840]
movss xmm0, dword [rcx + 4]
addss xmm0, dword [rax]
divss xmm0, dword [0x14030a230]
movss dword [rsp + 0x2b8], xmm0
movss xmm0, dword [0x14030a624]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rsp + 0x820]
lea rcx, [rsp + 0x4d0]
call fcn.1400e3180
mov rcx, qword [rsp + 0x840]
movss xmm0, dword [rcx + 4]
addss xmm0, dword [rax]
divss xmm0, dword [0x14030a230]
movss dword [rsp + 0x2b4], xmm0
movss xmm2, dword [rsp + 0x2b8]
movss xmm1, dword [rsp + 0x2b4]
lea rcx, [rsp + 0x4d8]
call fcn.14003b880
mov r8, rax
lea rdx, [rsp + 0x738]
lea rcx, [rsp + 0x4e0]
call fcn.1400dbf50
mov qword [rsp + 0x390], rax
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x820]
mov r8d, dword [rsp + 0x2b0]
mov rdx, qword [rsp + 0x390]
mov rcx, qword [rsp + 0x388]
call fcn.14011bc80
nop
call fcn.1400f7f50
nop
movss xmm0, dword [rsp + 0x734]
addss xmm0, dword [rsp + 0x62c]
movss xmm1, dword [rsp + 0x730]
addss xmm1, dword [rsp + 0x628]
mov rax, qword [rsp + 0x840]
subss xmm1, dword [rax + 4]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm1
movss xmm2, dword [rsp + 0x734]
movss xmm1, dword [rsp + 0x730]
lea rcx, [rsp + 0x770]
call fcn.14003b8f0
nop
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140157828
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax + 0x100]
mov qword [rsp + 0x380], rax
lea rax, [rsp + 0x380]
mov qword [rsp + 0x310], rax
jmp 0x14015790f
movss xmm0, dword [0x14030a624]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rsp + 0x828]
lea rcx, [rsp + 0x4e8]
call fcn.1400e3180
mov rcx, qword [rsp + 0x840]
movss xmm0, dword [rcx + 4]
subss xmm0, dword [rax + 4]
addss xmm0, dword [0x14030a230]
movss dword [rsp + 0x2ac], xmm0
movss xmm0, dword [0x14030a624]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rsp + 0x828]
lea rcx, [rsp + 0x4f0]
call fcn.1400e3180
mov rcx, qword [rsp + 0x840]
movss xmm0, dword [rcx + 4]
subss xmm0, dword [rax + 4]
movss dword [rsp + 0x2a8], xmm0
movss xmm2, dword [rsp + 0x2ac]
movss xmm1, dword [rsp + 0x2a8]
lea rcx, [rsp + 0x4f8]
call fcn.14003b880
movss xmm2, dword [0x14030a230]
mov rdx, rax
lea rcx, [rsp + 0x500]
call fcn.1400dc040
mov r8, rax
lea rdx, [rsp + 0x730]
lea rcx, [rsp + 0x508]
call fcn.1400dbfa0
mov qword [rsp + 0x310], rax
mov rax, qword [rsp + 0x310]
mov qword [rsp + 0x378], rax
mov rax, qword [rsp + 0x378]
mov rax, qword [rax]
mov qword [rsp + 0x728], rax
xorps xmm2, xmm2
xorps xmm1, xmm1
lea rcx, [rsp + 0x648]
call fcn.14003b880
mov dword [rsp + 0x340], 0x200000
movzx eax, byte [rsp + 0xbc]
test eax, eax
je 0x14015796f
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x318], rax
jmp 0x14015797f
mov rax, qword [rsp + 0x830]
mov qword [rsp + 0x318], rax
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x630], 0
movzx eax, byte [rsp + 0x71]
test eax, eax
je 0x140157a0c
mov rax, qword [rsp + 0x828]
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0x828]
mov qword [rsp + 0x370], rax
mov qword [rsp + 0x228], 0xffffffffffffffff
inc qword [rsp + 0x228]
mov rax, qword [rsp + 0x370]
mov rcx, qword [rsp + 0x228]
cmp byte [rax + rcx], 0
jne 0x1401579d0
mov rax, qword [rsp + 0x228]
mov rcx, qword [rsp + 0x828]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x630], rax
mov rcx, qword [0x14090c098]
call fcn.1400f83a0
nop
movzx eax, byte [rsp + 0x70]
test eax, eax
jne 0x140157a2f
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x140158aa4
movzx eax, byte [rsp + 0x71]
test eax, eax
jne 0x140157a57
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x108]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x630], rax
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x150], rax
lea rcx, [rsp + 0x720]
call fcn.14003b8c0
lea rcx, [rsp + 0x790]
call fcn.14003b8c0
nop
mov qword [rsp + 0x1f8], 0
mov qword [rsp + 0x200], 0
mov dword [rsp + 0xf8], 0xfffffc18
mov dword [rsp + 0xfc], 0xfffffc18
mov dword [rsp + 0x94], 0
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x140157b0f
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x54]
mov rcx, qword [rsp + 0x150]
lea rax, [rcx + rax*2]
mov ecx, 8
imul rcx, rcx, 0
mov qword [rsp + rcx + 0x1f8], rax
mov eax, 4
imul rax, rax, 0
mov dword [rsp + rax + 0xf8], 0xffffffff
mov eax, dword [rsp + 0x94]
inc eax
mov dword [rsp + 0x94], eax
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x140157b70
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.1400d77f0
cdqe
mov rcx, qword [rsp + 0x150]
lea rax, [rcx + rax*2]
mov ecx, 8
imul rcx, rcx, 1
mov qword [rsp + rcx + 0x1f8], rax
mov eax, 4
imul rax, rax, 1
mov dword [rsp + rax + 0xf8], 0xffffffff
mov eax, dword [rsp + 0x94]
inc eax
mov dword [rsp + 0x94], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140157b86
mov dword [rsp + 0x1dc], 1
jmp 0x140157b91
mov dword [rsp + 0x1dc], 0
mov eax, dword [rsp + 0x1dc]
mov ecx, dword [rsp + 0x94]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x94], eax
mov dword [rsp + 0xd0], 0
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0x158], rax
jmp 0x140157bdb
mov rax, qword [rsp + 0x158]
add rax, 2
mov qword [rsp + 0x158], rax
mov rax, qword [rsp + 0x158]
movzx eax, word [rax]
test eax, eax
je 0x140157cd9
mov rax, qword [rsp + 0x158]
movzx eax, word [rax]
cmp eax, 0xa
jne 0x140157cd4
mov eax, dword [rsp + 0xd0]
inc eax
mov dword [rsp + 0xd0], eax
mov eax, 4
imul rax, rax, 0
cmp dword [rsp + rax + 0xf8], 0xffffffff
jne 0x140157c73
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x1f8]
cmp qword [rsp + 0x158], rax
jb 0x140157c73
mov eax, 4
imul rax, rax, 0
mov ecx, dword [rsp + 0xd0]
mov dword [rsp + rax + 0xf8], ecx
mov eax, dword [rsp + 0x94]
dec eax
mov dword [rsp + 0x94], eax
cmp dword [rsp + 0x94], 0
jg 0x140157c73
jmp 0x140157cd9
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0xf8], 0xffffffff
jne 0x140157cd4
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x1f8]
cmp qword [rsp + 0x158], rax
jb 0x140157cd4
mov eax, 4
imul rax, rax, 1
mov ecx, dword [rsp + 0xd0]
mov dword [rsp + rax + 0xf8], ecx
mov eax, dword [rsp + 0x94]
dec eax
mov dword [rsp + 0x94], eax
cmp dword [rsp + 0x94], 0
jg 0x140157cd4
jmp 0x140157cd9
jmp 0x140157bc7
mov eax, dword [rsp + 0xd0]
inc eax
mov dword [rsp + 0xd0], eax
mov eax, 4
imul rax, rax, 0
cmp dword [rsp + rax + 0xf8], 0xffffffff
jne 0x140157d13
mov eax, 4
imul rax, rax, 0
mov ecx, dword [rsp + 0xd0]
mov dword [rsp + rax + 0xf8], ecx
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0xf8], 0xffffffff
jne 0x140157d3d
mov eax, 4
imul rax, rax, 1
mov ecx, dword [rsp + 0xd0]
mov dword [rsp + rax + 0xf8], ecx
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x1f8]
mov qword [rsp + 0x368], rax
mov eax, 8
imul rax, rax, 0
mov rdx, qword [rsp + 0x150]
mov rcx, qword [rsp + rax + 0x1f8]
call fcn.1400ec990
mov qword [rsp + 0x360], rax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x368]
mov r8, qword [rsp + 0x360]
mov rdx, qword [rsp + 0x68]
lea rcx, [rsp + 0x510]
call fcn.140153cf0
movss xmm0, dword [rax]
movss dword [rsp + 0x720], xmm0
mov eax, 4
imul rax, rax, 0
cvtsi2ss xmm0, dword [rsp + rax + 0xf8]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3c30]
movss dword [rsp + 0x724], xmm0
mov eax, 4
imul rax, rax, 1
cmp dword [rsp + rax + 0xf8], 0
jl 0x140157eae
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x1f8]
mov qword [rsp + 0x358], rax
mov eax, 8
imul rax, rax, 1
mov rdx, qword [rsp + 0x150]
mov rcx, qword [rsp + rax + 0x1f8]
call fcn.1400ec990
mov qword [rsp + 0x350], rax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, qword [rsp + 0x358]
mov r8, qword [rsp + 0x350]
mov rdx, qword [rsp + 0x68]
lea rcx, [rsp + 0x518]
call fcn.140153cf0
movss xmm0, dword [rax]
movss dword [rsp + 0x790], xmm0
mov eax, 4
imul rax, rax, 1
cvtsi2ss xmm0, dword [rsp + rax + 0xf8]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3c30]
movss dword [rsp + 0x794], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140157ef1
cvtsi2ss xmm0, dword [rsp + 0xd0]
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3c30]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x628]
lea rcx, [rsp + 0x520]
call fcn.14003b880
mov rax, qword [rax]
mov qword [rsp + 0x648], rax
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x140158186
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax + 0xe84]
test eax, eax
je 0x140158186
mov eax, dword [rsp + 0x848]
and eax, 0x1000
test eax, eax
jne 0x140157ff0
movss xmm0, dword [rsp + 0x628]
mulss xmm0, dword [0x140310d14]
movss dword [rsp + 0x1cc], xmm0
mov rax, qword [rsp + 0xe8]
movss xmm0, dword [rsp + 0x628]
subss xmm0, dword [rax + 0x3c]
movss dword [rsp + 0x1c8], xmm0
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 0x50]
comiss xmm0, dword [rsp + 0x720]
jbe 0x140157fa4
movss xmm0, dword [rsp + 0x720]
subss xmm0, dword [rsp + 0x1cc]
movaps xmm1, xmm0
xorps xmm0, xmm0
call fcn.1400d77b0
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x58]
movss dword [rax + 0x50], xmm0
jmp 0x140157fee
movss xmm0, dword [rsp + 0x720]
subss xmm0, dword [rsp + 0x1c8]
mov rax, qword [rsp + 0x58]
comiss xmm0, dword [rax + 0x50]
jb 0x140157fee
movss xmm0, dword [rsp + 0x720]
subss xmm0, dword [rsp + 0x1c8]
addss xmm0, dword [rsp + 0x1cc]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x58]
movss dword [rax + 0x50], xmm0
jmp 0x140157ffd
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
movss dword [rax + 0x50], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14015817a
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x724]
subss xmm0, dword [rax + 0x3c30]
movss xmm1, dword [rsp + 0x98]
comiss xmm1, xmm0
jbe 0x14015805a
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x724]
subss xmm0, dword [rax + 0x3c30]
movaps xmm1, xmm0
xorps xmm0, xmm0
call fcn.1400d77b0
movss dword [rsp + 0x98], xmm0
jmp 0x1401580cd
mov rax, qword [rsp + 0xe8]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x14030a230]
movss xmm1, dword [rsp + 0x62c]
subss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [rsp + 0x724]
subss xmm1, xmm0
movaps xmm0, xmm1
comiss xmm0, dword [rsp + 0x98]
jb 0x1401580cd
movss xmm0, dword [rsp + 0x724]
subss xmm0, dword [rsp + 0x62c]
mov rax, qword [rsp + 0xe8]
movss xmm1, dword [rax + 0x40]
mulss xmm1, dword [0x14030a230]
addss xmm0, xmm1
movss dword [rsp + 0x98], xmm0
mov rax, qword [rsp + 0xe8]
movss xmm0, dword [rax + 0x40]
mulss xmm0, dword [0x14030a230]
movss xmm1, dword [rsp + 0x64c]
addss xmm1, xmm0
movaps xmm0, xmm1
subss xmm0, dword [rsp + 0x62c]
xorps xmm1, xmm1
call fcn.1400d77b0
movss dword [rsp + 0x2a4], xmm0
movss xmm2, dword [rsp + 0x2a4]
xorps xmm1, xmm1
movss xmm0, dword [rsp + 0x98]
call fcn.1400d7690
movss dword [rsp + 0x98], xmm0
mov rax, qword [rsp + 0xc8]
movss xmm0, dword [rax + 0x88]
subss xmm0, dword [rsp + 0x98]
movss xmm1, dword [rsp + 0x72c]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x72c], xmm0
mov rax, qword [rsp + 0xc8]
movss xmm0, dword [rsp + 0x98]
movss dword [rax + 0x88], 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 + 0x768]
call fcn.14003b880
nop
movzx eax, byte [rsp + 0x61]
test eax, eax
je 0x14015858e
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.1400d77f0
cdqe
mov rcx, qword [rsp + 0x150]
lea rax, [rcx + rax*2]
mov qword [rsp + 0x348], rax
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x5c]
mov rax, qword [rsp + 0x58]
mov ecx, dword [rax + 0x58]
call fcn.1400d7780
cdqe
mov rcx, qword [rsp + 0x150]
lea rax, [rcx + rax*2]
mov qword [rsp + 0x298], rax
movss xmm1, dword [0x140310d04]
lea rcx, [0x14090bc68]
call fcn.1400e99c0
mov dword [rsp + 0x2d8], eax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140158236
xorps xmm0, xmm0
movss dword [rsp + 0x1d0], xmm0
jmp 0x140158247
movss xmm0, dword [0x14030a624]
movss dword [rsp + 0x1d0], xmm0
movss xmm0, dword [rsp + 0x1d0]
movss dword [rsp + 0x2d0], xmm0
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140158270
xorps xmm0, xmm0
movss dword [rsp + 0x1d4], xmm0
jmp 0x140158281
movss xmm0, dword [0x14030a230]
movss dword [rsp + 0x1d4], xmm0
movss xmm0, dword [rsp + 0x1d4]
movss dword [rsp + 0x2c0], xmm0
lea r8, [rsp + 0x790]
lea rdx, [rsp + 0x728]
lea rcx, [rsp + 0x528]
call fcn.1400dbfa0
lea r8, [rsp + 0x768]
mov rdx, rax
lea rcx, [rsp + 0x748]
call fcn.1400dbf50
nop
mov rax, qword [rsp + 0x348]
mov qword [rsp + 0x638], rax
mov rax, qword [rsp + 0x298]
cmp qword [rsp + 0x638], rax
jae 0x14015858e
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x77c]
addss xmm0, dword [rax + 0x3c30]
movss xmm1, dword [rsp + 0x74c]
comiss xmm1, xmm0
jbe 0x140158318
jmp 0x14015858e
movss xmm0, dword [rsp + 0x774]
comiss xmm0, dword [rsp + 0x74c]
jbe 0x140158376
mov rax, qword [rsp + 0x298]
cmp qword [rsp + 0x638], rax
jae 0x140158371
mov rax, qword [rsp + 0x638]
movzx eax, word [rax]
mov dword [rsp + 0x2bc], eax
mov rax, qword [rsp + 0x638]
add rax, 2
mov qword [rsp + 0x638], rax
cmp dword [rsp + 0x2bc], 0xa
jne 0x14015836f
jmp 0x140158371
jmp 0x14015832b
jmp 0x14015854f
mov byte [rsp + 0x30], 1
mov qword [rsp + 0x28], 0
lea rax, [rsp + 0x638]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x298]
mov r8, qword [rsp + 0x638]
mov rdx, qword [rsp + 0x68]
lea rcx, [rsp + 0x690]
call fcn.140153cf0
nop
xorps xmm0, xmm0
comiss xmm0, dword [rsp + 0x690]
jb 0x1401583ff
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3c28]
mov qword [rsp + 0x438], rax
mov dx, reloc.WLDAP32.dll_Ordinal_32
mov rcx, qword [rsp + 0x438]
call fcn.1401531d0
mulss xmm0, dword [0x14030a220]
cvttss2si eax, xmm0
cvtsi2ss xmm0, eax
movss dword [rsp + 0x690], xmm0
movss xmm2, dword [rsp + 0x2c0]
movss xmm1, dword [rsp + 0x690]
lea rcx, [rsp + 0x530]
call fcn.14003b880
mov r8, rax
lea rdx, [rsp + 0x748]
lea rcx, [rsp + 0x538]
call fcn.1400dbfa0
mov qword [rsp + 0x3d8], rax
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x2d0]
subss xmm0, dword [rax + 0x3c30]
movaps xmm2, xmm0
xorps xmm1, xmm1
lea rcx, [rsp + 0x540]
call fcn.14003b880
mov r8, rax
lea rdx, [rsp + 0x748]
lea rcx, [rsp + 0x548]
call fcn.1400dbfa0
mov qword [rsp + 0x3d0], rax
mov r8, qword [rsp + 0x3d8]
mov rdx, qword [rsp + 0x3d0]
lea rcx, [rsp + 0x798]
call fcn.1400daff0
nop
lea rdx, [rsp + 0x770]
lea rcx, [rsp + 0x598]
call fcn.1400db030
lea rdx, [rsp + 0x598]
lea rcx, [rsp + 0x798]
call fcn.1400e47d0
nop
lea rdx, [rsp + 0x770]
lea rcx, [rsp + 0x5a8]
call fcn.1400db030
lea rdx, [rsp + 0x5a8]
lea rcx, [rsp + 0x798]
call fcn.1400f7cf0
movzx eax, al
test eax, eax
je 0x14015854f
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax + 0x298]
mov qword [rsp + 0x3c8], rax
mov dword [rsp + 0x28], 0
xorps xmm0, xmm0
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x2d8]
lea r8, [rsp + 0x7a0]
lea rdx, [rsp + 0x798]
mov rcx, qword [rsp + 0x3c8]
call fcn.140119480
nop
movss xmm0, dword [rsp + 0x728]
subss xmm0, dword [rsp + 0x768]
movss dword [rsp + 0x748], xmm0
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x74c]
addss xmm0, dword [rax + 0x3c30]
movss dword [rsp + 0x74c], xmm0
jmp 0x1401582d9
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x1401585b9
mov rax, qword [rsp + 0x108]
mov rcx, qword [rsp + 0x630]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x14015870d
movzx eax, byte [rsp + 0x71]
test eax, eax
je 0x1401585d3
lea rax, [0x14090bda8]
mov qword [rsp + 0x320], rax
jmp 0x1401585e2
lea rax, [0x14090bd98]
mov qword [rsp + 0x320], rax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x3c0], rax
movss xmm1, dword [0x14030a5a0]
mov rcx, qword [rsp + 0x3c0]
call fcn.1400e99c0
mov dword [rsp + 0x23c], eax
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax + 0x298]
mov qword [rsp + 0x458], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x14015863c
mov qword [rsp + 0x328], 0
jmp 0x14015864c
lea rax, [rsp + 0x770]
mov qword [rsp + 0x328], rax
mov rax, qword [rsp + 0x630]
mov qword [rsp + 0x440], rax
lea r8, [rsp + 0x768]
lea rdx, [rsp + 0x728]
lea rcx, [rsp + 0x550]
call fcn.1400dbf50
mov qword [rsp + 0x448], rax
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x3c30]
movss dword [rsp + 0x240], xmm0
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x3c28]
mov qword [rsp + 0x450], rax
mov rax, qword [rsp + 0x328]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x23c]
mov dword [rsp + 0x20], eax
mov r9, qword [rsp + 0x448]
movss xmm2, dword [rsp + 0x240]
mov rdx, qword [rsp + 0x450]
mov rcx, qword [rsp + 0x458]
call fcn.14011bcf0
nop
movzx eax, byte [rsp + 0x70]
test eax, eax
je 0x140158a9f
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x78]
movss xmm0, dword [rax + 0xe80]
addss xmm0, dword [rcx + 0x10]
mov rax, qword [rsp + 0x58]
movss dword [rax + 0xe80], xmm0
mov rax, qword [rsp + 0x68]
movzx eax, byte [rax + 0x5b]
test eax, eax
je 0x140158790
mov rax, qword [rsp + 0x58]
xorps xmm0, xmm0
comiss xmm0, dword [rax + 0xe80]
jae 0x140158790
mov rax, qword [rsp + 0x58]
movss xmm0, dword [rax + 0xe80]
movss xmm1, dword [0x14032ba38]
call sub.api_ms_win_crt_math_l1_1_0.dll_fmodf
movss xmm1, dword [0x140310d40]
comiss xmm1, xmm0
jae 0x140158790
mov dword [rsp + 0x1d8], 0
jmp 0x14015879b
mov dword [rsp + 0x1d8], 1
movzx eax, byte [rsp + 0x1d8]
mov byte [rsp + 0xd7], al
lea r8, [rsp + 0x720]
lea rdx, [rsp + 0x728]
lea rcx, [rsp + 0x558]
call fcn.1400dbfa0
lea r8, [rsp + 0x768]
mov rdx, rax
lea rcx, [rsp + 0x560]
call fcn.1400dbf50
mov rdx, rax
lea rcx, [rsp + 0x640]
call fcn.1400edad0
nop
movss xmm0, dword [rsp + 0x644]
subss xmm0, dword [0x14032657c]
movss xmm1, dword [rsp + 0x640]
addss xmm1, dword [0x14030a5a0]
mov rax, qword [rsp + 0x68]
movss xmm2, dword [rsp + 0x644]
subss xmm2, dword [rax + 0x3c30]
addss xmm2, dword [0x14030a220]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm1
movss xmm1, dword [rsp + 0x640]
lea rcx, [rsp + 0x6c8]
call fcn.1400db0a0
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rax + 0x18]
mulss xmm0, dword [0x14030a654]
movss dword [rsp + 0x2a0], xmm0
lea rcx, [rsp + 0x740]
call fcn.1400dbe50
movss xmm0, dword [rax + 0x24]
movss dword [rsp + 0x27c], xmm0
movss xmm0, dword [rsp + 0x6c8]
subss xmm0, dword [rsp + 0x698]
movss xmm2, dword [rsp + 0x2a0]
movaps xmm1, xmm0
movss xmm0, dword [rsp + 0x27c]
call fcn.1400d7740
movss dword [rsp + 0x280], xmm0
lea rcx, [rsp + 0x740]
call fcn.1400dbe50
movss xmm0, dword [rsp + 0x280]
movss dword [rax + 0x24], xmm0
movzx eax, byte [rsp + 0xd7]
test eax, eax
je 0x140158a2a
lea rdx, [rsp + 0x770]
lea rcx, [rsp + 0x5b8]
call fcn.1400db030
lea rdx, [rsp + 0x5b8]
lea rcx, [rsp + 0x6c8]
call fcn.1400f7cf0
movzx eax, al
test eax, eax
je 0x140158a2a
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax + 0x298]
mov qword [rsp + 0x470], rax
movss xmm1, dword [0x14030a5a0]
lea rcx, [0x14090bd98]
call fcn.1400e99c0
mov dword [rsp + 0x28c], eax
lea rdx, [rsp + 0x568]
lea rcx, [rsp + 0x6c8]
call fcn.1400e9630
movss xmm0, dword [rax + 4]
movss dword [rsp + 0x284], xmm0
lea rcx, [rsp + 0x740]
call fcn.1400dbe50
movss xmm0, dword [rsp + 0x698]
addss xmm0, dword [rax + 0x24]
movss dword [rsp + 0x288], xmm0
movss xmm2, dword [rsp + 0x284]
movss xmm1, dword [rsp + 0x288]
lea rcx, [rsp + 0x590]
call fcn.14003b880
mov qword [rsp + 0x460], rax
lea rcx, [rsp + 0x740]
call fcn.1400dbe50
movss xmm0, dword [rsp + 0x698]
addss xmm0, dword [rax + 0x24]
movss xmm2, dword [rsp + 0x6cc]
movaps xmm1, xmm0
lea rcx, [rsp + 0x570]
call fcn.14003b880
mov qword [rsp + 0x468], rax
movss xmm0, dword [0x14030a5a0]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rsp + 0x28c]
mov r8, qword [rsp + 0x460]
mov rdx, qword [rsp + 0x468]
mov rcx, qword [rsp + 0x470]
call fcn.1401170b0
nop
movzx eax, byte [rsp + 0x60]
test eax, eax
jne 0x140158a9f
mov rax, qword [rsp + 0x68]
mov byte [rax + 0x5ce0], 1
mov rax, qword [rsp + 0x68]
movss xmm0, dword [rsp + 0x644]
subss xmm0, dword [rax + 0x3c30]
movss xmm1, dword [rsp + 0x640]
subss xmm1, dword [0x14030a5a0]
movaps xmm2, xmm0
lea rcx, [rsp + 0x578]
call fcn.14003b880
mov rax, qword [rax]
mov rcx, qword [rsp + 0x68]
mov qword [rcx + 0x5ce4], rax
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x68]
movss xmm0, dword [rcx + 0x3c30]
movss dword [rax + 0x5cec], xmm0
jmp 0x140158cc3
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140158afc
lea rdx, [rsp + 0x630]
mov rcx, qword [rsp + 0x108]
call fcn.140153c30
cvtsi2ss xmm0, eax
mov rax, qword [rsp + 0x68]
mulss xmm0, dword [rax + 0x3c30]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x628]
lea rcx, [rsp + 0x580]
call fcn.14003b880
mov rax, qword [rax]
mov qword [rsp + 0x648], rax
jmp 0x140158b9b
movzx eax, byte [rsp + 0x71]
test eax, eax
jne 0x140158b3a
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x624]
cmp dword [rax + 0x3f68], ecx
jne 0x140158b3a
mov rax, qword [rsp + 0x58]
movsxd rax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x108]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x630], rax
jmp 0x140158b9b
movzx eax, byte [rsp + 0x71]
test eax, eax
jne 0x140158b9b
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x478], rax
mov qword [rsp + 0x230], 0xffffffffffffffff
inc qword [rsp + 0x230]
mov rax, qword [rsp + 0x478]
mov rcx, qword [rsp + 0x230]
cmp byte [rax + rcx], 0
jne 0x140158b5f
mov rax, qword [rsp + 0x230]
mov rcx, qword [rsp + 0x108]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x630], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
jne 0x140158bc6
mov rax, qword [rsp + 0x108]
mov rcx, qword [rsp + 0x630]
sub rcx, rax
mov rax, rcx
cmp rax, 0x200000
jge 0x140158cc3
movzx eax, byte [rsp + 0x71]
test eax, eax
je 0x140158be0
lea rax, [0x14090bda8]
mov qword [rsp + 0x330], rax
jmp 0x140158bef
lea rax, [0x14090bd98]
mov qword [rsp + 0x330], rax
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0x480], rax
movss xmm1, dword [0x14030a5a0]
mov rcx, qword [rsp + 0x480]
call fcn.1400e99c0
mov dword [rsp + 0x238], eax
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax + 0x298]
mov qword [rsp + 0x488], rax
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140158c49
mov qword [rsp + 0x2e0], 0
jmp 0x140158c59
lea rax, [rsp + 0x770]
mov qword [rsp + 0x2e0], rax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
mov rax, qword [rsp + 0x630]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x238]
mov dword [rsp + 0x20], eax
lea r9, [rsp + 0x728]
mov rax, qword [rsp + 0x68]
movss xmm2, dword [rax + 0x3c30]
mov rax, qword [rsp + 0x68]
mov rdx, qword [rax + 0x3c28]
mov rcx, qword [rsp + 0x488]
call fcn.14011bcf0
nop
call fcn.1400f7f50
nop
movzx eax, byte [rsp + 0x77]
test eax, eax
je 0x140158ce1
movzx eax, byte [rsp + 0x71]
test eax, eax
jne 0x140158ce1
call fcn.1400f7f50
nop
movzx eax, byte [rsp + 0x50]
test eax, eax
je 0x140158db2
mov rax, qword [rsp + 0xe8]
movss xmm0, dword [rsp + 0x64c]
addss xmm0, dword [rax + 0x40]
movaps xmm2, xmm0
movss xmm1, dword [rsp + 0x648]
lea rcx, [rsp + 0x588]
call fcn.14003b880
mov rcx, rax
call fcn.1401530e0
nop
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x4794]
or eax, 0x401
mov rcx, qword [rsp + 0x68]
mov dword [rcx + 0x4794], eax
call fcn.1400e6570
mov rax, qword [rsp + 0x68]
mov eax, dword [rax + 0x47b8]
and eax, 0x80
mov ecx, dword [rsp + 0x7c0]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x7c0], eax
call fcn.1400e6ea0
nop
mov rax, qword [rsp + 0x68]
cmp dword [rax + 0x47b0], 0
jne 0x140158db2
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x624]
mov dword [rax + 0x47b0], ecx
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x7bc]
mov dword [rax + 0x47b4], ecx
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x7c0]
mov dword [rax + 0x47b8], ecx
mov rax, qword [rsp + 0x68]
movzx eax, byte [rax + 0x5da0]
test eax, eax
je 0x140158e05
movzx eax, byte [rsp + 0x77]
test eax, eax
je 0x140158dd4
movzx eax, byte [rsp + 0x71]
test eax, eax
je 0x140158e05
lea rdx, [0x14032b8c4]
lea rcx, [0x14032b8c8]
call fcn.1400f0bb0
mov r8, qword [rsp + 0x630]
mov rdx, qword [rsp + 0x108]
lea rcx, [rsp + 0x728]
call fcn.1400f0830
nop
movzx eax, byte [rsp + 0x74]
test eax, eax
je 0x140158e2b
mov eax, dword [rsp + 0x848]
and eax, 0x8000000
test eax, eax
jne 0x140158e2b
mov ecx, dword [rsp + 0x624]
call fcn.1400f0e80
nop
mov eax, dword [rsp + 0x848]
and eax, 0x20
test eax, eax
je 0x140158e45
movzx eax, byte [rsp + 0x8a]
jmp 0x140158e4a
movzx eax, byte [rsp + 0x74]
mov rcx, qword [rsp + 0x7f8]
xor rcx, rsp
call fcn.1402fe980
add rsp, 0x808
pop rdi
pop rsi
ret