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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0xd40
lea rax, [rsp + 0x43]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x170]
lea rcx, [rsp + 0x43]
call fcn.18004bbb0
lea rax, [rsp + 0x44]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xd00]
lea rcx, [rsp + 0x44]
call fcn.180049850
lea rax, [rsp + 0x45]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x6f8]
lea rcx, [rsp + 0x45]
call fcn.180049a30
lea rax, [rsp + 0x46]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xd20]
lea rcx, [rsp + 0x46]
call fcn.18004aba0
lea rax, [rsp + 0x47]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x680]
lea rcx, [rsp + 0x47]
call fcn.180049ec0
lea rax, [rsp + 0x48]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x158]
lea rcx, [rsp + 0x48]
call fcn.18004a370
lea rax, [rsp + 0x49]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x7a8]
lea rcx, [rsp + 0x49]
call fcn.18004a600
lea rax, [rsp + 0x4a]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xc20]
lea rcx, [rsp + 0x4a]
call fcn.18004aa50
lea rax, [rsp + 0x4b]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x7c8]
lea rcx, [rsp + 0x4b]
call fcn.18004abd0
lea rax, [rsp + 0x4c]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xbe8]
lea rcx, [rsp + 0x4c]
call fcn.180049d00
lea rax, [rsp + 0x4d]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x8a0]
lea rcx, [rsp + 0x4d]
call fcn.18004b2f0
vmovss xmm2, dword [0x1801f8660]
vmovss xmm1, dword [0x1801f8660]
lea rcx, [rsp + 0x288]
call fcn.1800490c0
lea rcx, [rsp + 0x288]
call fcn.1800a7c20
call fcn.180096f50
vsubss xmm0, xmm0, dword [0x1801f867c]
vmovss xmm2, dword [0x1801f8678]
vmovups xmm1, xmm0
lea rcx, [rsp + 0x290]
call fcn.1800490c0
lea rax, [rsp + 0x4e]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x6c0]
lea rcx, [rsp + 0x4e]
call fcn.180049d90
mov rcx, rax
call fcn.180049230
xor r9d, r9d
mov r8b, 1
lea rdx, [rsp + 0x290]
mov rcx, rax
call fcn.18008d9a0
vxorps xmm2, xmm2, xmm2
vmovss xmm1, dword [0x1801f866c]
lea rcx, [rsp + 0x298]
call fcn.1800490c0
lea rcx, [rsp + 0x298]
call fcn.1800a7c20
mov rax, qword [rsp + 0xd50]
cmp dword [rax + 4], 0
jne 0x18004fff9
mov byte [rsp + 0x40], 1
jmp 0x18004fffe
mov byte [rsp + 0x40], 0
lea rax, [rsp + 0x4f]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xb2e]
lea rcx, [rsp + 0x4f]
call fcn.180049cd0
mov rcx, rax
call fcn.180049410
movzx r8d, byte [rsp + 0x40]
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006e9e0
movzx eax, al
test eax, eax
je 0x180050055
mov rax, qword [rsp + 0xd50]
mov dword [rax + 4], 0
vmovss xmm1, dword [0x1801f8670]
vxorps xmm0, xmm0, xmm0
call fcn.1800a6aa0
mov rax, qword [rsp + 0xd50]
cmp dword [rax + 4], 1
jne 0x18005007b
mov byte [rsp + 0x41], 1
jmp 0x180050080
mov byte [rsp + 0x41], 0
lea rax, [rsp + 0x50]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x882]
lea rcx, [rsp + 0x50]
call fcn.18004b5f0
mov rcx, rax
call fcn.1800493b0
movzx r8d, byte [rsp + 0x41]
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006e9e0
movzx eax, al
test eax, eax
je 0x1800500d7
mov rax, qword [rsp + 0xd50]
mov dword [rax + 4], 1
vmovss xmm1, dword [0x1801f8670]
vxorps xmm0, xmm0, xmm0
call fcn.1800a6aa0
mov rax, qword [rsp + 0xd50]
cmp dword [rax + 4], 2
jne 0x1800500fd
mov byte [rsp + 0x42], 1
jmp 0x180050102
mov byte [rsp + 0x42], 0
lea rax, [rsp + 0x51]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xb3d]
lea rcx, [rsp + 0x51]
call fcn.18004b9d0
mov rcx, rax
call fcn.180049410
movzx r8d, byte [rsp + 0x42]
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006e9e0
movzx eax, al
test eax, eax
je 0x180050159
mov rax, qword [rsp + 0xd50]
mov dword [rax + 4], 2
vmovss xmm1, dword [0x1801f8670]
vxorps xmm0, xmm0, xmm0
call fcn.1800a6aa0
call fcn.1800926b0
vmovss xmm2, dword [0x1801f8680]
vmovss xmm1, dword [0x1801f8668]
lea rcx, [rsp + 0x2a0]
call fcn.1800490c0
lea rcx, [rsp + 0x2a0]
call fcn.1800a7c20
mov rax, qword [rsp + 0xd50]
cmp dword [rax + 4], 0
jne 0x1800517e1
call fcn.18008e450
lea rax, [rsp + 0x6c8]
mov qword [rsp + 0x2a8], rax
call fcn.180096f50
vsubss xmm0, xmm0, dword [0x1801f867c]
vdivss xmm0, xmm0, dword [0x1801f864c]
vsubss xmm0, xmm0, dword [0x1801f8664]
vxorps xmm2, xmm2, xmm2
vmovups xmm1, xmm0
mov rcx, qword [rsp + 0x2a8]
call fcn.1800490c0
mov rax, qword [rax]
mov qword [rsp + 0x2b0], rax
lea rax, [rsp + 0x52]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x5c0]
lea rcx, [rsp + 0x52]
call fcn.18004b6b0
mov rcx, rax
call fcn.180049210
mov qword [rsp + 0x2b8], rax
mov r8, qword [rsp + 0x2b0]
mov rdx, qword [rsp + 0x2b8]
mov rcx, qword [rsp + 0xd58]
call fcn.18006c1c0
lea rax, [rsp + 0x53]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd60]
inc rax
mov qword [rsp + 0x2c0], rax
lea rdx, [rsp + 0x779]
lea rcx, [rsp + 0x53]
call fcn.18004b020
mov rcx, rax
call fcn.180049270
mov rcx, qword [rsp + 0x2c0]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x54]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd60]
add rax, 0x11
mov qword [rsp + 0x2c8], rax
lea rdx, [rsp + 0x9bf]
lea rcx, [rsp + 0x54]
call fcn.18004b140
mov rcx, rax
call fcn.1800493d0
mov rcx, qword [rsp + 0x2c8]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x55]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd60]
add rax, 4
mov qword [rsp + 0x2d0], rax
lea rdx, [rsp + 0x5c7]
lea rcx, [rsp + 0x55]
call fcn.18004aff0
mov rcx, rax
call fcn.180049210
mov rcx, qword [rsp + 0x2d0]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x56]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd60]
add rax, 0x10
mov qword [rsp + 0x2d8], rax
lea rdx, [rsp + 0x5ce]
lea rcx, [rsp + 0x56]
call fcn.18004aea0
mov rcx, rax
call fcn.180049210
mov rcx, qword [rsp + 0x2d8]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x57]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd60]
add rax, 0xc
mov qword [rsp + 0x2e0], rax
lea rdx, [rsp + 0xb4c]
lea rcx, [rsp + 0x57]
call fcn.18004ade0
mov rcx, rax
call fcn.180049410
mov rcx, qword [rsp + 0x2e0]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x58]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd60]
add rax, 0xa
mov qword [rsp + 0x2e8], rax
lea rdx, [rsp + 0x783]
lea rcx, [rsp + 0x58]
call fcn.180049970
mov rcx, rax
call fcn.180049270
mov rcx, qword [rsp + 0x2e8]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x59]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd60]
add rax, 0xb
mov qword [rsp + 0x2f0], rax
lea rdx, [rsp + 0x78d]
lea rcx, [rsp + 0x59]
call fcn.18004b710
mov rcx, rax
call fcn.180049270
mov rcx, qword [rsp + 0x2f0]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x5a]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd60]
add rax, 3
mov qword [rsp + 0x2f8], rax
lea rdx, [rsp + 0x9cc]
lea rcx, [rsp + 0x5a]
call fcn.18004b350
mov rcx, rax
call fcn.1800493d0
mov rcx, qword [rsp + 0x2f8]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x5b]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd60]
add rax, 0x14
mov qword [rsp + 0x300], rax
lea rdx, [rsp + 0x9d9]
lea rcx, [rsp + 0x5b]
call fcn.180049460
mov rcx, rax
call fcn.1800493d0
mov rcx, qword [rsp + 0x300]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x5c]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd60]
add rax, 9
mov qword [rsp + 0x308], rax
lea rdx, [rsp + 0x5d5]
lea rcx, [rsp + 0x5c]
call fcn.18004b260
mov rcx, rax
call fcn.180049210
mov rcx, qword [rsp + 0x308]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x5d]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd60]
add rax, 0xd
mov qword [rsp + 0x198], rax
lea rdx, [rsp + 0x5dc]
lea rcx, [rsp + 0x5d]
call fcn.18004ba30
mov rcx, rax
call fcn.180049210
mov rcx, qword [rsp + 0x198]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x5e]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd60]
add rax, 8
mov qword [rsp + 0x318], rax
lea rdx, [rsp + 0x5e3]
lea rcx, [rsp + 0x5e]
call fcn.18004a8d0
mov rcx, rax
call fcn.180049210
mov rcx, qword [rsp + 0x318]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x5f]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd60]
add rax, 0x13
mov qword [rsp + 0x320], rax
lea rdx, [rsp + 0x9e6]
lea rcx, [rsp + 0x5f]
call fcn.18004a750
mov rcx, rax
call fcn.1800493d0
mov rcx, qword [rsp + 0x320]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
mov rax, qword [rsp + 0xd60]
cmp dword [rax + 0x18], 2
je 0x180050748
lea rax, [rsp + 0x60]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd60]
add rax, 2
mov qword [rsp + 0x328], rax
lea rdx, [rsp + 0x5ea]
lea rcx, [rsp + 0x60]
call fcn.18004b880
mov rcx, rax
call fcn.180049210
mov rcx, qword [rsp + 0x328]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
jmp 0x180050754
mov rax, qword [rsp + 0xd60]
mov byte [rax + 2], 0
lea rcx, [rsp + 0x170]
call fcn.1800536e0
mov dword [rsp + 0xf8], eax
lea rcx, [rsp + 0x170]
call fcn.18004d420
mov qword [rsp + 0x330], rax
lea rax, [rsp + 0x61]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xb98]
lea rcx, [rsp + 0x61]
call fcn.18004a480
mov rcx, rax
call fcn.180049290
mov qword [rsp + 0x338], rax
mov rax, qword [rsp + 0xd60]
add rax, 0x18
mov ecx, dword [rsp + 0xf8]
mov dword [rsp + 0x20], ecx
mov r9, qword [rsp + 0x330]
mov r8, rax
mov rdx, qword [rsp + 0x338]
mov rcx, qword [rsp + 0xd58]
call fcn.18006db00
lea rcx, [rsp + 0x170]
call fcn.18004d920
mov rax, qword [rsp + 0xd60]
mov r8d, dword [rax + 0x18]
lea rdx, [rsp + 0x590]
mov rcx, qword [rsp + 0xd50]
call fcn.18004da60
lea rcx, [rsp + 0x550]
call fcn.180048fa0
mov dword [rsp + 0xd8], 0
mov dword [rsp + 0xd4], 0
lea rax, [rsp + 0x590]
mov qword [rsp + 0x130], rax
mov rcx, qword [rsp + 0x130]
call fcn.18003e2b0
mov qword [rsp + 0xe8], rax
mov rcx, qword [rsp + 0x130]
call fcn.1800448d0
mov qword [rsp + 0x340], rax
jmp 0x180050888
mov rax, qword [rsp + 0xe8]
add rax, 0x28
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0x340]
cmp qword [rsp + 0xe8], rax
je 0x18005090c
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x138], rax
mov rax, qword [rsp + 0x138]
mov rdx, rax
lea rcx, [rsp + 0x550]
call fcn.18004bcd0
xor edx, edx
lea rcx, [rsp + 0x550]
call fcn.18004bd00
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0xd60]
mov ecx, dword [rcx + 0x20]
cmp dword [rax + 0x20], ecx
jne 0x1800508f7
mov eax, dword [rsp + 0xd4]
mov dword [rsp + 0xd8], eax
mov eax, dword [rsp + 0xd4]
inc eax
mov dword [rsp + 0xd4], eax
jmp 0x180050874
xor edx, edx
lea rcx, [rsp + 0x550]
call fcn.18004bd00
lea rcx, [rsp + 0x550]
call fcn.180053770
mov dword [rsp + 0xfc], eax
lea rcx, [rsp + 0x550]
call fcn.18004c1a0
mov qword [rsp + 0x348], rax
lea rax, [rsp + 0x62]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x9f3]
lea rcx, [rsp + 0x62]
call fcn.18004b7f0
mov rcx, rax
call fcn.1800493d0
mov qword [rsp + 0x350], rax
mov eax, dword [rsp + 0xfc]
mov dword [rsp + 0x20], eax
mov r9, qword [rsp + 0x348]
lea r8, [rsp + 0xd8]
mov rdx, qword [rsp + 0x350]
mov rcx, qword [rsp + 0xd58]
call fcn.18006db00
movsxd rax, dword [rsp + 0xd8]
mov rdx, rax
lea rcx, [rsp + 0x590]
call fcn.1800491a0
mov rcx, qword [rsp + 0xd60]
mov eax, dword [rax + 0x20]
mov dword [rcx + 0x20], eax
lea rcx, [rsp + 0x158]
call fcn.1800536d0
mov dword [rsp + 0x100], eax
lea rcx, [rsp + 0x158]
call fcn.18004d3e0
mov qword [rsp + 0x358], rax
lea rax, [rsp + 0x63]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xcb0]
lea rcx, [rsp + 0x63]
call fcn.1800494c0
mov rcx, rax
call fcn.1800492f0
mov qword [rsp + 0x360], rax
mov rax, qword [rsp + 0xd60]
add rax, 0x24
mov ecx, dword [rsp + 0x100]
mov dword [rsp + 0x20], ecx
mov r9, qword [rsp + 0x358]
mov r8, rax
mov rdx, qword [rsp + 0x360]
mov rcx, qword [rsp + 0xd58]
call fcn.18006db00
lea rcx, [rsp + 0x158]
call fcn.18004d8e0
call fcn.1800f6390
lea rcx, [rsp + 0x550]
call fcn.18003fcc0
lea rcx, [rsp + 0x590]
call fcn.180049180
mov rcx, qword [rsp + 0xd58]
call fcn.18006dd60
call fcn.180092f50
vmovss xmm1, dword [0x1801f8698]
vxorps xmm0, xmm0, xmm0
call fcn.1800a6aa0
call fcn.18008e450
lea rax, [rsp + 0x6d0]
mov qword [rsp + 0x368], rax
call fcn.180096f50
vsubss xmm0, xmm0, dword [0x1801f867c]
vdivss xmm0, xmm0, dword [0x1801f864c]
vsubss xmm0, xmm0, dword [0x1801f8664]
vxorps xmm2, xmm2, xmm2
vmovups xmm1, xmm0
mov rcx, qword [rsp + 0x368]
call fcn.1800490c0
mov rax, qword [rax]
mov qword [rsp + 0x370], rax
lea rax, [rsp + 0x64]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xa00]
lea rcx, [rsp + 0x64]
call fcn.180049d30
mov rcx, rax
call fcn.1800493d0
mov qword [rsp + 0x378], rax
mov r8, qword [rsp + 0x370]
mov rdx, qword [rsp + 0x378]
mov rcx, qword [rsp + 0xd58]
call fcn.18006c1c0
lea rax, [rsp + 0x65]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x5f1]
lea rcx, [rsp + 0x65]
call fcn.18004a570
mov rcx, rax
call fcn.180049210
lea r8, [0x180667bf0]
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rcx, [rsp + 0x7a8]
call fcn.180053710
mov dword [rsp + 0x104], eax
lea rcx, [rsp + 0x7a8]
call fcn.18004d560
mov qword [rsp + 0x380], rax
lea rax, [rsp + 0x66]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xa0d]
lea rcx, [rsp + 0x66]
call fcn.18004acf0
mov rcx, rax
call fcn.1800493d0
mov qword [rsp + 0x388], rax
mov rax, qword [rsp + 0xd60]
add rax, 0x40
mov ecx, dword [rsp + 0x104]
mov dword [rsp + 0x20], ecx
mov r9, qword [rsp + 0x380]
mov r8, rax
mov rdx, qword [rsp + 0x388]
mov rcx, qword [rsp + 0xd58]
call fcn.18006db00
lea rcx, [rsp + 0xc20]
call fcn.180053730
mov dword [rsp + 0x108], eax
lea rcx, [rsp + 0xc20]
call fcn.18004d620
mov qword [rsp + 0x390], rax
lea rax, [rsp + 0x67]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xa1a]
lea rcx, [rsp + 0x67]
call fcn.1800498b0
mov rcx, rax
call fcn.1800493d0
mov qword [rsp + 0x398], rax
mov rax, qword [rsp + 0xd60]
add rax, 0x44
mov ecx, dword [rsp + 0x108]
mov dword [rsp + 0x20], ecx
mov r9, qword [rsp + 0x390]
mov r8, rax
mov rdx, qword [rsp + 0x398]
mov rcx, qword [rsp + 0xd58]
call fcn.18006db00
mov rax, qword [rsp + 0xd60]
cmp dword [rax + 0x44], 0
jne 0x180050e87
lea rax, [rsp + 0x68]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xb5b]
lea rcx, [rsp + 0x68]
call fcn.18004a960
mov rcx, rax
call fcn.180049410
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0x69]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x81f]
lea rcx, [rsp + 0x69]
call fcn.18004b380
mov rcx, rax
call fcn.180049390
xor r8d, r8d
lea rdx, [0x18066a9e0]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0x6a]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x88e]
lea rcx, [rsp + 0x6a]
call fcn.18004ac00
mov rcx, rax
call fcn.1800493b0
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0x6b]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x82a]
lea rcx, [rsp + 0x6b]
call fcn.18004a7e0
mov rcx, rax
call fcn.180049390
xor r8d, r8d
lea rdx, [0x18066a9ec]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0x6c]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x589]
lea rcx, [rsp + 0x6c]
call fcn.180049a90
mov rcx, rax
call fcn.18004d0e0
mov qword [rsp + 0x3a0], rax
lea rax, [rsp + 0x6d]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xa27]
lea rcx, [rsp + 0x6d]
call fcn.180049fb0
mov rcx, rax
call fcn.1800493d0
mov qword [rsp + 0x3a8], rax
mov dword [rsp + 0x30], 0
mov rax, qword [rsp + 0x3a0]
mov qword [rsp + 0x28], rax
vmovss xmm0, dword [0x1801f865c]
vmovss dword [rsp + 0x20], xmm0
vmovss xmm3, dword [0x1801f8648]
lea r8, [0x18066aa40]
mov rdx, qword [rsp + 0x3a8]
mov rcx, qword [rsp + 0xd58]
call fcn.18006e0a0
jmp 0x18005127b
mov rax, qword [rsp + 0xd60]
cmp dword [rax + 0x44], 1
jne 0x180051137
lea rax, [rsp + 0x6e]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x835]
lea rcx, [rsp + 0x6e]
call fcn.1800497c0
mov rcx, rax
call fcn.180049390
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0x6f]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xa94]
lea rcx, [rsp + 0x6f]
call fcn.180049f50
mov rcx, rax
call fcn.1800493f0
xor r8d, r8d
lea rdx, [0x18066aa48]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0x70]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x840]
lea rcx, [rsp + 0x70]
call fcn.18004a690
mov rcx, rax
call fcn.180049390
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0x71]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xaa2]
lea rcx, [rsp + 0x71]
call fcn.18004a310
mov rcx, rax
call fcn.1800493f0
xor r8d, r8d
lea rdx, [0x18066aa58]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0x72]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x84b]
lea rcx, [rsp + 0x72]
call fcn.18004b2c0
mov rcx, rax
call fcn.180049390
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0x73]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xab0]
lea rcx, [rsp + 0x73]
call fcn.180049790
mov rcx, rax
call fcn.1800493f0
xor r8d, r8d
lea rdx, [0x18066aa68]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0x74]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x856]
lea rcx, [rsp + 0x74]
call fcn.18004acc0
mov rcx, rax
call fcn.180049390
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0x75]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xabe]
lea rcx, [rsp + 0x75]
call fcn.18004a190
mov rcx, rax
call fcn.1800493f0
xor r8d, r8d
lea rdx, [0x18066aa78]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0x76]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x814]
lea rcx, [rsp + 0x76]
call fcn.18004ab40
mov rcx, rax
call fcn.180049390
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0x77]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xacc]
lea rcx, [rsp + 0x77]
call fcn.180049b20
mov rcx, rax
call fcn.1800493f0
xor r8d, r8d
lea rdx, [0x18066aa88]
mov rcx, rax
call fcn.1800e7120
jmp 0x18005127b
mov rax, qword [rsp + 0xd60]
cmp dword [rax + 0x44], 2
jne 0x18005127b
lea rax, [rsp + 0x78]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xb6a]
lea rcx, [rsp + 0x78]
call fcn.1800495b0
mov rcx, rax
call fcn.180049410
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0x79]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x861]
lea rcx, [rsp + 0x79]
call fcn.18004a1c0
mov rcx, rax
call fcn.180049390
xor r8d, r8d
lea rdx, [0x18066a9d0]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0x7a]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x584]
lea rcx, [rsp + 0x7a]
call fcn.18004b790
mov rcx, rax
call fcn.18004d0e0
mov qword [rsp + 0x3b0], rax
lea rax, [rsp + 0x7b]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xa34]
lea rcx, [rsp + 0x7b]
call fcn.18004a6f0
mov rcx, rax
call fcn.1800493d0
mov qword [rsp + 0x3b8], rax
mov dword [rsp + 0x30], 0
mov rax, qword [rsp + 0x3b0]
mov qword [rsp + 0x28], rax
vmovss xmm0, dword [0x1801f865c]
vmovss dword [rsp + 0x20], xmm0
vmovss xmm3, dword [0x1801f8648]
lea r8, [0x18066aa40]
mov rdx, qword [rsp + 0x3b8]
mov rcx, qword [rsp + 0xd58]
call fcn.18006e0a0
lea rax, [rsp + 0x7c]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x570]
lea rcx, [rsp + 0x7c]
call fcn.180049610
mov rcx, rax
call fcn.18004d0e0
mov qword [rsp + 0x3c0], rax
lea rax, [rsp + 0x7d]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xc9d]
lea rcx, [rsp + 0x7d]
call fcn.18004bb80
mov rcx, rax
call fcn.1800492f0
mov qword [rsp + 0x3c8], rax
mov rax, qword [rsp + 0xd60]
add rax, 0x28
mov dword [rsp + 0x30], 0
mov rcx, qword [rsp + 0x3c0]
mov qword [rsp + 0x28], rcx
vmovss xmm0, dword [0x1801f8694]
vmovss dword [rsp + 0x20], xmm0
vxorps xmm3, xmm3, xmm3
mov r8, rax
mov rdx, qword [rsp + 0x3c8]
mov rcx, qword [rsp + 0xd58]
call fcn.18006e0a0
mov rcx, qword [rsp + 0xd58]
call fcn.18006dd60
lea rax, [rsp + 0x6d8]
mov qword [rsp + 0x3d0], rax
call fcn.180096f50
vsubss xmm0, xmm0, dword [0x1801f867c]
vdivss xmm0, xmm0, dword [0x1801f864c]
vsubss xmm0, xmm0, dword [0x1801f8664]
vxorps xmm2, xmm2, xmm2
vmovups xmm1, xmm0
mov rcx, qword [rsp + 0x3d0]
call fcn.1800490c0
mov rax, qword [rax]
mov qword [rsp + 0x3d8], rax
lea rax, [rsp + 0x7e]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xa41]
lea rcx, [rsp + 0x7e]
call fcn.18004adb0
mov rcx, rax
call fcn.1800493d0
mov qword [rsp + 0x3e0], rax
mov r8, qword [rsp + 0x3d8]
mov rdx, qword [rsp + 0x3e0]
mov rcx, qword [rsp + 0xd58]
call fcn.18006c1c0
lea rax, [rsp + 0x7f]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd60]
add rax, 5
mov qword [rsp + 0x3e8], rax
lea rdx, [rsp + 0x8c8]
lea rcx, [rsp + 0x7f]
call fcn.18004af90
mov rcx, rax
call fcn.1800493d0
mov rcx, qword [rsp + 0x3e8]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rcx, [rsp + 0x680]
call fcn.180053700
mov dword [rsp + 0x10c], eax
lea rcx, [rsp + 0x680]
call fcn.18004d4e0
mov qword [rsp + 0x3f0], rax
lea rax, [rsp + 0x80]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x8d5]
lea rcx, [rsp + 0x80]
call fcn.18004a0a0
mov rcx, rax
call fcn.1800493d0
mov qword [rsp + 0x3f8], rax
mov rax, qword [rsp + 0xd60]
add rax, 0x48
mov ecx, dword [rsp + 0x10c]
mov dword [rsp + 0x20], ecx
mov r9, qword [rsp + 0x3f0]
mov r8, rax
mov rdx, qword [rsp + 0x3f8]
mov rcx, qword [rsp + 0xd58]
call fcn.18006db00
lea rcx, [rsp + 0x680]
call fcn.18004d960
mov rcx, qword [rsp + 0xd58]
call fcn.18006dd60
lea rax, [rsp + 0x6e0]
mov qword [rsp + 0x400], rax
call fcn.180096f50
vsubss xmm0, xmm0, dword [0x1801f867c]
vdivss xmm0, xmm0, dword [0x1801f864c]
vsubss xmm0, xmm0, dword [0x1801f8664]
vxorps xmm2, xmm2, xmm2
vmovups xmm1, xmm0
mov rcx, qword [rsp + 0x400]
call fcn.1800490c0
mov rax, qword [rax]
mov qword [rsp + 0x408], rax
lea rax, [rsp + 0x81]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x8e2]
lea rcx, [rsp + 0x81]
call fcn.180049760
mov rcx, rax
call fcn.1800493d0
mov qword [rsp + 0x410], rax
mov r8, qword [rsp + 0x408]
mov rdx, qword [rsp + 0x410]
mov rcx, qword [rsp + 0xd58]
call fcn.18006c1c0
lea rax, [rsp + 0x82]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xc58]
lea rcx, [rsp + 0x82]
call fcn.18004a2e0
mov rcx, rax
call fcn.1800492b0
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0x83]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x718]
lea rcx, [rsp + 0x83]
call fcn.18004b470
mov rcx, rax
call fcn.180049250
xor r8d, r8d
lea rdx, [0x18066a890]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0x84]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xada]
lea rcx, [rsp + 0x84]
call fcn.18004ae70
mov rcx, rax
call fcn.1800493f0
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0x85]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x797]
lea rcx, [rsp + 0x85]
call fcn.180049640
mov rcx, rax
call fcn.180049270
xor r8d, r8d
lea rdx, [0x18066a8a0]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0x86]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xcd7]
lea rcx, [rsp + 0x86]
call fcn.18004af00
mov rcx, rax
call fcn.180049310
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0x87]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x733]
lea rcx, [rsp + 0x87]
call fcn.18004a510
mov rcx, rax
call fcn.180049270
xor r8d, r8d
lea rdx, [0x18066a990]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0x88]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xae8]
lea rcx, [rsp + 0x88]
call fcn.180049d60
mov rcx, rax
call fcn.1800493f0
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0x89]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xc69]
lea rcx, [rsp + 0x89]
call fcn.18004aab0
mov rcx, rax
call fcn.1800492b0
xor r8d, r8d
lea rdx, [0x18066a8d0]
mov rcx, rax
call fcn.1800e7120
mov rcx, qword [rsp + 0xd58]
call fcn.18006dd60
call fcn.180092f50
jmp 0x1800536b4
mov rax, qword [rsp + 0xd50]
cmp dword [rax + 4], 1
jne 0x180052c29
call fcn.18008e450
lea rax, [rsp + 0x6e8]
mov qword [rsp + 0x418], rax
call fcn.180096f50
vsubss xmm0, xmm0, dword [0x1801f867c]
vdivss xmm0, xmm0, dword [0x1801f864c]
vsubss xmm0, xmm0, dword [0x1801f8664]
vxorps xmm2, xmm2, xmm2
vmovups xmm1, xmm0
mov rcx, qword [rsp + 0x418]
call fcn.1800490c0
mov rax, qword [rax]
mov qword [rsp + 0x420], rax
lea rax, [rsp + 0x8a]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x188]
lea rcx, [rsp + 0x8a]
call fcn.180049db0
mov rcx, rax
call fcn.1800491f0
mov qword [rsp + 0x428], rax
mov r8, qword [rsp + 0x420]
mov rdx, qword [rsp + 0x428]
mov rcx, qword [rsp + 0xd58]
call fcn.18006c1c0
lea rax, [rsp + 0x8b]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd68]
inc rax
mov qword [rsp + 0x430], rax
lea rdx, [rsp + 0x5f8]
lea rcx, [rsp + 0x8b]
call fcn.18004a0d0
mov rcx, rax
call fcn.180049210
mov rcx, qword [rsp + 0x430]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x8c]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd68]
add rax, 0x10
mov qword [rsp + 0x438], rax
lea rdx, [rsp + 0xba8]
lea rcx, [rsp + 0x8c]
call fcn.18004ad20
mov rcx, rax
call fcn.18004d260
mov rcx, qword [rsp + 0x438]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x8d]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd68]
add rax, 5
mov qword [rsp + 0x440], rax
lea rdx, [rsp + 0x5ff]
lea rcx, [rsp + 0x8d]
call fcn.18004a5d0
mov rcx, rax
call fcn.18004d160
mov rcx, qword [rsp + 0x440]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x8e]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd68]
add rax, 0xf
mov qword [rsp + 0x448], rax
lea rdx, [rsp + 0x606]
lea rcx, [rsp + 0x8e]
call fcn.18004a040
mov rcx, rax
call fcn.18004d160
mov rcx, qword [rsp + 0x448]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x8f]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd68]
add rax, 0xd
mov qword [rsp + 0x450], rax
lea rdx, [rsp + 0x8ef]
lea rcx, [rsp + 0x8f]
call fcn.18004a540
mov rcx, rax
call fcn.18004d7e0
mov rcx, qword [rsp + 0x450]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x90]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd68]
add rax, 3
mov qword [rsp + 0x458], rax
lea rdx, [rsp + 0x60d]
lea rcx, [rsp + 0x90]
call fcn.18004a160
mov rcx, rax
call fcn.18004d160
mov rcx, qword [rsp + 0x458]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x91]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd68]
add rax, 9
mov qword [rsp + 0x460], rax
lea rdx, [rsp + 0x614]
lea rcx, [rsp + 0x91]
call fcn.1800496d0
mov rcx, rax
call fcn.18004d160
mov rcx, qword [rsp + 0x460]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x92]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd68]
add rax, 0x11
mov qword [rsp + 0x468], rax
lea rdx, [rsp + 0x66f]
lea rcx, [rsp + 0x92]
call fcn.18004a780
mov rcx, rax
call fcn.18004d160
mov rcx, qword [rsp + 0x468]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x93]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd68]
add rax, 0xb
mov qword [rsp + 0x470], rax
lea rdx, [rsp + 0x73d]
lea rcx, [rsp + 0x93]
call fcn.18004a5a0
mov rcx, rax
call fcn.18004d220
mov rcx, qword [rsp + 0x470]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0x94]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd68]
add rax, 0xc
mov qword [rsp + 0x478], rax
lea rdx, [rsp + 0x8fc]
lea rcx, [rsp + 0x94]
call fcn.180049e90
mov rcx, rax
call fcn.18004d7e0
mov rcx, qword [rsp + 0x478]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801938fc]
call fcn.1800a6aa0
lea rax, [rsp + 0x95]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x909]
lea rcx, [rsp + 0x95]
call fcn.18004a870
mov rcx, rax
call fcn.1800493d0
xor r8d, r8d
lea rdx, [0x18066a9b0]
mov rcx, rax
call fcn.1800e7120
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8690]
call fcn.1800a6aa0
lea rax, [rsp + 0x96]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x916]
lea rcx, [rsp + 0x96]
call fcn.18004b050
mov rcx, rax
call fcn.1800493d0
xor r8d, r8d
lea rdx, [0x18066a9c0]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0x97]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd68]
add rax, 0x12
mov qword [rsp + 0x480], rax
lea rdx, [rsp + 0x676]
lea rcx, [rsp + 0x97]
call fcn.18004b6e0
mov rcx, rax
call fcn.18004d160
mov rcx, qword [rsp + 0x480]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
mov rax, qword [rsp + 0xd68]
cmp dword [rax + 0x14], 2
je 0x180051dda
lea rax, [rsp + 0x98]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd68]
add rax, 2
mov qword [rsp + 0x488], rax
lea rdx, [rsp + 0x65a]
lea rcx, [rsp + 0x98]
call fcn.18004ac60
mov rcx, rax
call fcn.18004d160
mov rcx, qword [rsp + 0x488]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
jmp 0x180051de6
mov rax, qword [rsp + 0xd68]
mov byte [rax + 2], 0
call fcn.1800f6390
lea rcx, [rsp + 0x170]
call fcn.1800536e0
mov dword [rsp + 0x110], eax
lea rcx, [rsp + 0x170]
call fcn.18004d420
mov qword [rsp + 0x490], rax
lea rax, [rsp + 0x99]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x923]
lea rcx, [rsp + 0x99]
call fcn.18004aae0
mov rcx, rax
call fcn.18004d7e0
mov qword [rsp + 0x498], rax
mov rax, qword [rsp + 0xd68]
add rax, 0x14
mov ecx, dword [rsp + 0x110]
mov dword [rsp + 0x20], ecx
mov r9, qword [rsp + 0x490]
mov r8, rax
mov rdx, qword [rsp + 0x498]
mov rcx, qword [rsp + 0xd58]
call fcn.18006db00
lea rcx, [rsp + 0x170]
call fcn.18004d920
mov rax, qword [rsp + 0xd68]
mov r8d, dword [rax + 0x14]
lea rdx, [rsp + 0x5a8]
mov rcx, qword [rsp + 0xd50]
call fcn.18004da60
lea rcx, [rsp + 0x530]
call fcn.180048fa0
mov dword [rsp + 0xe0], 0
mov dword [rsp + 0xdc], 0
lea rax, [rsp + 0x5a8]
mov qword [rsp + 0x140], rax
mov rcx, qword [rsp + 0x140]
call fcn.18003e2b0
mov qword [rsp + 0xf0], rax
mov rcx, qword [rsp + 0x140]
call fcn.1800448d0
mov qword [rsp + 0x4a0], rax
jmp 0x180051f25
mov rax, qword [rsp + 0xf0]
add rax, 0x28
mov qword [rsp + 0xf0], rax
mov rax, qword [rsp + 0x4a0]
cmp qword [rsp + 0xf0], rax
je 0x180051fa9
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x148], rax
mov rax, qword [rsp + 0x148]
mov rdx, rax
lea rcx, [rsp + 0x530]
call fcn.18004bcd0
xor edx, edx
lea rcx, [rsp + 0x530]
call fcn.18004bd00
mov rax, qword [rsp + 0x148]
mov rcx, qword [rsp + 0xd68]
mov ecx, dword [rcx + 0x1c]
cmp dword [rax + 0x20], ecx
jne 0x180051f94
mov eax, dword [rsp + 0xdc]
mov dword [rsp + 0xe0], eax
mov eax, dword [rsp + 0xdc]
inc eax
mov dword [rsp + 0xdc], eax
jmp 0x180051f11
xor edx, edx
lea rcx, [rsp + 0x530]
call fcn.18004bd00
lea rcx, [rsp + 0x530]
call fcn.180053770
mov dword [rsp + 0x114], eax
lea rcx, [rsp + 0x530]
call fcn.18004c1a0
mov qword [rsp + 0x4a8], rax
lea rax, [rsp + 0x9a]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x61b]
lea rcx, [rsp + 0x9a]
call fcn.18004b590
mov rcx, rax
call fcn.18004d160
mov qword [rsp + 0x4b0], rax
mov eax, dword [rsp + 0x114]
mov dword [rsp + 0x20], eax
mov r9, qword [rsp + 0x4a8]
lea r8, [rsp + 0xe0]
mov rdx, qword [rsp + 0x4b0]
mov rcx, qword [rsp + 0xd58]
call fcn.18006db00
movsxd rax, dword [rsp + 0xe0]
mov rdx, rax
lea rcx, [rsp + 0x5a8]
call fcn.1800491a0
mov rcx, qword [rsp + 0xd68]
mov eax, dword [rax + 0x20]
mov dword [rcx + 0x1c], eax
lea rcx, [rsp + 0x158]
call fcn.1800536d0
mov dword [rsp + 0x118], eax
lea rcx, [rsp + 0x158]
call fcn.18004d3e0
mov qword [rsp + 0x4b8], rax
lea rax, [rsp + 0x9b]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xbb8]
lea rcx, [rsp + 0x9b]
call fcn.180049580
mov rcx, rax
call fcn.18004d260
mov qword [rsp + 0x4c0], rax
mov rax, qword [rsp + 0xd68]
add rax, 0x20
mov ecx, dword [rsp + 0x118]
mov dword [rsp + 0x20], ecx
mov r9, qword [rsp + 0x4b8]
mov r8, rax
mov rdx, qword [rsp + 0x4c0]
mov rcx, qword [rsp + 0xd58]
call fcn.18006db00
lea rcx, [rsp + 0x158]
call fcn.18004d8e0
lea rcx, [rsp + 0x530]
call fcn.18003fcc0
lea rcx, [rsp + 0x5a8]
call fcn.180049180
mov rcx, qword [rsp + 0xd58]
call fcn.18006dd60
call fcn.180092f50
vmovss xmm1, dword [0x1801f8698]
vxorps xmm0, xmm0, xmm0
call fcn.1800a6aa0
call fcn.18008e450
lea rax, [rsp + 0x6f0]
mov qword [rsp + 0x310], rax
call fcn.180096f50
vsubss xmm0, xmm0, dword [0x1801f867c]
vdivss xmm0, xmm0, dword [0x1801f864c]
vsubss xmm0, xmm0, dword [0x1801f8664]
vxorps xmm2, xmm2, xmm2
vmovups xmm1, xmm0
mov rcx, qword [rsp + 0x310]
call fcn.1800490c0
mov rax, qword [rax]
mov qword [rsp + 0x4c8], rax
lea rax, [rsp + 0x9c]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x86c]
lea rcx, [rsp + 0x9c]
call fcn.180049ca0
mov rcx, rax
call fcn.180049390
mov qword [rsp + 0x4d0], rax
mov r8, qword [rsp + 0x4c8]
mov rdx, qword [rsp + 0x4d0]
mov rcx, qword [rsp + 0xd58]
call fcn.18006c1c0
lea rax, [rsp + 0x9d]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x622]
lea rcx, [rsp + 0x9d]
call fcn.180049550
mov rcx, rax
call fcn.180049210
lea r8, [0x180667bf1]
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rcx, [rsp + 0x7c8]
call fcn.180053710
mov dword [rsp + 0x11c], eax
lea rcx, [rsp + 0x7c8]
call fcn.18004d560
mov qword [rsp + 0x4d8], rax
lea rax, [rsp + 0x9e]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x930]
lea rcx, [rsp + 0x9e]
call fcn.18004b230
mov rcx, rax
call fcn.18004d7e0
mov qword [rsp + 0x4e0], rax
mov rax, qword [rsp + 0xd68]
add rax, 0x38
mov ecx, dword [rsp + 0x11c]
mov dword [rsp + 0x20], ecx
mov r9, qword [rsp + 0x4d8]
mov r8, rax
mov rdx, qword [rsp + 0x4e0]
mov rcx, qword [rsp + 0xd58]
call fcn.18006db00
lea rcx, [rsp + 0xbe8]
call fcn.180053730
mov dword [rsp + 0x120], eax
lea rcx, [rsp + 0xbe8]
call fcn.18004d620
mov qword [rsp + 0x4e8], rax
lea rax, [rsp + 0x9f]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x93d]
lea rcx, [rsp + 0x9f]
call fcn.1800497f0
mov rcx, rax
call fcn.18004d7e0
mov qword [rsp + 0x4f0], rax
mov rax, qword [rsp + 0xd68]
add rax, 0x3c
mov ecx, dword [rsp + 0x120]
mov dword [rsp + 0x20], ecx
mov r9, qword [rsp + 0x4e8]
mov r8, rax
mov rdx, qword [rsp + 0x4f0]
mov rcx, qword [rsp + 0xd58]
call fcn.18006db00
mov rax, qword [rsp + 0xd68]
cmp dword [rax + 0x3c], 0
jne 0x180052567
lea rax, [rsp + 0xa0]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xb79]
lea rcx, [rsp + 0xa0]
call fcn.180049430
mov rcx, rax
call fcn.180049410
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0xa1]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xaf6]
lea rcx, [rsp + 0xa1]
call fcn.18004baf0
mov rcx, rax
call fcn.1800493f0
xor r8d, r8d
lea rdx, [0x18066aa18]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0xa2]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xc8b]
lea rcx, [rsp + 0xa2]
call fcn.18004bbe0
mov rcx, rax
call fcn.1800492d0
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0xa3]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xb04]
lea rcx, [rsp + 0xa3]
call fcn.180049b50
mov rcx, rax
call fcn.1800493f0
xor r8d, r8d
lea rdx, [0x18066aa24]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0xa4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x575]
lea rcx, [rsp + 0xa4]
call fcn.18004a280
mov rcx, rax
call fcn.18004d0e0
mov qword [rsp + 0x4f8], rax
lea rax, [rsp + 0xa5]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x94a]
lea rcx, [rsp + 0xa5]
call fcn.18004aed0
mov rcx, rax
call fcn.1800493d0
mov qword [rsp + 0x500], rax
mov dword [rsp + 0x30], 0
mov rax, qword [rsp + 0x4f8]
mov qword [rsp + 0x28], rax
vmovss xmm0, dword [0x1801f8658]
vmovss dword [rsp + 0x20], xmm0
vmovss xmm3, dword [0x1801f8648]
lea r8, [0x18066aa44]
mov rdx, qword [rsp + 0x500]
mov rcx, qword [rsp + 0xd58]
call fcn.18006e0a0
jmp 0x1800529af
mov rax, qword [rsp + 0xd68]
cmp dword [rax + 0x3c], 1
jne 0x180052853
lea rax, [rsp + 0xa6]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x877]
lea rcx, [rsp + 0xa6]
call fcn.18004b850
mov rcx, rax
call fcn.180049390
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0xa7]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xb12]
lea rcx, [rsp + 0xa7]
call fcn.180049520
mov rcx, rax
call fcn.1800493f0
xor r8d, r8d
lea rdx, [0x18066aa98]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0xa8]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x7e8]
lea rcx, [rsp + 0xa8]
call fcn.18004b110
mov rcx, rax
call fcn.180049390
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0xa9]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xb20]
lea rcx, [rsp + 0xa9]
call fcn.18004ad50
mov rcx, rax
call fcn.1800493f0
xor r8d, r8d
lea rdx, [0x18066aaa8]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0xaa]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x7f3]
lea rcx, [rsp + 0xaa]
call fcn.18004a130
mov rcx, rax
call fcn.180049390
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0xab]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xa4e]
lea rcx, [rsp + 0xab]
call fcn.18004aa80
mov rcx, rax
call fcn.1800493f0
xor r8d, r8d
lea rdx, [0x18066aab8]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0xac]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x7fe]
lea rcx, [rsp + 0xac]
call fcn.18004b560
mov rcx, rax
call fcn.180049390
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0xad]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xa5c]
lea rcx, [rsp + 0xad]
call fcn.18004b440
mov rcx, rax
call fcn.1800493f0
xor r8d, r8d
lea rdx, [0x18066aac8]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0xae]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x809]
lea rcx, [rsp + 0xae]
call fcn.18004b0e0
mov rcx, rax
call fcn.180049390
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0xaf]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xa6a]
lea rcx, [rsp + 0xaf]
call fcn.180049ac0
mov rcx, rax
call fcn.1800493f0
xor r8d, r8d
lea rdx, [0x18066aad8]
mov rcx, rax
call fcn.1800e7120
jmp 0x1800529af
mov rax, qword [rsp + 0xd68]
cmp dword [rax + 0x3c], 2
jne 0x1800529af
lea rax, [rsp + 0xb0]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x721]
lea rcx, [rsp + 0xb0]
call fcn.18004bc40
mov rcx, rax
call fcn.180049250
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0xb1]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xa78]
lea rcx, [rsp + 0xb1]
call fcn.18004b970
mov rcx, rax
call fcn.1800493f0
xor r8d, r8d
lea rdx, [0x18066aa08]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0xb2]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x57a]
lea rcx, [rsp + 0xb2]
call fcn.18004a930
mov rcx, rax
call fcn.18004d0e0
mov qword [rsp + 0x508], rax
lea rax, [rsp + 0xb3]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x957]
lea rcx, [rsp + 0xb3]
call fcn.18004ae10
mov rcx, rax
call fcn.1800493d0
mov qword [rsp + 0x510], rax
mov dword [rsp + 0x30], 0
mov rax, qword [rsp + 0x508]
mov qword [rsp + 0x28], rax
vmovss xmm0, dword [0x1801f8658]
vmovss dword [rsp + 0x20], xmm0
vmovss xmm3, dword [0x1801f8648]
lea r8, [0x18066aa44]
mov rdx, qword [rsp + 0x510]
mov rcx, qword [rsp + 0xd58]
call fcn.18006e0a0
mov rcx, qword [rsp + 0xd58]
call fcn.18006dd60
lea rax, [rsp + 0x6a0]
mov qword [rsp + 0x518], rax
call fcn.180096f50
vsubss xmm0, xmm0, dword [0x1801f867c]
vdivss xmm0, xmm0, dword [0x1801f864c]
vsubss xmm0, xmm0, dword [0x1801f8664]
vxorps xmm2, xmm2, xmm2
vmovups xmm1, xmm0
mov rcx, qword [rsp + 0x518]
call fcn.1800490c0
mov rax, qword [rax]
mov qword [rsp + 0x520], rax
lea rax, [rsp + 0xb4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x964]
lea rcx, [rsp + 0xb4]
call fcn.18004a4b0
mov rcx, rax
call fcn.1800493d0
mov qword [rsp + 0x528], rax
mov r8, qword [rsp + 0x520]
mov rdx, qword [rsp + 0x528]
mov rcx, qword [rsp + 0xd58]
call fcn.18006c1c0
lea rax, [rsp + 0xb5]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xc7a]
lea rcx, [rsp + 0xb5]
call fcn.1800498e0
mov rcx, rax
call fcn.1800492b0
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0xb6]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x72a]
lea rcx, [rsp + 0xb6]
call fcn.180049730
mov rcx, rax
call fcn.180049250
xor r8d, r8d
lea rdx, [0x18066a8b0]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0xb7]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xa86]
lea rcx, [rsp + 0xb7]
call fcn.18004ae40
mov rcx, rax
call fcn.1800493f0
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0xb8]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x747]
lea rcx, [rsp + 0xb8]
call fcn.180049ef0
mov rcx, rax
call fcn.180049270
xor r8d, r8d
lea rdx, [0x18066a8c0]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0xb9]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xcc3]
lea rcx, [rsp + 0xb9]
call fcn.18004b8b0
mov rcx, rax
call fcn.180049310
mov rcx, rax
call fcn.1800f63e0
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801f8670]
call fcn.1800a6aa0
lea rax, [rsp + 0xba]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x751]
lea rcx, [rsp + 0xba]
call fcn.18004a340
mov rcx, rax
call fcn.180049270
xor r8d, r8d
lea rdx, [0x18066a9b0]
mov rcx, rax
call fcn.1800e7120
mov rcx, qword [rsp + 0xd58]
call fcn.18006dd60
call fcn.180092f50
jmp 0x1800536b4
mov rax, qword [rsp + 0xd50]
cmp dword [rax + 4], 2
jne 0x1800536b4
call fcn.18008e450
lea rax, [rsp + 0x6a8]
mov qword [rsp + 0x190], rax
call fcn.180096f50
vsubss xmm0, xmm0, dword [0x1801f867c]
vdivss xmm0, xmm0, dword [0x1801f864c]
vsubss xmm0, xmm0, dword [0x1801f8664]
vxorps xmm2, xmm2, xmm2
vmovups xmm1, xmm0
mov rcx, qword [rsp + 0x190]
call fcn.1800490c0
mov rax, qword [rax]
mov qword [rsp + 0x1a0], rax
lea rax, [rsp + 0xbb]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x629]
lea rcx, [rsp + 0xbb]
call fcn.18004b9a0
mov rcx, rax
call fcn.180049210
mov qword [rsp + 0x1a8], rax
mov r8, qword [rsp + 0x1a0]
mov rdx, qword [rsp + 0x1a8]
mov rcx, qword [rsp + 0xd58]
call fcn.18006c1c0
lea rax, [rsp + 0xbc]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd70]
mov qword [rsp + 0x1b0], rax
lea rdx, [rsp + 0x630]
lea rcx, [rsp + 0xbc]
call fcn.180049e00
mov rcx, rax
call fcn.18004d160
mov rcx, qword [rsp + 0x1b0]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0xbd]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd70]
inc rax
mov qword [rsp + 0x1b8], rax
lea rdx, [rsp + 0x637]
lea rcx, [rsp + 0xbd]
call fcn.180049c70
mov rcx, rax
call fcn.18004d160
mov rcx, qword [rsp + 0x1b8]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0xbe]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd70]
add rax, 2
mov qword [rsp + 0x1c0], rax
lea rdx, [rsp + 0x75b]
lea rcx, [rsp + 0xbe]
call fcn.180049bd0
mov rcx, rax
call fcn.18004d220
mov rcx, qword [rsp + 0x1c0]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0xbf]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd70]
add rax, 3
mov qword [rsp + 0x1c8], rax
lea rdx, [rsp + 0x63e]
lea rcx, [rsp + 0xbf]
call fcn.180049880
mov rcx, rax
call fcn.18004d160
mov rcx, qword [rsp + 0x1c8]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0xc0]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd70]
add rax, 4
mov qword [rsp + 0x1d0], rax
lea rdx, [rsp + 0x765]
lea rcx, [rsp + 0xc0]
call fcn.18004a660
mov rcx, rax
call fcn.18004d220
mov rcx, qword [rsp + 0x1d0]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0xc1]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd70]
add rax, 5
mov qword [rsp + 0x1d8], rax
lea rdx, [rsp + 0x971]
lea rcx, [rsp + 0xc1]
call fcn.180049a00
mov rcx, rax
call fcn.18004d7e0
mov rcx, qword [rsp + 0x1d8]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0xc2]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd70]
add rax, 7
mov qword [rsp + 0x1e0], rax
lea rdx, [rsp + 0x97e]
lea rcx, [rsp + 0xc2]
call fcn.18004b740
mov rcx, rax
call fcn.18004d7e0
mov rcx, qword [rsp + 0x1e0]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0xc3]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd70]
add rax, 0xb
mov qword [rsp + 0x1e8], rax
lea rdx, [rsp + 0x645]
lea rcx, [rsp + 0xc3]
call fcn.18004af60
mov rcx, rax
call fcn.18004d160
mov rcx, qword [rsp + 0x1e8]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0xc4]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd70]
add rax, 0xc
mov qword [rsp + 0x1f0], rax
lea rdx, [rsp + 0x64c]
lea rcx, [rsp + 0xc4]
call fcn.18004ba90
mov rcx, rax
call fcn.18004d160
mov rcx, qword [rsp + 0x1f0]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0xc5]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd70]
add rax, 0xd
mov qword [rsp + 0x1f8], rax
lea rdx, [rsp + 0x76f]
lea rcx, [rsp + 0xc5]
call fcn.18004bca0
mov rcx, rax
call fcn.18004d220
mov rcx, qword [rsp + 0x1f8]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
lea rax, [rsp + 0xc6]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd70]
add rax, 0xe
mov qword [rsp + 0x200], rax
lea rdx, [rsp + 0x653]
lea rcx, [rsp + 0xc6]
call fcn.18004a990
mov rcx, rax
call fcn.18004d160
mov rcx, qword [rsp + 0x200]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
mov rcx, qword [rsp + 0xd58]
call fcn.18006dd60
call fcn.180092f50
vmovss xmm1, dword [0x1801f8698]
vxorps xmm0, xmm0, xmm0
call fcn.1800a6aa0
call fcn.18008e450
lea rax, [rsp + 0x6b0]
mov qword [rsp + 0x208], rax
call fcn.180096f50
vsubss xmm0, xmm0, dword [0x1801f867c]
vdivss xmm0, xmm0, dword [0x1801f864c]
vsubss xmm0, xmm0, dword [0x1801f8664]
vxorps xmm2, xmm2, xmm2
vmovups xmm1, xmm0
mov rcx, qword [rsp + 0x208]
call fcn.1800490c0
mov rax, qword [rax]
mov qword [rsp + 0x210], rax
lea rax, [rsp + 0xc7]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x668]
lea rcx, [rsp + 0xc7]
call fcn.18004a840
mov rcx, rax
call fcn.180049210
mov qword [rsp + 0x218], rax
mov r8, qword [rsp + 0x210]
mov rdx, qword [rsp + 0x218]
mov rcx, qword [rsp + 0xd58]
call fcn.18006c1c0
lea rcx, [rsp + 0x8a0]
call fcn.180053720
mov dword [rsp + 0x124], eax
lea rcx, [rsp + 0x8a0]
call fcn.18004d5e0
mov qword [rsp + 0x220], rax
lea rax, [rsp + 0xc8]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x98b]
lea rcx, [rsp + 0xc8]
call fcn.18004b170
mov rcx, rax
call fcn.18004d7e0
mov qword [rsp + 0x228], rax
mov rax, qword [rsp + 0xd70]
add rax, 0x1c
mov ecx, dword [rsp + 0x124]
mov dword [rsp + 0x20], ecx
mov r9, qword [rsp + 0x220]
mov r8, rax
mov rdx, qword [rsp + 0x228]
mov rcx, qword [rsp + 0xd58]
call fcn.18006db00
lea rax, [rsp + 0xc9]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x57f]
lea rcx, [rsp + 0xc9]
call fcn.180049dd0
mov rcx, rax
call fcn.18004d0e0
mov qword [rsp + 0x230], rax
lea rax, [rsp + 0xca]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xceb]
lea rcx, [rsp + 0xca]
call fcn.18004b530
mov rcx, rax
call fcn.18004d3a0
mov qword [rsp + 0x238], rax
mov rax, qword [rsp + 0xd60]
add rax, 0x2c
mov dword [rsp + 0x30], 0
mov rcx, qword [rsp + 0x230]
mov qword [rsp + 0x28], rcx
vmovss xmm0, dword [0x1801f8684]
vmovss dword [rsp + 0x20], xmm0
vxorps xmm3, xmm3, xmm3
mov r8, rax
mov rdx, qword [rsp + 0x238]
mov rcx, qword [rsp + 0xd58]
call fcn.18006e0a0
lea rax, [rsp + 0xcb]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x150]
lea rcx, [rsp + 0xcb]
call fcn.18004b080
mov rcx, rax
call fcn.18004d060
mov qword [rsp + 0x240], rax
lea rax, [rsp + 0xcc]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x998]
lea rcx, [rsp + 0xcc]
call fcn.18004aa20
mov rcx, rax
call fcn.18004d7e0
mov qword [rsp + 0x248], rax
mov rax, qword [rsp + 0xd70]
add rax, 0x20
mov dword [rsp + 0x30], 0
mov rcx, qword [rsp + 0x240]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], 0x64
xor r9d, r9d
mov r8, rax
mov rdx, qword [rsp + 0x248]
mov rcx, qword [rsp + 0xd58]
call fcn.18006e110
mov rcx, qword [rsp + 0xd58]
call fcn.18006dd60
lea rax, [rsp + 0x6b8]
mov qword [rsp + 0x250], rax
call fcn.180096f50
vsubss xmm0, xmm0, dword [0x1801f867c]
vdivss xmm0, xmm0, dword [0x1801f864c]
vsubss xmm0, xmm0, dword [0x1801f8664]
vxorps xmm2, xmm2, xmm2
vmovups xmm1, xmm0
mov rcx, qword [rsp + 0x250]
call fcn.1800490c0
mov rax, qword [rax]
mov qword [rsp + 0x258], rax
lea rax, [rsp + 0xcd]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x661]
lea rcx, [rsp + 0xcd]
call fcn.18004b820
mov rcx, rax
call fcn.180049210
mov qword [rsp + 0x260], rax
mov r8, qword [rsp + 0x258]
mov rdx, qword [rsp + 0x260]
mov rcx, qword [rsp + 0xd58]
call fcn.18006c1c0
lea rax, [rsp + 0xce]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd70]
add rax, 0xa
mov qword [rsp + 0x268], rax
lea rdx, [rsp + 0x9a5]
lea rcx, [rsp + 0xce]
call fcn.18004bb20
mov rcx, rax
call fcn.18004d7e0
mov rcx, qword [rsp + 0x268]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801938fc]
call fcn.1800a6aa0
lea rax, [rsp + 0xcf]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0x9b2]
lea rcx, [rsp + 0xcf]
call fcn.18004b1a0
mov rcx, rax
call fcn.1800493d0
xor r8d, r8d
lea rdx, [0x18066a980]
mov rcx, rax
call fcn.1800e7120
lea rax, [rsp + 0xd0]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
mov rax, qword [rsp + 0xd70]
add rax, 9
mov qword [rsp + 0x270], rax
lea rdx, [rsp + 0xbc8]
lea rcx, [rsp + 0xd0]
call fcn.18004a070
mov rcx, rax
call fcn.18004d260
mov rcx, qword [rsp + 0x270]
mov r8, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd58]
call fcn.18006ca70
vmovss xmm1, dword [0x1801f8698]
vmovss xmm0, dword [0x1801938fc]
call fcn.1800a6aa0
lea rax, [rsp + 0xd1]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xbd8]
lea rcx, [rsp + 0xd1]
call fcn.1800494f0
mov rcx, rax
call fcn.180049290
xor r8d, r8d
lea rdx, [0x18066a970]
mov rcx, rax
call fcn.1800e7120
mov rax, qword [rsp + 0xd70]
movzx eax, byte [rax + 9]
test eax, eax
je 0x1800536a2
lea rcx, [rsp + 0x6f8]
call fcn.1800536f0
mov dword [rsp + 0x128], eax
lea rcx, [rsp + 0x6f8]
call fcn.18004d460
mov qword [rsp + 0x278], rax
lea rax, [rsp + 0xd2]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rdx, [rsp + 0xb88]
lea rcx, [rsp + 0xd2]
call fcn.18004a7b0
mov rcx, rax
call fcn.18004d260
mov qword [rsp + 0x280], rax
mov rax, qword [rsp + 0xd70]
add rax, 0x18
mov ecx, dword [rsp + 0x128]
mov dword [rsp + 0x20], ecx
mov r9, qword [rsp + 0x278]
mov r8, rax
mov rdx, qword [rsp + 0x280]
mov rcx, qword [rsp + 0xd58]
call fcn.18006db00
mov rcx, qword [rsp + 0xd58]
call fcn.18006dd60
call fcn.180092f50
add rsp, 0xd40
pop rdi
ret