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

Disassembly:
movss dword [rsp + 0x20], xmm3
movss dword [rsp + 0x18], xmm2
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x7e8
xorps xmm0, xmm0
comiss xmm0, dword [rsp + 0x800]
jb 0x1800c21e8
mov rax, qword [rsp + 0x7f0]
add rax, 0x78
mov qword [rsp + 0x410], rax
mov rdx, qword [rsp + 0x7f8]
mov rcx, qword [rsp + 0x410]
call fcn.18009d600
jmp 0x1800c55a7
mov rax, qword [rsp + 0x7f0]
add rax, 0x78
mov qword [rsp + 0x418], rax
mov rax, qword [rsp + 0x7f0]
mov eax, dword [rax + 0x78]
mov ecx, dword [rsp + 0x818]
lea eax, [rcx + rax + 1]
mov edx, eax
mov rcx, qword [rsp + 0x418]
call fcn.18009dd60
mov dword [rsp + 0xd8], 0
jmp 0x1800c223e
mov eax, dword [rsp + 0xd8]
inc eax
mov dword [rsp + 0xd8], eax
mov eax, dword [rsp + 0x818]
cmp dword [rsp + 0xd8], eax
jg 0x1800c55a7
cvtsi2ss xmm0, dword [rsp + 0xd8]
cvtsi2ss xmm1, dword [rsp + 0x818]
divss xmm0, xmm1
movss xmm1, dword [rsp + 0x810]
subss xmm1, dword [rsp + 0x808]
mulss xmm0, xmm1
movss xmm1, dword [rsp + 0x808]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x3c], xmm0
mov rax, qword [rsp + 0x7f0]
add rax, 0x78
mov qword [rsp + 0x588], rax
cvtss2sd xmm0, dword [rsp + 0x3c]
cvtsd2ss xmm0, xmm0
call fcn.18011f030
movss dword [rsp + 0x300], xmm0
movss xmm0, dword [rsp + 0x300]
mulss xmm0, dword [rsp + 0x800]
mov rax, qword [rsp + 0x7f8]
movss xmm1, dword [rax + 4]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x2ec], xmm0
movss xmm0, dword [rsp + 0x3c]
movss dword [rsp + 0x304], xmm0
mov eax, dword [rsp + 0x304]
mov dword [rsp + 0x60], eax
xor eax, eax
test eax, eax
jne 0x1800c22ef
mov eax, dword [rsp + 0x60]
shr eax, 0x1f
mov dword [rsp + 0xcc], eax
mov eax, dword [rsp + 0x60]
btr eax, 0x1f
mov dword [rsp + 0x60], eax
cmp dword [rsp + 0x60], 0x3f490fda
ja 0x1800c248f
cmp dword [rsp + 0x60], 0x39800000
jae 0x1800c23b8
xor eax, eax
cmp eax, 1
je 0x1800c2361
movss xmm0, dword [rsp + 0x3c]
addss xmm0, dword [0x180133534]
movss dword [rsp + 0x408], xmm0
jmp 0x1800c239f
xor eax, eax
test eax, eax
je 0x1800c2384
movss xmm0, dword [rsp + 0x3c]
addss xmm0, dword [0x180133534]
cvtss2sd xmm0, xmm0
movsd qword [rsp + 0x698], xmm0
jmp 0x1800c239f
movss xmm0, dword [rsp + 0x3c]
addss xmm0, dword [0x180133534]
cvtss2sd xmm0, xmm0
movsd qword [rsp + 0x680], xmm0
xor eax, eax
test eax, eax
jne 0x1800c2341
movss xmm0, dword [0x180132158]
movss dword [rsp + 0x48], xmm0
jmp 0x1800c553e
cvtss2sd xmm0, dword [rsp + 0x3c]
movsd qword [rsp + 0x368], xmm0
movsd xmm0, qword [rsp + 0x368]
mulsd xmm0, qword [rsp + 0x368]
movsd qword [rsp + 0x158], xmm0
movsd xmm0, qword [rsp + 0x158]
mulsd xmm0, qword [rsp + 0x158]
movsd qword [rsp + 0x370], xmm0
movsd xmm0, qword [rsp + 0x158]
mulsd xmm0, qword [0x180133410]
movsd xmm1, qword [0x180133570]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x420], xmm0
movsd xmm0, qword [rsp + 0x370]
mulsd xmm0, qword [rsp + 0x158]
mulsd xmm0, qword [rsp + 0x420]
movsd xmm1, qword [rsp + 0x370]
mulsd xmm1, qword [0x180133450]
movsd xmm2, qword [rsp + 0x158]
mulsd xmm2, qword [0x180133588]
movsd xmm3, qword [0x180132d80]
addsd xmm3, xmm2
movaps xmm2, xmm3
addsd xmm2, xmm1
movaps xmm1, xmm2
addsd xmm1, xmm0
movaps xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [rsp + 0x48], xmm0
jmp 0x1800c553e
cmp dword [rsp + 0x60], 0x407b53d1
ja 0x1800c27d7
cmp dword [rsp + 0x60], 0x4016cbe3
jbe 0x1800c25b9
cmp dword [rsp + 0xcc], 0
je 0x1800c24ce
cvtss2sd xmm0, dword [rsp + 0x3c]
addsd xmm0, qword [0x1801334a0]
movsd qword [rsp + 0x348], xmm0
jmp 0x1800c24e5
cvtss2sd xmm0, dword [rsp + 0x3c]
subsd xmm0, qword [0x1801334a0]
movsd qword [rsp + 0x348], xmm0
movsd xmm0, qword [rsp + 0x348]
mulsd xmm0, qword [rsp + 0x348]
movsd qword [rsp + 0x160], xmm0
movsd xmm0, qword [rsp + 0x160]
mulsd xmm0, qword [rsp + 0x160]
movsd qword [rsp + 0x378], xmm0
movsd xmm0, qword [rsp + 0x160]
mulsd xmm0, qword [0x180133410]
movsd xmm1, qword [0x180133570]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x428], xmm0
movsd xmm0, qword [rsp + 0x378]
mulsd xmm0, qword [rsp + 0x160]
mulsd xmm0, qword [rsp + 0x428]
movsd xmm1, qword [rsp + 0x378]
mulsd xmm1, qword [0x180133450]
movsd xmm2, qword [rsp + 0x160]
mulsd xmm2, qword [0x180133588]
movsd xmm3, qword [0x180132d80]
addsd xmm3, xmm2
movaps xmm2, xmm3
addsd xmm2, xmm1
movaps xmm1, xmm2
addsd xmm1, xmm0
movaps xmm0, xmm1
cvtsd2ss xmm0, xmm0
xorps xmm0, xmmword [0x180132df0]
movss dword [rsp + 0x48], xmm0
jmp 0x1800c553e
cmp dword [rsp + 0xcc], 0
je 0x1800c26ce
cvtss2sd xmm0, dword [rsp + 0x3c]
addsd xmm0, qword [0x180133488]
movsd qword [rsp + 0x220], xmm0
movsd xmm0, qword [rsp + 0x220]
mulsd xmm0, qword [rsp + 0x220]
movsd qword [rsp + 0x168], xmm0
movsd xmm0, qword [rsp + 0x168]
mulsd xmm0, qword [rsp + 0x168]
movsd qword [rsp + 0x430], xmm0
movsd xmm0, qword [rsp + 0x168]
mulsd xmm0, qword [0x1801333f8]
movsd xmm1, qword [0x180133560]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x438], xmm0
movsd xmm0, qword [rsp + 0x168]
mulsd xmm0, qword [rsp + 0x220]
movsd qword [rsp + 0x380], xmm0
movsd xmm0, qword [rsp + 0x380]
mulsd xmm0, qword [rsp + 0x430]
mulsd xmm0, qword [rsp + 0x438]
movsd xmm1, qword [rsp + 0x168]
mulsd xmm1, qword [0x180133448]
movsd xmm2, qword [0x180133580]
addsd xmm2, xmm1
movaps xmm1, xmm2
movsd xmm2, qword [rsp + 0x380]
mulsd xmm2, xmm1
movaps xmm1, xmm2
movsd xmm2, qword [rsp + 0x220]
addsd xmm2, xmm1
movaps xmm1, xmm2
addsd xmm1, xmm0
movaps xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [rsp + 0x48], xmm0
jmp 0x1800c553e
cvtss2sd xmm0, dword [rsp + 0x3c]
movsd xmm1, qword [0x180133488]
subsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x228], xmm0
movsd xmm0, qword [rsp + 0x228]
mulsd xmm0, qword [rsp + 0x228]
movsd qword [rsp + 0x170], xmm0
movsd xmm0, qword [rsp + 0x170]
mulsd xmm0, qword [rsp + 0x170]
movsd qword [rsp + 0x440], xmm0
movsd xmm0, qword [rsp + 0x170]
mulsd xmm0, qword [0x1801333f8]
movsd xmm1, qword [0x180133560]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x448], xmm0
movsd xmm0, qword [rsp + 0x170]
mulsd xmm0, qword [rsp + 0x228]
movsd qword [rsp + 0x388], xmm0
movsd xmm0, qword [rsp + 0x388]
mulsd xmm0, qword [rsp + 0x440]
mulsd xmm0, qword [rsp + 0x448]
movsd xmm1, qword [rsp + 0x170]
mulsd xmm1, qword [0x180133448]
movsd xmm2, qword [0x180133580]
addsd xmm2, xmm1
movaps xmm1, xmm2
movsd xmm2, qword [rsp + 0x388]
mulsd xmm2, xmm1
movaps xmm1, xmm2
movsd xmm2, qword [rsp + 0x228]
addsd xmm2, xmm1
movaps xmm1, xmm2
addsd xmm1, xmm0
movaps xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [rsp + 0x48], xmm0
jmp 0x1800c553e
cmp dword [rsp + 0x60], 0x40e231d5
ja 0x1800c2b1c
cmp dword [rsp + 0x60], 0x40afeddf
jbe 0x1800c28fa
cmp dword [rsp + 0xcc], 0
je 0x1800c2816
cvtss2sd xmm0, dword [rsp + 0x3c]
addsd xmm0, qword [0x1801334b0]
movsd qword [rsp + 0x350], xmm0
jmp 0x1800c282d
cvtss2sd xmm0, dword [rsp + 0x3c]
subsd xmm0, qword [0x1801334b0]
movsd qword [rsp + 0x350], xmm0
movsd xmm0, qword [rsp + 0x350]
mulsd xmm0, qword [rsp + 0x350]
movsd qword [rsp + 0x178], xmm0
movsd xmm0, qword [rsp + 0x178]
mulsd xmm0, qword [rsp + 0x178]
movsd qword [rsp + 0x390], xmm0
movsd xmm0, qword [rsp + 0x178]
mulsd xmm0, qword [0x180133410]
movsd xmm1, qword [0x180133570]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x450], xmm0
movsd xmm0, qword [rsp + 0x390]
mulsd xmm0, qword [rsp + 0x178]
mulsd xmm0, qword [rsp + 0x450]
movsd xmm1, qword [rsp + 0x390]
mulsd xmm1, qword [0x180133450]
movsd xmm2, qword [rsp + 0x178]
mulsd xmm2, qword [0x180133588]
movsd xmm3, qword [0x180132d80]
addsd xmm3, xmm2
movaps xmm2, xmm3
addsd xmm2, xmm1
movaps xmm1, xmm2
addsd xmm1, xmm0
movaps xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [rsp + 0x48], xmm0
jmp 0x1800c553e
cmp dword [rsp + 0xcc], 0
je 0x1800c2a1a
movss xmm0, dword [rsp + 0x3c]
xorps xmm0, xmmword [0x180132df0]
cvtss2sd xmm0, xmm0
subsd xmm0, qword [0x1801334a8]
movsd qword [rsp + 0x230], xmm0
movsd xmm0, qword [rsp + 0x230]
mulsd xmm0, qword [rsp + 0x230]
movsd qword [rsp + 0x180], xmm0
movsd xmm0, qword [rsp + 0x180]
mulsd xmm0, qword [rsp + 0x180]
movsd qword [rsp + 0x458], xmm0
movsd xmm0, qword [rsp + 0x180]
mulsd xmm0, qword [0x1801333f8]
movsd xmm1, qword [0x180133560]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x460], xmm0
movsd xmm0, qword [rsp + 0x180]
mulsd xmm0, qword [rsp + 0x230]
movsd qword [rsp + 0x398], xmm0
movsd xmm0, qword [rsp + 0x398]
mulsd xmm0, qword [rsp + 0x458]
mulsd xmm0, qword [rsp + 0x460]
movsd xmm1, qword [rsp + 0x180]
mulsd xmm1, qword [0x180133448]
movsd xmm2, qword [0x180133580]
addsd xmm2, xmm1
movaps xmm1, xmm2
movsd xmm2, qword [rsp + 0x398]
mulsd xmm2, xmm1
movaps xmm1, xmm2
movsd xmm2, qword [rsp + 0x230]
addsd xmm2, xmm1
movaps xmm1, xmm2
addsd xmm1, xmm0
movaps xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [rsp + 0x48], xmm0
jmp 0x1800c553e
cvtss2sd xmm0, dword [rsp + 0x3c]
subsd xmm0, qword [0x1801334a8]
movsd qword [rsp + 0x238], xmm0
movsd xmm0, qword [rsp + 0x238]
mulsd xmm0, qword [rsp + 0x238]
movsd qword [rsp + 0x188], xmm0
movsd xmm0, qword [rsp + 0x188]
mulsd xmm0, qword [rsp + 0x188]
movsd qword [rsp + 0x468], xmm0
movsd xmm0, qword [rsp + 0x188]
mulsd xmm0, qword [0x1801333f8]
movsd xmm1, qword [0x180133560]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x470], xmm0
movsd xmm0, qword [rsp + 0x188]
mulsd xmm0, qword [rsp + 0x238]
movsd qword [rsp + 0x3a0], xmm0
movsd xmm0, qword [rsp + 0x3a0]
mulsd xmm0, qword [rsp + 0x468]
mulsd xmm0, qword [rsp + 0x470]
movsd xmm1, qword [rsp + 0x188]
mulsd xmm1, qword [0x180133448]
movsd xmm2, qword [0x180133580]
addsd xmm2, xmm1
movaps xmm1, xmm2
movsd xmm2, qword [rsp + 0x3a0]
mulsd xmm2, xmm1
movaps xmm1, xmm2
movsd xmm2, qword [rsp + 0x238]
addsd xmm2, xmm1
movaps xmm1, xmm2
addsd xmm1, xmm0
movaps xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [rsp + 0x48], xmm0
jmp 0x1800c553e
cmp dword [rsp + 0x60], 0x7f800000
jb 0x1800c2b3d
movss xmm0, dword [rsp + 0x3c]
subss xmm0, dword [rsp + 0x3c]
movss dword [rsp + 0x48], xmm0
jmp 0x1800c553e
movss xmm0, dword [rsp + 0x3c]
movss dword [rsp + 0xd4], xmm0
mov eax, dword [rsp + 0xd4]
btr eax, 0x1f
mov dword [rsp + 0xd0], eax
cmp dword [rsp + 0xd0], 0x4dc90fdb
jae 0x1800c2bf2
cvtss2sd xmm0, dword [rsp + 0x3c]
mulsd xmm0, qword [0x180133468]
addsd xmm0, qword [0x180133510]
subsd xmm0, qword [0x180133510]
movsd qword [rsp + 0x2f0], xmm0
cvttsd2si eax, qword [rsp + 0x2f0]
mov dword [rsp + 0xc4], eax
cvtss2sd xmm0, dword [rsp + 0x3c]
movsd xmm1, qword [rsp + 0x2f0]
mulsd xmm1, qword [0x180133480]
subsd xmm0, xmm1
movsd xmm1, qword [rsp + 0x2f0]
mulsd xmm1, qword [0x1801333c8]
subsd xmm0, xmm1
movsd qword [rsp + 0xa8], xmm0
mov eax, dword [rsp + 0xc4]
mov dword [rsp + 0xc8], eax
jmp 0x1800c5173
cmp dword [rsp + 0xd0], 0x7f800000
jb 0x1800c2c28
movss xmm0, dword [rsp + 0x3c]
subss xmm0, dword [rsp + 0x3c]
cvtss2sd xmm0, xmm0
movsd qword [rsp + 0xa8], xmm0
mov dword [rsp + 0xc8], 0
jmp 0x1800c5173
mov eax, dword [rsp + 0xd4]
shr eax, 0x1f
mov dword [rsp + 0x2e0], eax
mov eax, dword [rsp + 0xd0]
shr eax, 0x17
sub eax, 0x96
mov dword [rsp + 0xf0], eax
mov eax, dword [rsp + 0xf0]
shl eax, 0x17
mov ecx, dword [rsp + 0xd0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0xd4], eax
cvtss2sd xmm0, dword [rsp + 0xd4]
mov eax, 8
imul rax, rax, 0
movsd qword [rsp + rax + 0x3c0], xmm0
xor eax, eax
lea rcx, [0x180132ef8]
mov eax, dword [rcx + rax*4]
mov dword [rsp + 0x94], eax
mov eax, dword [rsp + 0x94]
mov dword [rsp + 0x2dc], eax
mov eax, 1
dec eax
mov dword [rsp + 0x88], eax
mov eax, dword [rsp + 0xf0]
sub eax, 3
cdq
mov ecx, 0x18
idiv ecx
mov dword [rsp + 0xb0], eax
cmp dword [rsp + 0xb0], 0
jge 0x1800c2ce3
mov dword [rsp + 0xb0], 0
mov eax, dword [rsp + 0xb0]
inc eax
imul eax, eax, 0x18
mov ecx, dword [rsp + 0xf0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x88]
mov ecx, dword [rsp + 0xb0]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x88]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x308], eax
mov dword [rsp + 0x20], 0
jmp 0x1800c2d4b
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x28]
inc eax
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x308]
cmp dword [rsp + 0x20], eax
jg 0x1800c2da0
cmp dword [rsp + 0x28], 0
jge 0x1800c2d6d
xorps xmm0, xmm0
movsd qword [rsp + 0x3a8], xmm0
jmp 0x1800c2d87
movsxd rax, dword [rsp + 0x28]
lea rcx, [0x180132f10]
cvtsi2sd xmm0, dword [rcx + rax*4]
movsd qword [rsp + 0x3a8], xmm0
movsxd rax, dword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x3a8]
movsd qword [rsp + rax*8 + 0x740], xmm0
jmp 0x1800c2d37
mov dword [rsp + 0x20], 0
jmp 0x1800c2db4
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x94]
cmp dword [rsp + 0x20], eax
jg 0x1800c2e4a
mov dword [rsp + 0x28], 0
xorps xmm0, xmm0
movsd qword [rsp + 0x30], xmm0
jmp 0x1800c2de2
mov eax, dword [rsp + 0x28]
inc eax
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x88]
cmp dword [rsp + 0x28], eax
jg 0x1800c2e31
movsxd rax, dword [rsp + 0x28]
mov ecx, dword [rsp + 0x20]
mov edx, dword [rsp + 0x88]
add edx, ecx
mov ecx, edx
sub ecx, dword [rsp + 0x28]
movsxd rcx, ecx
movsd xmm0, qword [rsp + rax*8 + 0x3c0]
mulsd xmm0, qword [rsp + rcx*8 + 0x740]
movsd xmm1, qword [rsp + 0x30]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x30], xmm0
jmp 0x1800c2dd8
movsxd rax, dword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + rax*8 + 0x6a0], xmm0
jmp 0x1800c2daa
mov eax, dword [rsp + 0x94]
mov dword [rsp + 0x24], eax
mov dword [rsp + 0x20], 0
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x28], eax
movsxd rax, dword [rsp + 0x24]
movsd xmm0, qword [rsp + rax*8 + 0x6a0]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800c2e8f
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x28]
dec eax
mov dword [rsp + 0x28], eax
cmp dword [rsp + 0x28], 0
jle 0x1800c2eff
movsd xmm0, qword [0x1801333d8]
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
cvtsi2sd xmm0, eax
movsd qword [rsp + 0x30], xmm0
movsd xmm0, qword [0x1801334d8]
mulsd xmm0, qword [rsp + 0x30]
movsd xmm1, qword [rsp + 0x40]
subsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
movsxd rcx, dword [rsp + 0x20]
mov dword [rsp + rcx*4 + 0x590], eax
mov eax, dword [rsp + 0x28]
dec eax
cdqe
movsd xmm0, qword [rsp + rax*8 + 0x6a0]
addsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800c2e7b
movsd xmm0, qword [rsp + 0x40]
movsd qword [rsp + 0x78], xmm0
movsd xmm0, qword [rsp + 0x78]
movsd qword [rsp + 0x3b0], xmm0
mov rax, qword [rsp + 0x3b0]
shr rax, 0x20
mov dword [rsp + 0x8c], eax
mov eax, dword [rsp + 0x3b0]
mov dword [rsp + 0x30c], eax
xor eax, eax
test eax, eax
jne 0x1800c2f0b
mov eax, dword [rsp + 0x8c]
and eax, 0x7ff00000
sar eax, 0x14
mov dword [rsp + 0x4c], eax
cmp dword [rsp + 0x4c], 0
jne 0x1800c2fff
mov eax, dword [rsp + 0x8c]
btr eax, 0x1f
mov ecx, dword [rsp + 0x30c]
or ecx, eax
mov eax, ecx
test eax, eax
jne 0x1800c2f8a
movsd xmm0, qword [rsp + 0x78]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800c3458
movsd xmm0, qword [rsp + 0x78]
mulsd xmm0, qword [0x180133518]
movsd qword [rsp + 0x78], xmm0
movsd xmm0, qword [rsp + 0x78]
movsd qword [rsp + 0x478], xmm0
mov rax, qword [rsp + 0x478]
shr rax, 0x20
mov dword [rsp + 0x8c], eax
xor eax, eax
test eax, eax
jne 0x1800c2f9e
mov eax, dword [rsp + 0x8c]
and eax, 0x7ff00000
sar eax, 0x14
sub eax, 0x36
mov dword [rsp + 0x4c], eax
cmp dword [rsp + 0x38], 0xffff3cb0
jge 0x1800c2fff
movsd xmm0, qword [0x180133390]
mulsd xmm0, qword [rsp + 0x78]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800c3458
cmp dword [rsp + 0x4c], 0x7ff
jne 0x1800c3020
movsd xmm0, qword [rsp + 0x78]
addsd xmm0, qword [rsp + 0x78]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800c3458
mov eax, dword [rsp + 0x38]
mov ecx, dword [rsp + 0x4c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x4c], eax
cmp dword [rsp + 0x4c], 0x7fe
jle 0x1800c3131
movsd xmm0, qword [0x180133548]
movsd qword [rsp + 0x240], xmm0
movsd xmm0, qword [rsp + 0x240]
movsd qword [rsp + 0x480], xmm0
mov rax, qword [rsp + 0x480]
shr rax, 0x20
mov dword [rsp + 0x310], eax
xor eax, eax
test eax, eax
jne 0x1800c304f
movsd xmm0, qword [rsp + 0x78]
movsd qword [rsp + 0x488], xmm0
mov rax, qword [rsp + 0x488]
shr rax, 0x20
mov dword [rsp + 0x314], eax
xor eax, eax
test eax, eax
jne 0x1800c307a
movsd xmm0, qword [rsp + 0x240]
movsd qword [rsp + 0x190], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x190]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x190], rax
mov eax, dword [rsp + 0x310]
btr eax, 0x1f
mov ecx, dword [rsp + 0x314]
and ecx, 0x80000000
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x190]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x190], rax
movsd xmm0, qword [rsp + 0x190]
movsd qword [rsp + 0x240], xmm0
xor eax, eax
test eax, eax
jne 0x1800c30a2
movsd xmm0, qword [rsp + 0x240]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800c3458
cmp dword [rsp + 0x4c], 0
jle 0x1800c31bd
movsd xmm0, qword [rsp + 0x78]
movsd qword [rsp + 0x198], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x198]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x198], rax
mov eax, dword [rsp + 0x8c]
and eax, 0x800fffff
mov ecx, dword [rsp + 0x4c]
shl ecx, 0x14
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x198]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x198], rax
movsd xmm0, qword [rsp + 0x198]
movsd qword [rsp + 0x78], xmm0
xor eax, eax
test eax, eax
jne 0x1800c313c
movsd xmm0, qword [rsp + 0x78]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800c3458
cmp dword [rsp + 0x4c], 0xffffffca
jg 0x1800c33c9
cmp dword [rsp + 0x38], 0xc350
jle 0x1800c32ce
movsd xmm0, qword [0x180133548]
movsd qword [rsp + 0x248], xmm0
movsd xmm0, qword [rsp + 0x248]
movsd qword [rsp + 0x490], xmm0
mov rax, qword [rsp + 0x490]
shr rax, 0x20
mov dword [rsp + 0x318], eax
xor eax, eax
test eax, eax
jne 0x1800c31e7
movsd xmm0, qword [rsp + 0x78]
movsd qword [rsp + 0x498], xmm0
mov rax, qword [rsp + 0x498]
shr rax, 0x20
mov dword [rsp + 0x2d4], eax
xor eax, eax
test eax, eax
jne 0x1800c3212
movsd xmm0, qword [rsp + 0x248]
movsd qword [rsp + 0x1a0], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x1a0]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x1a0], rax
mov eax, dword [rsp + 0x318]
btr eax, 0x1f
mov ecx, dword [rsp + 0x2d4]
and ecx, 0x80000000
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x1a0]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x1a0], rax
movsd xmm0, qword [rsp + 0x1a0]
movsd qword [rsp + 0x248], xmm0
xor eax, eax
test eax, eax
jne 0x1800c323a
movsd xmm0, qword [rsp + 0x248]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800c3458
movsd xmm0, qword [0x180133390]
movsd qword [rsp + 0x250], xmm0
movsd xmm0, qword [rsp + 0x250]
movsd qword [rsp + 0x4a0], xmm0
mov rax, qword [rsp + 0x4a0]
shr rax, 0x20
mov dword [rsp + 0x31c], eax
xor eax, eax
test eax, eax
jne 0x1800c32df
movsd xmm0, qword [rsp + 0x78]
movsd qword [rsp + 0x4a8], xmm0
mov rax, qword [rsp + 0x4a8]
shr rax, 0x20
mov dword [rsp + 0x320], eax
xor eax, eax
test eax, eax
jne 0x1800c330a
movsd xmm0, qword [rsp + 0x250]
movsd qword [rsp + 0x1a8], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x1a8]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x1a8], rax
mov eax, dword [rsp + 0x31c]
btr eax, 0x1f
mov ecx, dword [rsp + 0x320]
and ecx, 0x80000000
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x1a8]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x1a8], rax
movsd xmm0, qword [rsp + 0x1a8]
movsd qword [rsp + 0x250], xmm0
xor eax, eax
test eax, eax
jne 0x1800c3332
movsd xmm0, qword [0x180133390]
mulsd xmm0, qword [rsp + 0x250]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800c3458
mov eax, dword [rsp + 0x4c]
add eax, 0x36
mov dword [rsp + 0x4c], eax
movsd xmm0, qword [rsp + 0x78]
movsd qword [rsp + 0x1b0], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x1b0]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x1b0], rax
mov eax, dword [rsp + 0x8c]
and eax, 0x800fffff
mov ecx, dword [rsp + 0x4c]
shl ecx, 0x14
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x1b0]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x1b0], rax
movsd xmm0, qword [rsp + 0x1b0]
movsd qword [rsp + 0x78], xmm0
xor eax, eax
test eax, eax
jne 0x1800c33d4
movsd xmm0, qword [rsp + 0x78]
mulsd xmm0, qword [0x1801333a0]
movsd qword [rsp + 0x40], xmm0
movsd xmm0, qword [rsp + 0x40]
mulsd xmm0, qword [0x180133458]
movsd qword [rsp + 0xe0], xmm0
movsd xmm0, qword [rsp + 0xe0]
movsd qword [rsp + 0x2f8], xmm0
mov rax, qword [rsp + 0x2f8]
shr rax, 0x34
and rax, 0x7ff
mov dword [rsp + 0x110], eax
cmp dword [rsp + 0x110], 0x433
jge 0x1800c34bc
movsd xmm0, qword [rsp + 0xe0]
ucomisd xmm0, qword [0x180132d28]
jp 0x1800c34d3
jne 0x1800c34d3
movsd xmm0, qword [rsp + 0xe0]
movsd qword [rsp + 0x258], xmm0
jmp 0x1800c362a
mov rax, qword [rsp + 0x2f8]
shr rax, 0x3f
test rax, rax
je 0x1800c3511
movsd xmm0, qword [rsp + 0xe0]
subsd xmm0, qword [0x180133508]
addsd xmm0, qword [0x180133508]
subsd xmm0, qword [rsp + 0xe0]
movsd qword [rsp + 0x108], xmm0
jmp 0x1800c353c
movsd xmm0, qword [rsp + 0xe0]
addsd xmm0, qword [0x180133508]
subsd xmm0, qword [0x180133508]
subsd xmm0, qword [rsp + 0xe0]
movsd qword [rsp + 0x108], xmm0
cmp dword [rsp + 0x110], 0x3fe
jg 0x1800c35d7
xor eax, eax
test eax, eax
je 0x1800c3567
cvtsd2ss xmm0, qword [rsp + 0x108]
movss dword [rsp + 0x40c], xmm0
jmp 0x1800c3594
xor eax, eax
cmp eax, 1
je 0x1800c3582
movsd xmm0, qword [rsp + 0x108]
movsd qword [rsp + 0x688], xmm0
jmp 0x1800c3594
movsd xmm0, qword [rsp + 0x108]
movsd qword [rsp + 0x690], xmm0
xor eax, eax
test eax, eax
jne 0x1800c354d
mov rax, qword [rsp + 0x2f8]
shr rax, 0x3f
test rax, rax
je 0x1800c35b8
mov dword [rsp + 0x114], 0xffffffff
jmp 0x1800c35c3
mov dword [rsp + 0x114], 0
cvtsi2sd xmm0, dword [rsp + 0x114]
movsd qword [rsp + 0x258], xmm0
jmp 0x1800c362a
movsd xmm0, qword [rsp + 0x108]
comisd xmm0, xmmword [0x180132d28]
jbe 0x1800c360f
movsd xmm0, qword [rsp + 0xe0]
addsd xmm0, qword [rsp + 0x108]
subsd xmm0, qword [0x180132d80]
movsd qword [rsp + 0x258], xmm0
jmp 0x1800c362a
movsd xmm0, qword [rsp + 0xe0]
addsd xmm0, qword [rsp + 0x108]
movsd qword [rsp + 0x258], xmm0
movsd xmm0, qword [0x1801334b8]
mulsd xmm0, qword [rsp + 0x258]
movsd xmm1, qword [rsp + 0x40]
subsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x40], xmm0
cvttsd2si eax, qword [rsp + 0x40]
mov dword [rsp + 0xa0], eax
cvtsi2sd xmm0, dword [rsp + 0xa0]
movsd xmm1, qword [rsp + 0x40]
subsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x40], xmm0
mov dword [rsp + 0x64], 0
cmp dword [rsp + 0x38], 0
jle 0x1800c3714
mov eax, dword [rsp + 0x24]
dec eax
cdqe
mov ecx, 0x18
sub ecx, dword [rsp + 0x38]
mov eax, dword [rsp + rax*4 + 0x590]
sar eax, cl
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0xa0]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0xa0], eax
mov eax, 0x18
sub eax, dword [rsp + 0x38]
movzx ecx, al
mov eax, dword [rsp + 0x20]
shl eax, cl
mov ecx, dword [rsp + 0x24]
dec ecx
movsxd rcx, ecx
mov ecx, dword [rsp + rcx*4 + 0x590]
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x24]
dec ecx
movsxd rcx, ecx
mov dword [rsp + rcx*4 + 0x590], eax
mov eax, dword [rsp + 0x24]
dec eax
cdqe
mov ecx, 0x17
sub ecx, dword [rsp + 0x38]
mov eax, dword [rsp + rax*4 + 0x590]
sar eax, cl
mov dword [rsp + 0x64], eax
jmp 0x1800c374b
cmp dword [rsp + 0x38], 0
jne 0x1800c3733
mov eax, dword [rsp + 0x24]
dec eax
cdqe
mov eax, dword [rsp + rax*4 + 0x590]
sar eax, 0x17
mov dword [rsp + 0x64], eax
jmp 0x1800c374b
movsd xmm0, qword [rsp + 0x40]
comisd xmm0, xmmword [0x180133460]
jb 0x1800c374b
mov dword [rsp + 0x64], 2
cmp dword [rsp + 0x64], 0
jle 0x1800c3e46
mov eax, dword [rsp + 0xa0]
inc eax
mov dword [rsp + 0xa0], eax
mov dword [rsp + 0xf4], 0
mov dword [rsp + 0x20], 0
jmp 0x1800c3785
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x24]
cmp dword [rsp + 0x20], eax
jge 0x1800c37e9
movsxd rax, dword [rsp + 0x20]
mov eax, dword [rsp + rax*4 + 0x590]
mov dword [rsp + 0x28], eax
cmp dword [rsp + 0xf4], 0
jne 0x1800c37d2
cmp dword [rsp + 0x28], 0
je 0x1800c37d0
mov dword [rsp + 0xf4], 1
mov eax, 0x1000000
sub eax, dword [rsp + 0x28]
movsxd rcx, dword [rsp + 0x20]
mov dword [rsp + rcx*4 + 0x590], eax
jmp 0x1800c37e7
mov eax, 0xffffff
sub eax, dword [rsp + 0x28]
movsxd rcx, dword [rsp + 0x20]
mov dword [rsp + rcx*4 + 0x590], eax
jmp 0x1800c377b
cmp dword [rsp + 0x38], 0
jle 0x1800c385b
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x118], eax
cmp dword [rsp + 0x118], 1
je 0x1800c3811
cmp dword [rsp + 0x118], 2
je 0x1800c3837
jmp 0x1800c385b
mov eax, dword [rsp + 0x24]
dec eax
cdqe
mov eax, dword [rsp + rax*4 + 0x590]
and eax, 0x7fffff
mov ecx, dword [rsp + 0x24]
dec ecx
movsxd rcx, ecx
mov dword [rsp + rcx*4 + 0x590], eax
jmp 0x1800c385b
mov eax, dword [rsp + 0x24]
dec eax
cdqe
mov eax, dword [rsp + rax*4 + 0x590]
and eax, 0x3fffff
mov ecx, dword [rsp + 0x24]
dec ecx
movsxd rcx, ecx
mov dword [rsp + rcx*4 + 0x590], eax
cmp dword [rsp + 0x64], 2
jne 0x1800c3e46
movsd xmm0, qword [0x180132d80]
subsd xmm0, qword [rsp + 0x40]
movsd qword [rsp + 0x40], xmm0
cmp dword [rsp + 0xf4], 0
je 0x1800c3e46
movsd xmm0, qword [0x180132d80]
movsd qword [rsp + 0x80], xmm0
movsd xmm0, qword [rsp + 0x80]
movsd qword [rsp + 0x3b8], xmm0
mov rax, qword [rsp + 0x3b8]
shr rax, 0x20
mov dword [rsp + 0x90], eax
mov eax, dword [rsp + 0x3b8]
mov dword [rsp + 0x324], eax
xor eax, eax
test eax, eax
jne 0x1800c3899
mov eax, dword [rsp + 0x90]
and eax, 0x7ff00000
sar eax, 0x14
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jne 0x1800c39a5
mov eax, dword [rsp + 0x90]
btr eax, 0x1f
mov ecx, dword [rsp + 0x324]
or ecx, eax
mov eax, ecx
test eax, eax
jne 0x1800c3921
movsd xmm0, qword [rsp + 0x80]
movsd qword [rsp + 0xe8], xmm0
jmp 0x1800c3e31
movsd xmm0, qword [rsp + 0x80]
mulsd xmm0, qword [0x180133518]
movsd qword [rsp + 0x80], xmm0
movsd xmm0, qword [rsp + 0x80]
movsd qword [rsp + 0x4b0], xmm0
mov rax, qword [rsp + 0x4b0]
shr rax, 0x20
mov dword [rsp + 0x90], eax
xor eax, eax
test eax, eax
jne 0x1800c393b
mov eax, dword [rsp + 0x90]
and eax, 0x7ff00000
sar eax, 0x14
sub eax, 0x36
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x38], 0xffff3cb0
jge 0x1800c39a5
movsd xmm0, qword [0x180133390]
mulsd xmm0, qword [rsp + 0x80]
movsd qword [rsp + 0xe8], xmm0
jmp 0x1800c3e31
cmp dword [rsp + 0x50], 0x7ff
jne 0x1800c39cf
movsd xmm0, qword [rsp + 0x80]
addsd xmm0, qword [rsp + 0x80]
movsd qword [rsp + 0xe8], xmm0
jmp 0x1800c3e31
mov eax, dword [rsp + 0x38]
mov ecx, dword [rsp + 0x50]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0x7fe
jle 0x1800c3ae6
movsd xmm0, qword [0x180133548]
movsd qword [rsp + 0x260], xmm0
movsd xmm0, qword [rsp + 0x260]
movsd qword [rsp + 0x4b8], xmm0
mov rax, qword [rsp + 0x4b8]
shr rax, 0x20
mov dword [rsp + 0x328], eax
xor eax, eax
test eax, eax
jne 0x1800c39fe
movsd xmm0, qword [rsp + 0x80]
movsd qword [rsp + 0x4c0], xmm0
mov rax, qword [rsp + 0x4c0]
shr rax, 0x20
mov dword [rsp + 0x32c], eax
xor eax, eax
test eax, eax
jne 0x1800c3a29
movsd xmm0, qword [rsp + 0x260]
movsd qword [rsp + 0x1b8], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x1b8]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x1b8], rax
mov eax, dword [rsp + 0x328]
btr eax, 0x1f
mov ecx, dword [rsp + 0x32c]
and ecx, 0x80000000
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x1b8]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x1b8], rax
movsd xmm0, qword [rsp + 0x1b8]
movsd qword [rsp + 0x260], xmm0
xor eax, eax
test eax, eax
jne 0x1800c3a54
movsd xmm0, qword [rsp + 0x260]
movsd qword [rsp + 0xe8], xmm0
jmp 0x1800c3e31
cmp dword [rsp + 0x50], 0
jle 0x1800c3b7e
movsd xmm0, qword [rsp + 0x80]
movsd qword [rsp + 0x1c0], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x1c0]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x1c0], rax
mov eax, dword [rsp + 0x90]
and eax, 0x800fffff
mov ecx, dword [rsp + 0x50]
shl ecx, 0x14
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x1c0]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x1c0], rax
movsd xmm0, qword [rsp + 0x1c0]
movsd qword [rsp + 0x80], xmm0
xor eax, eax
test eax, eax
jne 0x1800c3af1
movsd xmm0, qword [rsp + 0x80]
movsd qword [rsp + 0xe8], xmm0
jmp 0x1800c3e31
cmp dword [rsp + 0x50], 0xffffffca
jg 0x1800c3d96
cmp dword [rsp + 0x38], 0xc350
jle 0x1800c3c95
movsd xmm0, qword [0x180133548]
movsd qword [rsp + 0x268], xmm0
movsd xmm0, qword [rsp + 0x268]
movsd qword [rsp + 0x4c8], xmm0
mov rax, qword [rsp + 0x4c8]
shr rax, 0x20
mov dword [rsp + 0x334], eax
xor eax, eax
test eax, eax
jne 0x1800c3ba8
movsd xmm0, qword [rsp + 0x80]
movsd qword [rsp + 0x4d0], xmm0
mov rax, qword [rsp + 0x4d0]
shr rax, 0x20
mov dword [rsp + 0x338], eax
xor eax, eax
test eax, eax
jne 0x1800c3bd3
movsd xmm0, qword [rsp + 0x268]
movsd qword [rsp + 0x1c8], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x1c8]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x1c8], rax
mov eax, dword [rsp + 0x334]
btr eax, 0x1f
mov ecx, dword [rsp + 0x338]
and ecx, 0x80000000
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x1c8]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x1c8], rax
movsd xmm0, qword [rsp + 0x1c8]
movsd qword [rsp + 0x268], xmm0
xor eax, eax
test eax, eax
jne 0x1800c3bfe
movsd xmm0, qword [rsp + 0x268]
movsd qword [rsp + 0xe8], xmm0
jmp 0x1800c3e31
movsd xmm0, qword [0x180133390]
movsd qword [rsp + 0x270], xmm0
movsd xmm0, qword [rsp + 0x270]
movsd qword [rsp + 0x4d8], xmm0
mov rax, qword [rsp + 0x4d8]
shr rax, 0x20
mov dword [rsp + 0x33c], eax
xor eax, eax
test eax, eax
jne 0x1800c3ca6
movsd xmm0, qword [rsp + 0x80]
movsd qword [rsp + 0x4e0], xmm0
mov rax, qword [rsp + 0x4e0]
shr rax, 0x20
mov dword [rsp + 0x340], eax
xor eax, eax
test eax, eax
jne 0x1800c3cd1
movsd xmm0, qword [rsp + 0x270]
movsd qword [rsp + 0x1d0], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x1d0]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x1d0], rax
mov eax, dword [rsp + 0x33c]
btr eax, 0x1f
mov ecx, dword [rsp + 0x340]
and ecx, 0x80000000
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x1d0]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x1d0], rax
movsd xmm0, qword [rsp + 0x1d0]
movsd qword [rsp + 0x270], xmm0
xor eax, eax
test eax, eax
jne 0x1800c3cfc
movsd xmm0, qword [0x180133390]
mulsd xmm0, qword [rsp + 0x270]
movsd qword [rsp + 0xe8], xmm0
jmp 0x1800c3e31
mov eax, dword [rsp + 0x50]
add eax, 0x36
mov dword [rsp + 0x50], eax
movsd xmm0, qword [rsp + 0x80]
movsd qword [rsp + 0x1d8], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x1d8]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x1d8], rax
mov eax, dword [rsp + 0x90]
and eax, 0x800fffff
mov ecx, dword [rsp + 0x50]
shl ecx, 0x14
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x1d8]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x1d8], rax
movsd xmm0, qword [rsp + 0x1d8]
movsd qword [rsp + 0x80], xmm0
xor eax, eax
test eax, eax
jne 0x1800c3da1
movsd xmm0, qword [rsp + 0x80]
mulsd xmm0, qword [0x1801333a0]
movsd qword [rsp + 0xe8], xmm0
movsd xmm0, qword [rsp + 0x40]
subsd xmm0, qword [rsp + 0xe8]
movsd qword [rsp + 0x40], xmm0
movsd xmm0, qword [rsp + 0x40]
ucomisd xmm0, qword [0x180132d28]
jp 0x1800c3fde
jne 0x1800c3fde
mov dword [rsp + 0x28], 0
mov eax, dword [rsp + 0x24]
dec eax
mov dword [rsp + 0x20], eax
jmp 0x1800c3e7e
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x94]
cmp dword [rsp + 0x20], eax
jl 0x1800c3ea5
movsxd rax, dword [rsp + 0x20]
mov eax, dword [rsp + rax*4 + 0x590]
mov ecx, dword [rsp + 0x28]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x28], eax
jmp 0x1800c3e74
cmp dword [rsp + 0x28], 0
jne 0x1800c3fde
mov dword [rsp + 0x5c], 1
jmp 0x1800c3ec4
mov eax, dword [rsp + 0x5c]
inc eax
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x5c]
mov ecx, dword [rsp + 0x94]
sub ecx, eax
mov eax, ecx
cdqe
cmp dword [rsp + rax*4 + 0x590], 0
jne 0x1800c3ee1
jmp 0x1800c3eba
mov eax, dword [rsp + 0x24]
inc eax
mov dword [rsp + 0x20], eax
jmp 0x1800c3ef7
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x5c]
mov ecx, dword [rsp + 0x24]
add ecx, eax
mov eax, ecx
cmp dword [rsp + 0x20], eax
jg 0x1800c3fc9
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0xb0]
add ecx, eax
mov eax, ecx
cdqe
lea rcx, [0x180132f10]
cvtsi2sd xmm0, dword [rcx + rax*4]
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x88]
add ecx, eax
mov eax, ecx
cdqe
movsd qword [rsp + rax*8 + 0x740], xmm0
mov dword [rsp + 0x28], 0
xorps xmm0, xmm0
movsd qword [rsp + 0x30], xmm0
jmp 0x1800c3f61
mov eax, dword [rsp + 0x28]
inc eax
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x88]
cmp dword [rsp + 0x28], eax
jg 0x1800c3fb0
movsxd rax, dword [rsp + 0x28]
mov ecx, dword [rsp + 0x20]
mov edx, dword [rsp + 0x88]
add edx, ecx
mov ecx, edx
sub ecx, dword [rsp + 0x28]
movsxd rcx, ecx
movsd xmm0, qword [rsp + rax*8 + 0x3c0]
mulsd xmm0, qword [rsp + rcx*8 + 0x740]
movsd xmm1, qword [rsp + 0x30]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x30], xmm0
jmp 0x1800c3f57
movsxd rax, dword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + rax*8 + 0x6a0], xmm0
jmp 0x1800c3eed
mov eax, dword [rsp + 0x5c]
mov ecx, dword [rsp + 0x24]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x24], eax
jmp 0x1800c2e55
movsd xmm0, qword [rsp + 0x40]
ucomisd xmm0, qword [0x180132d28]
jp 0x1800c4030
jne 0x1800c4030
mov eax, dword [rsp + 0x24]
dec eax
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x38]
sub eax, 0x18
mov dword [rsp + 0x38], eax
movsxd rax, dword [rsp + 0x24]
cmp dword [rsp + rax*4 + 0x590], 0
jne 0x1800c402b
mov eax, dword [rsp + 0x24]
dec eax
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x38]
sub eax, 0x18
mov dword [rsp + 0x38], eax
jmp 0x1800c4005
jmp 0x1800c4631
mov eax, dword [rsp + 0x38]
neg eax
mov dword [rsp + 0xf8], eax
movsd xmm0, qword [rsp + 0x40]
movsd qword [rsp + 0x68], xmm0
movsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x3c8], xmm0
mov rax, qword [rsp + 0x3c8]
shr rax, 0x20
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x3c8]
mov dword [rsp + 0x344], eax
xor eax, eax
test eax, eax
jne 0x1800c4049
mov eax, dword [rsp + 0x98]
and eax, 0x7ff00000
sar eax, 0x14
mov dword [rsp + 0x54], eax
cmp dword [rsp + 0x54], 0
jne 0x1800c4140
mov eax, dword [rsp + 0x98]
btr eax, 0x1f
mov ecx, dword [rsp + 0x344]
or ecx, eax
mov eax, ecx
test eax, eax
jne 0x1800c40c8
movsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800c459f
movsd xmm0, qword [rsp + 0x68]
mulsd xmm0, qword [0x180133518]
movsd qword [rsp + 0x68], xmm0
movsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x4e8], xmm0
mov rax, qword [rsp + 0x4e8]
shr rax, 0x20
mov dword [rsp + 0x98], eax
xor eax, eax
test eax, eax
jne 0x1800c40dc
mov eax, dword [rsp + 0x98]
and eax, 0x7ff00000
sar eax, 0x14
sub eax, 0x36
mov dword [rsp + 0x54], eax
cmp dword [rsp + 0xf8], 0xffff3cb0
jge 0x1800c4140
movsd xmm0, qword [0x180133390]
mulsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800c459f
cmp dword [rsp + 0x54], 0x7ff
jne 0x1800c4161
movsd xmm0, qword [rsp + 0x68]
addsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800c459f
mov eax, dword [rsp + 0xf8]
mov ecx, dword [rsp + 0x54]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x54], eax
cmp dword [rsp + 0x54], 0x7fe
jle 0x1800c4275
movsd xmm0, qword [0x180133548]
movsd qword [rsp + 0x278], xmm0
movsd xmm0, qword [rsp + 0x278]
movsd qword [rsp + 0x4f0], xmm0
mov rax, qword [rsp + 0x4f0]
shr rax, 0x20
mov dword [rsp + 0x2a8], eax
xor eax, eax
test eax, eax
jne 0x1800c4193
movsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x4f8], xmm0
mov rax, qword [rsp + 0x4f8]
shr rax, 0x20
mov dword [rsp + 0x2ac], eax
xor eax, eax
test eax, eax
jne 0x1800c41be
movsd xmm0, qword [rsp + 0x278]
movsd qword [rsp + 0x1e0], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x1e0]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x1e0], rax
mov eax, dword [rsp + 0x2a8]
btr eax, 0x1f
mov ecx, dword [rsp + 0x2ac]
and ecx, 0x80000000
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x1e0]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x1e0], rax
movsd xmm0, qword [rsp + 0x1e0]
movsd qword [rsp + 0x278], xmm0
xor eax, eax
test eax, eax
jne 0x1800c41e6
movsd xmm0, qword [rsp + 0x278]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800c459f
cmp dword [rsp + 0x54], 0
jle 0x1800c4301
movsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x1e8], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x1e8]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x1e8], rax
mov eax, dword [rsp + 0x98]
and eax, 0x800fffff
mov ecx, dword [rsp + 0x54]
shl ecx, 0x14
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x1e8]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x1e8], rax
movsd xmm0, qword [rsp + 0x1e8]
movsd qword [rsp + 0x68], xmm0
xor eax, eax
test eax, eax
jne 0x1800c4280
movsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800c459f
cmp dword [rsp + 0x54], 0xffffffca
jg 0x1800c4510
cmp dword [rsp + 0xf8], 0xc350
jle 0x1800c4415
movsd xmm0, qword [0x180133548]
movsd qword [rsp + 0x218], xmm0
movsd xmm0, qword [rsp + 0x218]
movsd qword [rsp + 0x500], xmm0
mov rax, qword [rsp + 0x500]
shr rax, 0x20
mov dword [rsp + 0x2b0], eax
xor eax, eax
test eax, eax
jne 0x1800c432e
movsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x508], xmm0
mov rax, qword [rsp + 0x508]
shr rax, 0x20
mov dword [rsp + 0x2b4], eax
xor eax, eax
test eax, eax
jne 0x1800c4359
movsd xmm0, qword [rsp + 0x218]
movsd qword [rsp + 0x1f0], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x1f0]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x1f0], rax
mov eax, dword [rsp + 0x2b0]
btr eax, 0x1f
mov ecx, dword [rsp + 0x2b4]
and ecx, 0x80000000
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x1f0]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x1f0], rax
movsd xmm0, qword [rsp + 0x1f0]
movsd qword [rsp + 0x218], xmm0
xor eax, eax
test eax, eax
jne 0x1800c4381
movsd xmm0, qword [rsp + 0x218]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800c459f
movsd xmm0, qword [0x180133390]
movsd qword [rsp + 0x280], xmm0
movsd xmm0, qword [rsp + 0x280]
movsd qword [rsp + 0x510], xmm0
mov rax, qword [rsp + 0x510]
shr rax, 0x20
mov dword [rsp + 0x2b8], eax
xor eax, eax
test eax, eax
jne 0x1800c4426
movsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x518], xmm0
mov rax, qword [rsp + 0x518]
shr rax, 0x20
mov dword [rsp + 0x2bc], eax
xor eax, eax
test eax, eax
jne 0x1800c4451
movsd xmm0, qword [rsp + 0x280]
movsd qword [rsp + 0x1f8], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x1f8]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x1f8], rax
mov eax, dword [rsp + 0x2b8]
btr eax, 0x1f
mov ecx, dword [rsp + 0x2bc]
and ecx, 0x80000000
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x1f8]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x1f8], rax
movsd xmm0, qword [rsp + 0x1f8]
movsd qword [rsp + 0x280], xmm0
xor eax, eax
test eax, eax
jne 0x1800c4479
movsd xmm0, qword [0x180133390]
mulsd xmm0, qword [rsp + 0x280]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800c459f
mov eax, dword [rsp + 0x54]
add eax, 0x36
mov dword [rsp + 0x54], eax
movsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x200], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x200]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x200], rax
mov eax, dword [rsp + 0x98]
and eax, 0x800fffff
mov ecx, dword [rsp + 0x54]
shl ecx, 0x14
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x200]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x200], rax
movsd xmm0, qword [rsp + 0x200]
movsd qword [rsp + 0x68], xmm0
xor eax, eax
test eax, eax
jne 0x1800c451b
movsd xmm0, qword [rsp + 0x68]
mulsd xmm0, qword [0x1801333a0]
movsd qword [rsp + 0x40], xmm0
movsd xmm0, qword [rsp + 0x40]
comisd xmm0, xmmword [0x1801334d8]
jb 0x1800c461f
movsd xmm0, qword [0x1801333d8]
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
cvtsi2sd xmm0, eax
movsd qword [rsp + 0x30], xmm0
movsd xmm0, qword [0x1801334d8]
mulsd xmm0, qword [rsp + 0x30]
movsd xmm1, qword [rsp + 0x40]
subsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
movsxd rcx, dword [rsp + 0x24]
mov dword [rsp + rcx*4 + 0x590], eax
mov eax, dword [rsp + 0x24]
inc eax
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x38]
add eax, 0x18
mov dword [rsp + 0x38], eax
cvttsd2si eax, qword [rsp + 0x30]
movsxd rcx, dword [rsp + 0x24]
mov dword [rsp + rcx*4 + 0x590], eax
jmp 0x1800c4631
cvttsd2si eax, qword [rsp + 0x40]
movsxd rcx, dword [rsp + 0x24]
mov dword [rsp + rcx*4 + 0x590], eax
movsd xmm0, qword [0x180132d80]
movsd qword [rsp + 0x70], xmm0
movsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x3d0], xmm0
mov rax, qword [rsp + 0x3d0]
shr rax, 0x20
mov dword [rsp + 0x9c], eax
mov eax, dword [rsp + 0x3d0]
mov dword [rsp + 0x2c0], eax
xor eax, eax
test eax, eax
jne 0x1800c463f
mov eax, dword [rsp + 0x9c]
and eax, 0x7ff00000
sar eax, 0x14
mov dword [rsp + 0x58], eax
cmp dword [rsp + 0x58], 0
jne 0x1800c4733
mov eax, dword [rsp + 0x9c]
btr eax, 0x1f
mov ecx, dword [rsp + 0x2c0]
or ecx, eax
mov eax, ecx
test eax, eax
jne 0x1800c46be
movsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800c4b8c
movsd xmm0, qword [rsp + 0x70]
mulsd xmm0, qword [0x180133518]
movsd qword [rsp + 0x70], xmm0
movsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x520], xmm0
mov rax, qword [rsp + 0x520]
shr rax, 0x20
mov dword [rsp + 0x9c], eax
xor eax, eax
test eax, eax
jne 0x1800c46d2
mov eax, dword [rsp + 0x9c]
and eax, 0x7ff00000
sar eax, 0x14
sub eax, 0x36
mov dword [rsp + 0x58], eax
cmp dword [rsp + 0x38], 0xffff3cb0
jge 0x1800c4733
movsd xmm0, qword [0x180133390]
mulsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800c4b8c
cmp dword [rsp + 0x58], 0x7ff
jne 0x1800c4754
movsd xmm0, qword [rsp + 0x70]
addsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800c4b8c
mov eax, dword [rsp + 0x38]
mov ecx, dword [rsp + 0x58]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x58], eax
cmp dword [rsp + 0x58], 0x7fe
jle 0x1800c4865
movsd xmm0, qword [0x180133548]
movsd qword [rsp + 0x288], xmm0
movsd xmm0, qword [rsp + 0x288]
movsd qword [rsp + 0x528], xmm0
mov rax, qword [rsp + 0x528]
shr rax, 0x20
mov dword [rsp + 0x2c4], eax
xor eax, eax
test eax, eax
jne 0x1800c4783
movsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x530], xmm0
mov rax, qword [rsp + 0x530]
shr rax, 0x20
mov dword [rsp + 0x2c8], eax
xor eax, eax
test eax, eax
jne 0x1800c47ae
movsd xmm0, qword [rsp + 0x288]
movsd qword [rsp + 0x208], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x208]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x208], rax
mov eax, dword [rsp + 0x2c4]
btr eax, 0x1f
mov ecx, dword [rsp + 0x2c8]
and ecx, 0x80000000
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x208]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x208], rax
movsd xmm0, qword [rsp + 0x208]
movsd qword [rsp + 0x288], xmm0
xor eax, eax
test eax, eax
jne 0x1800c47d6
movsd xmm0, qword [rsp + 0x288]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800c4b8c
cmp dword [rsp + 0x58], 0
jle 0x1800c48f1
movsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x210], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x210]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x210], rax
mov eax, dword [rsp + 0x9c]
and eax, 0x800fffff
mov ecx, dword [rsp + 0x58]
shl ecx, 0x14
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x210]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x210], rax
movsd xmm0, qword [rsp + 0x210]
movsd qword [rsp + 0x70], xmm0
xor eax, eax
test eax, eax
jne 0x1800c4870
movsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800c4b8c
cmp dword [rsp + 0x58], 0xffffffca
jg 0x1800c4afd
cmp dword [rsp + 0x38], 0xc350
jle 0x1800c4a02
movsd xmm0, qword [0x180133548]
movsd qword [rsp + 0x290], xmm0
movsd xmm0, qword [rsp + 0x290]
movsd qword [rsp + 0x538], xmm0
mov rax, qword [rsp + 0x538]
shr rax, 0x20
mov dword [rsp + 0x2cc], eax
xor eax, eax
test eax, eax
jne 0x1800c491b
movsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x540], xmm0
mov rax, qword [rsp + 0x540]
shr rax, 0x20
mov dword [rsp + 0x2d0], eax
xor eax, eax
test eax, eax
jne 0x1800c4946
movsd xmm0, qword [rsp + 0x290]
movsd qword [rsp + 0x120], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x120]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x120], rax
mov eax, dword [rsp + 0x2cc]
btr eax, 0x1f
mov ecx, dword [rsp + 0x2d0]
and ecx, 0x80000000
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x120]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x120], rax
movsd xmm0, qword [rsp + 0x120]
movsd qword [rsp + 0x290], xmm0
xor eax, eax
test eax, eax
jne 0x1800c496e
movsd xmm0, qword [rsp + 0x290]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800c4b8c
movsd xmm0, qword [0x180133390]
movsd qword [rsp + 0x298], xmm0
movsd xmm0, qword [rsp + 0x298]
movsd qword [rsp + 0x548], xmm0
mov rax, qword [rsp + 0x548]
shr rax, 0x20
mov dword [rsp + 0x330], eax
xor eax, eax
test eax, eax
jne 0x1800c4a13
movsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x550], xmm0
mov rax, qword [rsp + 0x550]
shr rax, 0x20
mov dword [rsp + 0x2d8], eax
xor eax, eax
test eax, eax
jne 0x1800c4a3e
movsd xmm0, qword [rsp + 0x298]
movsd qword [rsp + 0x128], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x128]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x128], rax
mov eax, dword [rsp + 0x330]
btr eax, 0x1f
mov ecx, dword [rsp + 0x2d8]
and ecx, 0x80000000
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x128]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x128], rax
movsd xmm0, qword [rsp + 0x128]
movsd qword [rsp + 0x298], xmm0
xor eax, eax
test eax, eax
jne 0x1800c4a66
movsd xmm0, qword [0x180133390]
mulsd xmm0, qword [rsp + 0x298]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800c4b8c
mov eax, dword [rsp + 0x58]
add eax, 0x36
mov dword [rsp + 0x58], eax
movsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x130], xmm0
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x130]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x130], rax
mov eax, dword [rsp + 0x9c]
and eax, 0x800fffff
mov ecx, dword [rsp + 0x58]
shl ecx, 0x14
or eax, ecx
mov eax, eax
shl rax, 0x20
mov rcx, qword [rsp + 0x130]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x130], rax
movsd xmm0, qword [rsp + 0x130]
movsd qword [rsp + 0x70], xmm0
xor eax, eax
test eax, eax
jne 0x1800c4b08
movsd xmm0, qword [rsp + 0x70]
mulsd xmm0, qword [0x1801333a0]
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x1800c4ba0
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 0
jl 0x1800c4be6
movsxd rax, dword [rsp + 0x20]
cvtsi2sd xmm0, dword [rsp + rax*4 + 0x590]
movsd xmm1, qword [rsp + 0x30]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsxd rax, dword [rsp + 0x20]
movsd qword [rsp + rax*8 + 0x6a0], xmm0
movsd xmm0, qword [rsp + 0x30]
mulsd xmm0, qword [0x1801333d8]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800c4b96
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x1800c4bfa
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 0
jl 0x1800c4ca4
xorps xmm0, xmm0
movsd qword [rsp + 0x30], xmm0
mov dword [rsp + 0x5c], 0
jmp 0x1800c4c22
mov eax, dword [rsp + 0x5c]
inc eax
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x2dc]
cmp dword [rsp + 0x5c], eax
jg 0x1800c4c82
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x24]
sub ecx, eax
mov eax, ecx
cmp dword [rsp + 0x5c], eax
jg 0x1800c4c82
movsxd rax, dword [rsp + 0x5c]
lea rcx, [0x180133200]
mov edx, dword [rsp + 0x5c]
mov r8d, dword [rsp + 0x20]
add r8d, edx
mov edx, r8d
movsxd rdx, edx
movsd xmm0, qword [rcx + rax*8]
mulsd xmm0, qword [rsp + rdx*8 + 0x6a0]
movsd xmm1, qword [rsp + 0x30]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x30], xmm0
jmp 0x1800c4c18
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x24]
sub ecx, eax
mov eax, ecx
cdqe
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + rax*8 + 0x5e0], xmm0
jmp 0x1800c4bf0
mov dword [rsp + 0xc0], 0
cmp dword [rsp + 0xc0], 0
je 0x1800c4ce8
cmp dword [rsp + 0xc0], 1
je 0x1800c4d76
cmp dword [rsp + 0xc0], 2
je 0x1800c4d76
cmp dword [rsp + 0xc0], 3
je 0x1800c4eb1
jmp 0x1800c50fb
xorps xmm0, xmm0
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x1800c4d05
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 0
jl 0x1800c4d28
movsxd rax, dword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
addsd xmm0, qword [rsp + rax*8 + 0x5e0]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800c4cfb
cmp dword [rsp + 0x64], 0
jne 0x1800c4d40
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x3d8], xmm0
jmp 0x1800c4d56
movsd xmm0, qword [rsp + 0x30]
xorps xmm0, xmmword [0x180132de0]
movsd qword [rsp + 0x3d8], xmm0
mov eax, 8
imul rax, rax, 0
movsd xmm0, qword [rsp + 0x3d8]
movsd qword [rsp + rax + 0xb8], xmm0
jmp 0x1800c50fb
xorps xmm0, xmm0
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x1800c4d93
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 0
jl 0x1800c4db6
movsxd rax, dword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
addsd xmm0, qword [rsp + rax*8 + 0x5e0]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800c4d89
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x30], xmm0
cmp dword [rsp + 0x64], 0
jne 0x1800c4dda
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x3e0], xmm0
jmp 0x1800c4df0
movsd xmm0, qword [rsp + 0x30]
xorps xmm0, xmmword [0x180132de0]
movsd qword [rsp + 0x3e0], xmm0
mov eax, 8
imul rax, rax, 0
movsd xmm0, qword [rsp + 0x3e0]
movsd qword [rsp + rax + 0xb8], xmm0
mov eax, 8
imul rax, rax, 0
movsd xmm0, qword [rsp + rax + 0x5e0]
subsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x30], xmm0
mov dword [rsp + 0x20], 1
jmp 0x1800c4e3d
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x24]
cmp dword [rsp + 0x20], eax
jg 0x1800c4e63
movsxd rax, dword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
addsd xmm0, qword [rsp + rax*8 + 0x5e0]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800c4e33
cmp dword [rsp + 0x64], 0
jne 0x1800c4e7b
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x3e8], xmm0
jmp 0x1800c4e91
movsd xmm0, qword [rsp + 0x30]
xorps xmm0, xmmword [0x180132de0]
movsd qword [rsp + 0x3e8], xmm0
mov eax, 8
imul rax, rax, 1
movsd xmm0, qword [rsp + 0x3e8]
movsd qword [rsp + rax + 0xb8], xmm0
jmp 0x1800c50fb
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x1800c4ec5
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 0
jle 0x1800c4f47
mov eax, dword [rsp + 0x20]
dec eax
cdqe
movsxd rcx, dword [rsp + 0x20]
movsd xmm0, qword [rsp + rax*8 + 0x5e0]
addsd xmm0, qword [rsp + rcx*8 + 0x5e0]
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rsp + 0x20]
dec eax
cdqe
movsd xmm0, qword [rsp + rax*8 + 0x5e0]
subsd xmm0, qword [rsp + 0x30]
movsxd rax, dword [rsp + 0x20]
movsd xmm1, qword [rsp + rax*8 + 0x5e0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsxd rax, dword [rsp + 0x20]
movsd qword [rsp + rax*8 + 0x5e0], xmm0
mov eax, dword [rsp + 0x20]
dec eax
cdqe
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + rax*8 + 0x5e0], xmm0
jmp 0x1800c4ebb
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x1800c4f5b
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 1
jle 0x1800c4fdd
mov eax, dword [rsp + 0x20]
dec eax
cdqe
movsxd rcx, dword [rsp + 0x20]
movsd xmm0, qword [rsp + rax*8 + 0x5e0]
addsd xmm0, qword [rsp + rcx*8 + 0x5e0]
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rsp + 0x20]
dec eax
cdqe
movsd xmm0, qword [rsp + rax*8 + 0x5e0]
subsd xmm0, qword [rsp + 0x30]
movsxd rax, dword [rsp + 0x20]
movsd xmm1, qword [rsp + rax*8 + 0x5e0]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsxd rax, dword [rsp + 0x20]
movsd qword [rsp + rax*8 + 0x5e0], xmm0
mov eax, dword [rsp + 0x20]
dec eax
cdqe
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + rax*8 + 0x5e0], xmm0
jmp 0x1800c4f51
xorps xmm0, xmm0
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x1800c4ffa
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 2
jl 0x1800c501d
movsxd rax, dword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
addsd xmm0, qword [rsp + rax*8 + 0x5e0]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800c4ff0
cmp dword [rsp + 0x64], 0
jne 0x1800c5086
mov eax, 8
imul rax, rax, 0
mov ecx, 8
imul rcx, rcx, 0
movsd xmm0, qword [rsp + rax + 0x5e0]
movsd qword [rsp + rcx + 0xb8], xmm0
mov eax, 8
imul rax, rax, 1
mov ecx, 8
imul rcx, rcx, 1
movsd xmm0, qword [rsp + rax + 0x5e0]
movsd qword [rsp + rcx + 0xb8], xmm0
mov eax, 8
imul rax, rax, 2
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + rax + 0xb8], xmm0
jmp 0x1800c50fb
mov eax, 8
imul rax, rax, 0
movsd xmm0, qword [rsp + rax + 0x5e0]
xorps xmm0, xmmword [0x180132de0]
mov eax, 8
imul rax, rax, 0
movsd qword [rsp + rax + 0xb8], xmm0
mov eax, 8
imul rax, rax, 1
movsd xmm0, qword [rsp + rax + 0x5e0]
xorps xmm0, xmmword [0x180132de0]
mov eax, 8
imul rax, rax, 1
movsd qword [rsp + rax + 0xb8], xmm0
movsd xmm0, qword [rsp + 0x30]
xorps xmm0, xmmword [0x180132de0]
mov eax, 8
imul rax, rax, 2
movsd qword [rsp + rax + 0xb8], xmm0
mov eax, dword [rsp + 0xa0]
and eax, 7
mov dword [rsp + 0xc4], eax
cmp dword [rsp + 0x2e0], 0
je 0x1800c514a
mov eax, 8
imul rax, rax, 0
movsd xmm0, qword [rsp + rax + 0xb8]
xorps xmm0, xmmword [0x180132de0]
movsd qword [rsp + 0xa8], xmm0
mov eax, dword [rsp + 0xc4]
neg eax
mov dword [rsp + 0xc8], eax
jmp 0x1800c5173
mov eax, 8
imul rax, rax, 0
movsd xmm0, qword [rsp + rax + 0xb8]
movsd qword [rsp + 0xa8], xmm0
mov eax, dword [rsp + 0xc4]
mov dword [rsp + 0xc8], eax
mov eax, dword [rsp + 0xc8]
mov dword [rsp + 0x2e4], eax
mov eax, dword [rsp + 0x2e4]
and eax, 3
mov dword [rsp + 0x100], eax
cmp dword [rsp + 0x100], 0
je 0x1800c51bd
cmp dword [rsp + 0x100], 1
je 0x1800c5285
cmp dword [rsp + 0x100], 2
je 0x1800c5389
jmp 0x1800c5458
movsd xmm0, qword [rsp + 0xa8]
mulsd xmm0, qword [rsp + 0xa8]
movsd qword [rsp + 0x138], xmm0
movsd xmm0, qword [rsp + 0x138]
mulsd xmm0, qword [rsp + 0x138]
movsd qword [rsp + 0x3f0], xmm0
movsd xmm0, qword [rsp + 0x138]
mulsd xmm0, qword [0x180133410]
movsd xmm1, qword [0x180133570]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x558], xmm0
movsd xmm0, qword [rsp + 0x3f0]
mulsd xmm0, qword [rsp + 0x138]
mulsd xmm0, qword [rsp + 0x558]
movsd xmm1, qword [rsp + 0x3f0]
mulsd xmm1, qword [0x180133450]
movsd xmm2, qword [rsp + 0x138]
mulsd xmm2, qword [0x180133588]
movsd xmm3, qword [0x180132d80]
addsd xmm3, xmm2
movaps xmm2, xmm3
addsd xmm2, xmm1
movaps xmm1, xmm2
addsd xmm1, xmm0
movaps xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [rsp + 0x48], xmm0
jmp 0x1800c553e
movsd xmm0, qword [rsp + 0xa8]
xorps xmm0, xmmword [0x180132de0]
movsd qword [rsp + 0x2a0], xmm0
movsd xmm0, qword [rsp + 0x2a0]
mulsd xmm0, qword [rsp + 0x2a0]
movsd qword [rsp + 0x140], xmm0
movsd xmm0, qword [rsp + 0x140]
mulsd xmm0, qword [rsp + 0x140]
movsd qword [rsp + 0x560], xmm0
movsd xmm0, qword [rsp + 0x140]
mulsd xmm0, qword [0x1801333f8]
movsd xmm1, qword [0x180133560]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x568], xmm0
movsd xmm0, qword [rsp + 0x140]
mulsd xmm0, qword [rsp + 0x2a0]
movsd qword [rsp + 0x3f8], xmm0
movsd xmm0, qword [rsp + 0x3f8]
mulsd xmm0, qword [rsp + 0x560]
mulsd xmm0, qword [rsp + 0x568]
movsd xmm1, qword [rsp + 0x140]
mulsd xmm1, qword [0x180133448]
movsd xmm2, qword [0x180133580]
addsd xmm2, xmm1
movaps xmm1, xmm2
movsd xmm2, qword [rsp + 0x3f8]
mulsd xmm2, xmm1
movaps xmm1, xmm2
movsd xmm2, qword [rsp + 0x2a0]
addsd xmm2, xmm1
movaps xmm1, xmm2
addsd xmm1, xmm0
movaps xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [rsp + 0x48], xmm0
jmp 0x1800c553e
movsd xmm0, qword [rsp + 0xa8]
mulsd xmm0, qword [rsp + 0xa8]
movsd qword [rsp + 0x148], xmm0
movsd xmm0, qword [rsp + 0x148]
mulsd xmm0, qword [rsp + 0x148]
movsd qword [rsp + 0x400], xmm0
movsd xmm0, qword [rsp + 0x148]
mulsd xmm0, qword [0x180133410]
movsd xmm1, qword [0x180133570]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x570], xmm0
movsd xmm0, qword [rsp + 0x400]
mulsd xmm0, qword [rsp + 0x148]
mulsd xmm0, qword [rsp + 0x570]
movsd xmm1, qword [rsp + 0x400]
mulsd xmm1, qword [0x180133450]
movsd xmm2, qword [rsp + 0x148]
mulsd xmm2, qword [0x180133588]
movsd xmm3, qword [0x180132d80]
addsd xmm3, xmm2
movaps xmm2, xmm3
addsd xmm2, xmm1
movaps xmm1, xmm2
addsd xmm1, xmm0
movaps xmm0, xmm1
cvtsd2ss xmm0, xmm0
xorps xmm0, xmmword [0x180132df0]
movss dword [rsp + 0x48], xmm0
jmp 0x1800c553e
movsd xmm0, qword [rsp + 0xa8]
mulsd xmm0, qword [rsp + 0xa8]
movsd qword [rsp + 0x150], xmm0
movsd xmm0, qword [rsp + 0x150]
mulsd xmm0, qword [rsp + 0x150]
movsd qword [rsp + 0x578], xmm0
movsd xmm0, qword [rsp + 0x150]
mulsd xmm0, qword [0x1801333f8]
movsd xmm1, qword [0x180133560]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x580], xmm0
movsd xmm0, qword [rsp + 0x150]
mulsd xmm0, qword [rsp + 0xa8]
movsd qword [rsp + 0x358], xmm0
movsd xmm0, qword [rsp + 0x358]
mulsd xmm0, qword [rsp + 0x578]
mulsd xmm0, qword [rsp + 0x580]
movsd xmm1, qword [rsp + 0x150]
mulsd xmm1, qword [0x180133448]
movsd xmm2, qword [0x180133580]
addsd xmm2, xmm1
movaps xmm1, xmm2
movsd xmm2, qword [rsp + 0x358]
mulsd xmm2, xmm1
movaps xmm1, xmm2
movsd xmm2, qword [rsp + 0xa8]
addsd xmm2, xmm1
movaps xmm1, xmm2
addsd xmm1, xmm0
movaps xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [rsp + 0x48], xmm0
movss xmm0, dword [rsp + 0x48]
mulss xmm0, dword [rsp + 0x800]
mov rax, qword [rsp + 0x7f8]
movss xmm1, dword [rax]
addss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x2e8], xmm0
movss xmm0, dword [rsp + 0x2e8]
movss dword [rsp + 0x360], xmm0
movss xmm0, dword [rsp + 0x2ec]
movss dword [rsp + 0x364], xmm0
lea rdx, [rsp + 0x360]
mov rcx, qword [rsp + 0x588]
call fcn.18009d600
jmp 0x1800c222e
add rsp, 0x7e8
ret