Function at 0x1800a2080
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 0x1800a20d8
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.18007e250
jmp 0x1800a5497
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.18007e9b0
mov dword [rsp + 0xd8], 0
jmp 0x1800a212e
mov eax, dword [rsp + 0xd8]
inc eax
mov dword [rsp + 0xd8], eax
mov eax, dword [rsp + 0x818]
cmp dword [rsp + 0xd8], eax
jg 0x1800a5497
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.1801383a0
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 0x1800a21df
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 0x1800a237f
cmp dword [rsp + 0x60], 0x39800000
jae 0x1800a22a8
xor eax, eax
cmp eax, 1
je 0x1800a2251
movss xmm0, dword [rsp + 0x3c]
addss xmm0, dword [0x1801814ec]
movss dword [rsp + 0x408], xmm0
jmp 0x1800a228f
xor eax, eax
test eax, eax
je 0x1800a2274
movss xmm0, dword [rsp + 0x3c]
addss xmm0, dword [0x1801814ec]
cvtss2sd xmm0, xmm0
movsd qword [rsp + 0x698], xmm0
jmp 0x1800a228f
movss xmm0, dword [rsp + 0x3c]
addss xmm0, dword [0x1801814ec]
cvtss2sd xmm0, xmm0
movsd qword [rsp + 0x680], xmm0
xor eax, eax
test eax, eax
jne 0x1800a2231
movss xmm0, dword [0x18017ee58]
movss dword [rsp + 0x48], xmm0
jmp 0x1800a542e
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 [0x1801813c8]
movsd xmm1, qword [0x180181528]
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 [0x180181410]
movsd xmm2, qword [rsp + 0x158]
mulsd xmm2, qword [0x180181540]
movsd xmm3, qword [0x180180c40]
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 0x1800a542e
cmp dword [rsp + 0x60], 0x407b53d1
ja 0x1800a26c7
cmp dword [rsp + 0x60], 0x4016cbe3
jbe 0x1800a24a9
cmp dword [rsp + 0xcc], 0
je 0x1800a23be
cvtss2sd xmm0, dword [rsp + 0x3c]
addsd xmm0, qword [0x180181458]
movsd qword [rsp + 0x348], xmm0
jmp 0x1800a23d5
cvtss2sd xmm0, dword [rsp + 0x3c]
subsd xmm0, qword [0x180181458]
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 [0x1801813c8]
movsd xmm1, qword [0x180181528]
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 [0x180181410]
movsd xmm2, qword [rsp + 0x160]
mulsd xmm2, qword [0x180181540]
movsd xmm3, qword [0x180180c40]
addsd xmm3, xmm2
movaps xmm2, xmm3
addsd xmm2, xmm1
movaps xmm1, xmm2
addsd xmm1, xmm0
movaps xmm0, xmm1
cvtsd2ss xmm0, xmm0
xorps xmm0, xmmword [0x180180ca0]
movss dword [rsp + 0x48], xmm0
jmp 0x1800a542e
cmp dword [rsp + 0xcc], 0
je 0x1800a25be
cvtss2sd xmm0, dword [rsp + 0x3c]
addsd xmm0, qword [0x180181448]
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 [0x1801813a8]
movsd xmm1, qword [0x180181518]
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 [0x180181408]
movsd xmm2, qword [0x180181538]
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 0x1800a542e
cvtss2sd xmm0, dword [rsp + 0x3c]
movsd xmm1, qword [0x180181448]
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 [0x1801813a8]
movsd xmm1, qword [0x180181518]
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 [0x180181408]
movsd xmm2, qword [0x180181538]
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 0x1800a542e
cmp dword [rsp + 0x60], 0x40e231d5
ja 0x1800a2a0c
cmp dword [rsp + 0x60], 0x40afeddf
jbe 0x1800a27ea
cmp dword [rsp + 0xcc], 0
je 0x1800a2706
cvtss2sd xmm0, dword [rsp + 0x3c]
addsd xmm0, qword [0x180181468]
movsd qword [rsp + 0x350], xmm0
jmp 0x1800a271d
cvtss2sd xmm0, dword [rsp + 0x3c]
subsd xmm0, qword [0x180181468]
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 [0x1801813c8]
movsd xmm1, qword [0x180181528]
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 [0x180181410]
movsd xmm2, qword [rsp + 0x178]
mulsd xmm2, qword [0x180181540]
movsd xmm3, qword [0x180180c40]
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 0x1800a542e
cmp dword [rsp + 0xcc], 0
je 0x1800a290a
movss xmm0, dword [rsp + 0x3c]
xorps xmm0, xmmword [0x180180ca0]
cvtss2sd xmm0, xmm0
subsd xmm0, qword [0x180181460]
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 [0x1801813a8]
movsd xmm1, qword [0x180181518]
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 [0x180181408]
movsd xmm2, qword [0x180181538]
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 0x1800a542e
cvtss2sd xmm0, dword [rsp + 0x3c]
subsd xmm0, qword [0x180181460]
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 [0x1801813a8]
movsd xmm1, qword [0x180181518]
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 [0x180181408]
movsd xmm2, qword [0x180181538]
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 0x1800a542e
cmp dword [rsp + 0x60], 0x7f800000
jb 0x1800a2a2d
movss xmm0, dword [rsp + 0x3c]
subss xmm0, dword [rsp + 0x3c]
movss dword [rsp + 0x48], xmm0
jmp 0x1800a542e
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 0x1800a2ae2
cvtss2sd xmm0, dword [rsp + 0x3c]
mulsd xmm0, qword [0x180181428]
addsd xmm0, qword [0x1801814c8]
subsd xmm0, qword [0x1801814c8]
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 [0x180181440]
subsd xmm0, xmm1
movsd xmm1, qword [rsp + 0x2f0]
mulsd xmm1, qword [0x180181378]
subsd xmm0, xmm1
movsd qword [rsp + 0xa8], xmm0
mov eax, dword [rsp + 0xc4]
mov dword [rsp + 0xc8], eax
jmp 0x1800a5063
cmp dword [rsp + 0xd0], 0x7f800000
jb 0x1800a2b18
movss xmm0, dword [rsp + 0x3c]
subss xmm0, dword [rsp + 0x3c]
cvtss2sd xmm0, xmm0
movsd qword [rsp + 0xa8], xmm0
mov dword [rsp + 0xc8], 0
jmp 0x1800a5063
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, [0x180180e88]
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 0x1800a2bd3
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 0x1800a2c3b
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 0x1800a2c90
cmp dword [rsp + 0x28], 0
jge 0x1800a2c5d
xorps xmm0, xmm0
movsd qword [rsp + 0x3a8], xmm0
jmp 0x1800a2c77
movsxd rax, dword [rsp + 0x28]
lea rcx, [0x180180ea0]
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 0x1800a2c27
mov dword [rsp + 0x20], 0
jmp 0x1800a2ca4
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x94]
cmp dword [rsp + 0x20], eax
jg 0x1800a2d3a
mov dword [rsp + 0x28], 0
xorps xmm0, xmm0
movsd qword [rsp + 0x30], xmm0
jmp 0x1800a2cd2
mov eax, dword [rsp + 0x28]
inc eax
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x88]
cmp dword [rsp + 0x28], eax
jg 0x1800a2d21
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 0x1800a2cc8
movsxd rax, dword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + rax*8 + 0x6a0], xmm0
jmp 0x1800a2c9a
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 0x1800a2d7f
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 0x1800a2def
movsd xmm0, qword [0x180181388]
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
cvtsi2sd xmm0, eax
movsd qword [rsp + 0x30], xmm0
movsd xmm0, qword [0x180181490]
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 0x1800a2d6b
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 0x1800a2dfb
mov eax, dword [rsp + 0x8c]
and eax, 0x7ff00000
sar eax, 0x14
mov dword [rsp + 0x4c], eax
cmp dword [rsp + 0x4c], 0
jne 0x1800a2eef
mov eax, dword [rsp + 0x8c]
btr eax, 0x1f
mov ecx, dword [rsp + 0x30c]
or ecx, eax
mov eax, ecx
test eax, eax
jne 0x1800a2e7a
movsd xmm0, qword [rsp + 0x78]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800a3348
movsd xmm0, qword [rsp + 0x78]
mulsd xmm0, qword [0x1801814d0]
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 0x1800a2e8e
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 0x1800a2eef
movsd xmm0, qword [0x180181340]
mulsd xmm0, qword [rsp + 0x78]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800a3348
cmp dword [rsp + 0x4c], 0x7ff
jne 0x1800a2f10
movsd xmm0, qword [rsp + 0x78]
addsd xmm0, qword [rsp + 0x78]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800a3348
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 0x1800a3021
movsd xmm0, qword [0x180181500]
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 0x1800a2f3f
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 0x1800a2f6a
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 0x1800a2f92
movsd xmm0, qword [rsp + 0x240]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800a3348
cmp dword [rsp + 0x4c], 0
jle 0x1800a30ad
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 0x1800a302c
movsd xmm0, qword [rsp + 0x78]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800a3348
cmp dword [rsp + 0x4c], 0xffffffca
jg 0x1800a32b9
cmp dword [rsp + 0x38], 0xc350
jle 0x1800a31be
movsd xmm0, qword [0x180181500]
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 0x1800a30d7
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 0x1800a3102
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 0x1800a312a
movsd xmm0, qword [rsp + 0x248]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800a3348
movsd xmm0, qword [0x180181340]
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 0x1800a31cf
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 0x1800a31fa
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 0x1800a3222
movsd xmm0, qword [0x180181340]
mulsd xmm0, qword [rsp + 0x250]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800a3348
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 0x1800a32c4
movsd xmm0, qword [rsp + 0x78]
mulsd xmm0, qword [0x180181350]
movsd qword [rsp + 0x40], xmm0
movsd xmm0, qword [rsp + 0x40]
mulsd xmm0, qword [0x180181418]
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 0x1800a33ac
movsd xmm0, qword [rsp + 0xe0]
ucomisd xmm0, qword [0x18015ccb0]
jp 0x1800a33c3
jne 0x1800a33c3
movsd xmm0, qword [rsp + 0xe0]
movsd qword [rsp + 0x258], xmm0
jmp 0x1800a351a
mov rax, qword [rsp + 0x2f8]
shr rax, 0x3f
test rax, rax
je 0x1800a3401
movsd xmm0, qword [rsp + 0xe0]
subsd xmm0, qword [0x1801814c0]
addsd xmm0, qword [0x1801814c0]
subsd xmm0, qword [rsp + 0xe0]
movsd qword [rsp + 0x108], xmm0
jmp 0x1800a342c
movsd xmm0, qword [rsp + 0xe0]
addsd xmm0, qword [0x1801814c0]
subsd xmm0, qword [0x1801814c0]
subsd xmm0, qword [rsp + 0xe0]
movsd qword [rsp + 0x108], xmm0
cmp dword [rsp + 0x110], 0x3fe
jg 0x1800a34c7
xor eax, eax
test eax, eax
je 0x1800a3457
cvtsd2ss xmm0, qword [rsp + 0x108]
movss dword [rsp + 0x40c], xmm0
jmp 0x1800a3484
xor eax, eax
cmp eax, 1
je 0x1800a3472
movsd xmm0, qword [rsp + 0x108]
movsd qword [rsp + 0x688], xmm0
jmp 0x1800a3484
movsd xmm0, qword [rsp + 0x108]
movsd qword [rsp + 0x690], xmm0
xor eax, eax
test eax, eax
jne 0x1800a343d
mov rax, qword [rsp + 0x2f8]
shr rax, 0x3f
test rax, rax
je 0x1800a34a8
mov dword [rsp + 0x114], 0xffffffff
jmp 0x1800a34b3
mov dword [rsp + 0x114], 0
cvtsi2sd xmm0, dword [rsp + 0x114]
movsd qword [rsp + 0x258], xmm0
jmp 0x1800a351a
movsd xmm0, qword [rsp + 0x108]
comisd xmm0, xmmword [0x18015ccb0]
jbe 0x1800a34ff
movsd xmm0, qword [rsp + 0xe0]
addsd xmm0, qword [rsp + 0x108]
subsd xmm0, qword [0x180180c40]
movsd qword [rsp + 0x258], xmm0
jmp 0x1800a351a
movsd xmm0, qword [rsp + 0xe0]
addsd xmm0, qword [rsp + 0x108]
movsd qword [rsp + 0x258], xmm0
movsd xmm0, qword [0x180181470]
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 0x1800a3604
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 0x1800a363b
cmp dword [rsp + 0x38], 0
jne 0x1800a3623
mov eax, dword [rsp + 0x24]
dec eax
cdqe
mov eax, dword [rsp + rax*4 + 0x590]
sar eax, 0x17
mov dword [rsp + 0x64], eax
jmp 0x1800a363b
movsd xmm0, qword [rsp + 0x40]
comisd xmm0, xmmword [0x180181420]
jb 0x1800a363b
mov dword [rsp + 0x64], 2
cmp dword [rsp + 0x64], 0
jle 0x1800a3d36
mov eax, dword [rsp + 0xa0]
inc eax
mov dword [rsp + 0xa0], eax
mov dword [rsp + 0xf4], 0
mov dword [rsp + 0x20], 0
jmp 0x1800a3675
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x24]
cmp dword [rsp + 0x20], eax
jge 0x1800a36d9
movsxd rax, dword [rsp + 0x20]
mov eax, dword [rsp + rax*4 + 0x590]
mov dword [rsp + 0x28], eax
cmp dword [rsp + 0xf4], 0
jne 0x1800a36c2
cmp dword [rsp + 0x28], 0
je 0x1800a36c0
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 0x1800a36d7
mov eax, 0xffffff
sub eax, dword [rsp + 0x28]
movsxd rcx, dword [rsp + 0x20]
mov dword [rsp + rcx*4 + 0x590], eax
jmp 0x1800a366b
cmp dword [rsp + 0x38], 0
jle 0x1800a374b
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x118], eax
cmp dword [rsp + 0x118], 1
je 0x1800a3701
cmp dword [rsp + 0x118], 2
je 0x1800a3727
jmp 0x1800a374b
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 0x1800a374b
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 0x1800a3d36
movsd xmm0, qword [0x180180c40]
subsd xmm0, qword [rsp + 0x40]
movsd qword [rsp + 0x40], xmm0
cmp dword [rsp + 0xf4], 0
je 0x1800a3d36
movsd xmm0, qword [0x180180c40]
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 0x1800a3789
mov eax, dword [rsp + 0x90]
and eax, 0x7ff00000
sar eax, 0x14
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jne 0x1800a3895
mov eax, dword [rsp + 0x90]
btr eax, 0x1f
mov ecx, dword [rsp + 0x324]
or ecx, eax
mov eax, ecx
test eax, eax
jne 0x1800a3811
movsd xmm0, qword [rsp + 0x80]
movsd qword [rsp + 0xe8], xmm0
jmp 0x1800a3d21
movsd xmm0, qword [rsp + 0x80]
mulsd xmm0, qword [0x1801814d0]
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 0x1800a382b
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 0x1800a3895
movsd xmm0, qword [0x180181340]
mulsd xmm0, qword [rsp + 0x80]
movsd qword [rsp + 0xe8], xmm0
jmp 0x1800a3d21
cmp dword [rsp + 0x50], 0x7ff
jne 0x1800a38bf
movsd xmm0, qword [rsp + 0x80]
addsd xmm0, qword [rsp + 0x80]
movsd qword [rsp + 0xe8], xmm0
jmp 0x1800a3d21
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 0x1800a39d6
movsd xmm0, qword [0x180181500]
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 0x1800a38ee
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 0x1800a3919
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 0x1800a3944
movsd xmm0, qword [rsp + 0x260]
movsd qword [rsp + 0xe8], xmm0
jmp 0x1800a3d21
cmp dword [rsp + 0x50], 0
jle 0x1800a3a6e
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 0x1800a39e1
movsd xmm0, qword [rsp + 0x80]
movsd qword [rsp + 0xe8], xmm0
jmp 0x1800a3d21
cmp dword [rsp + 0x50], 0xffffffca
jg 0x1800a3c86
cmp dword [rsp + 0x38], 0xc350
jle 0x1800a3b85
movsd xmm0, qword [0x180181500]
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 0x1800a3a98
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 0x1800a3ac3
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 0x1800a3aee
movsd xmm0, qword [rsp + 0x268]
movsd qword [rsp + 0xe8], xmm0
jmp 0x1800a3d21
movsd xmm0, qword [0x180181340]
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 0x1800a3b96
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 0x1800a3bc1
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 0x1800a3bec
movsd xmm0, qword [0x180181340]
mulsd xmm0, qword [rsp + 0x270]
movsd qword [rsp + 0xe8], xmm0
jmp 0x1800a3d21
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 0x1800a3c91
movsd xmm0, qword [rsp + 0x80]
mulsd xmm0, qword [0x180181350]
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 [0x18015ccb0]
jp 0x1800a3ece
jne 0x1800a3ece
mov dword [rsp + 0x28], 0
mov eax, dword [rsp + 0x24]
dec eax
mov dword [rsp + 0x20], eax
jmp 0x1800a3d6e
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x94]
cmp dword [rsp + 0x20], eax
jl 0x1800a3d95
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 0x1800a3d64
cmp dword [rsp + 0x28], 0
jne 0x1800a3ece
mov dword [rsp + 0x5c], 1
jmp 0x1800a3db4
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 0x1800a3dd1
jmp 0x1800a3daa
mov eax, dword [rsp + 0x24]
inc eax
mov dword [rsp + 0x20], eax
jmp 0x1800a3de7
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 0x1800a3eb9
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0xb0]
add ecx, eax
mov eax, ecx
cdqe
lea rcx, [0x180180ea0]
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 0x1800a3e51
mov eax, dword [rsp + 0x28]
inc eax
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x88]
cmp dword [rsp + 0x28], eax
jg 0x1800a3ea0
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 0x1800a3e47
movsxd rax, dword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + rax*8 + 0x6a0], xmm0
jmp 0x1800a3ddd
mov eax, dword [rsp + 0x5c]
mov ecx, dword [rsp + 0x24]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x24], eax
jmp 0x1800a2d45
movsd xmm0, qword [rsp + 0x40]
ucomisd xmm0, qword [0x18015ccb0]
jp 0x1800a3f20
jne 0x1800a3f20
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 0x1800a3f1b
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 0x1800a3ef5
jmp 0x1800a4521
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 0x1800a3f39
mov eax, dword [rsp + 0x98]
and eax, 0x7ff00000
sar eax, 0x14
mov dword [rsp + 0x54], eax
cmp dword [rsp + 0x54], 0
jne 0x1800a4030
mov eax, dword [rsp + 0x98]
btr eax, 0x1f
mov ecx, dword [rsp + 0x344]
or ecx, eax
mov eax, ecx
test eax, eax
jne 0x1800a3fb8
movsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800a448f
movsd xmm0, qword [rsp + 0x68]
mulsd xmm0, qword [0x1801814d0]
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 0x1800a3fcc
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 0x1800a4030
movsd xmm0, qword [0x180181340]
mulsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800a448f
cmp dword [rsp + 0x54], 0x7ff
jne 0x1800a4051
movsd xmm0, qword [rsp + 0x68]
addsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800a448f
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 0x1800a4165
movsd xmm0, qword [0x180181500]
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 0x1800a4083
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 0x1800a40ae
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 0x1800a40d6
movsd xmm0, qword [rsp + 0x278]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800a448f
cmp dword [rsp + 0x54], 0
jle 0x1800a41f1
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 0x1800a4170
movsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800a448f
cmp dword [rsp + 0x54], 0xffffffca
jg 0x1800a4400
cmp dword [rsp + 0xf8], 0xc350
jle 0x1800a4305
movsd xmm0, qword [0x180181500]
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 0x1800a421e
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 0x1800a4249
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 0x1800a4271
movsd xmm0, qword [rsp + 0x218]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800a448f
movsd xmm0, qword [0x180181340]
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 0x1800a4316
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 0x1800a4341
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 0x1800a4369
movsd xmm0, qword [0x180181340]
mulsd xmm0, qword [rsp + 0x280]
movsd qword [rsp + 0x40], xmm0
jmp 0x1800a448f
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 0x1800a440b
movsd xmm0, qword [rsp + 0x68]
mulsd xmm0, qword [0x180181350]
movsd qword [rsp + 0x40], xmm0
movsd xmm0, qword [rsp + 0x40]
comisd xmm0, xmmword [0x180181490]
jb 0x1800a450f
movsd xmm0, qword [0x180181388]
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
cvtsi2sd xmm0, eax
movsd qword [rsp + 0x30], xmm0
movsd xmm0, qword [0x180181490]
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 0x1800a4521
cvttsd2si eax, qword [rsp + 0x40]
movsxd rcx, dword [rsp + 0x24]
mov dword [rsp + rcx*4 + 0x590], eax
movsd xmm0, qword [0x180180c40]
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 0x1800a452f
mov eax, dword [rsp + 0x9c]
and eax, 0x7ff00000
sar eax, 0x14
mov dword [rsp + 0x58], eax
cmp dword [rsp + 0x58], 0
jne 0x1800a4623
mov eax, dword [rsp + 0x9c]
btr eax, 0x1f
mov ecx, dword [rsp + 0x2c0]
or ecx, eax
mov eax, ecx
test eax, eax
jne 0x1800a45ae
movsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800a4a7c
movsd xmm0, qword [rsp + 0x70]
mulsd xmm0, qword [0x1801814d0]
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 0x1800a45c2
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 0x1800a4623
movsd xmm0, qword [0x180181340]
mulsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800a4a7c
cmp dword [rsp + 0x58], 0x7ff
jne 0x1800a4644
movsd xmm0, qword [rsp + 0x70]
addsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800a4a7c
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 0x1800a4755
movsd xmm0, qword [0x180181500]
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 0x1800a4673
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 0x1800a469e
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 0x1800a46c6
movsd xmm0, qword [rsp + 0x288]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800a4a7c
cmp dword [rsp + 0x58], 0
jle 0x1800a47e1
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 0x1800a4760
movsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800a4a7c
cmp dword [rsp + 0x58], 0xffffffca
jg 0x1800a49ed
cmp dword [rsp + 0x38], 0xc350
jle 0x1800a48f2
movsd xmm0, qword [0x180181500]
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 0x1800a480b
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 0x1800a4836
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 0x1800a485e
movsd xmm0, qword [rsp + 0x290]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800a4a7c
movsd xmm0, qword [0x180181340]
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 0x1800a4903
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 0x1800a492e
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 0x1800a4956
movsd xmm0, qword [0x180181340]
mulsd xmm0, qword [rsp + 0x298]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800a4a7c
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 0x1800a49f8
movsd xmm0, qword [rsp + 0x70]
mulsd xmm0, qword [0x180181350]
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x1800a4a90
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 0
jl 0x1800a4ad6
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 [0x180181388]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800a4a86
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x1800a4aea
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 0
jl 0x1800a4b94
xorps xmm0, xmm0
movsd qword [rsp + 0x30], xmm0
mov dword [rsp + 0x5c], 0
jmp 0x1800a4b12
mov eax, dword [rsp + 0x5c]
inc eax
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x2dc]
cmp dword [rsp + 0x5c], eax
jg 0x1800a4b72
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x24]
sub ecx, eax
mov eax, ecx
cmp dword [rsp + 0x5c], eax
jg 0x1800a4b72
movsxd rax, dword [rsp + 0x5c]
lea rcx, [0x1801811a0]
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 0x1800a4b08
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 0x1800a4ae0
mov dword [rsp + 0xc0], 0
cmp dword [rsp + 0xc0], 0
je 0x1800a4bd8
cmp dword [rsp + 0xc0], 1
je 0x1800a4c66
cmp dword [rsp + 0xc0], 2
je 0x1800a4c66
cmp dword [rsp + 0xc0], 3
je 0x1800a4da1
jmp 0x1800a4feb
xorps xmm0, xmm0
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x1800a4bf5
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 0
jl 0x1800a4c18
movsxd rax, dword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
addsd xmm0, qword [rsp + rax*8 + 0x5e0]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800a4beb
cmp dword [rsp + 0x64], 0
jne 0x1800a4c30
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x3d8], xmm0
jmp 0x1800a4c46
movsd xmm0, qword [rsp + 0x30]
xorps xmm0, xmmword [0x18015ccc0]
movsd qword [rsp + 0x3d8], xmm0
mov eax, 8
imul rax, rax, 0
movsd xmm0, qword [rsp + 0x3d8]
movsd qword [rsp + rax + 0xb8], xmm0
jmp 0x1800a4feb
xorps xmm0, xmm0
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x1800a4c83
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 0
jl 0x1800a4ca6
movsxd rax, dword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
addsd xmm0, qword [rsp + rax*8 + 0x5e0]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800a4c79
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x30], xmm0
cmp dword [rsp + 0x64], 0
jne 0x1800a4cca
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x3e0], xmm0
jmp 0x1800a4ce0
movsd xmm0, qword [rsp + 0x30]
xorps xmm0, xmmword [0x18015ccc0]
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 0x1800a4d2d
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x24]
cmp dword [rsp + 0x20], eax
jg 0x1800a4d53
movsxd rax, dword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
addsd xmm0, qword [rsp + rax*8 + 0x5e0]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800a4d23
cmp dword [rsp + 0x64], 0
jne 0x1800a4d6b
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x3e8], xmm0
jmp 0x1800a4d81
movsd xmm0, qword [rsp + 0x30]
xorps xmm0, xmmword [0x18015ccc0]
movsd qword [rsp + 0x3e8], xmm0
mov eax, 8
imul rax, rax, 1
movsd xmm0, qword [rsp + 0x3e8]
movsd qword [rsp + rax + 0xb8], xmm0
jmp 0x1800a4feb
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x1800a4db5
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 0
jle 0x1800a4e37
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 0x1800a4dab
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x1800a4e4b
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 1
jle 0x1800a4ecd
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 0x1800a4e41
xorps xmm0, xmm0
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x1800a4eea
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 2
jl 0x1800a4f0d
movsxd rax, dword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
addsd xmm0, qword [rsp + rax*8 + 0x5e0]
movsd qword [rsp + 0x30], xmm0
jmp 0x1800a4ee0
cmp dword [rsp + 0x64], 0
jne 0x1800a4f76
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 0x1800a4feb
mov eax, 8
imul rax, rax, 0
movsd xmm0, qword [rsp + rax + 0x5e0]
xorps xmm0, xmmword [0x18015ccc0]
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 [0x18015ccc0]
mov eax, 8
imul rax, rax, 1
movsd qword [rsp + rax + 0xb8], xmm0
movsd xmm0, qword [rsp + 0x30]
xorps xmm0, xmmword [0x18015ccc0]
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 0x1800a503a
mov eax, 8
imul rax, rax, 0
movsd xmm0, qword [rsp + rax + 0xb8]
xorps xmm0, xmmword [0x18015ccc0]
movsd qword [rsp + 0xa8], xmm0
mov eax, dword [rsp + 0xc4]
neg eax
mov dword [rsp + 0xc8], eax
jmp 0x1800a5063
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 0x1800a50ad
cmp dword [rsp + 0x100], 1
je 0x1800a5175
cmp dword [rsp + 0x100], 2
je 0x1800a5279
jmp 0x1800a5348
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 [0x1801813c8]
movsd xmm1, qword [0x180181528]
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 [0x180181410]
movsd xmm2, qword [rsp + 0x138]
mulsd xmm2, qword [0x180181540]
movsd xmm3, qword [0x180180c40]
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 0x1800a542e
movsd xmm0, qword [rsp + 0xa8]
xorps xmm0, xmmword [0x18015ccc0]
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 [0x1801813a8]
movsd xmm1, qword [0x180181518]
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 [0x180181408]
movsd xmm2, qword [0x180181538]
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 0x1800a542e
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 [0x1801813c8]
movsd xmm1, qword [0x180181528]
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 [0x180181410]
movsd xmm2, qword [rsp + 0x148]
mulsd xmm2, qword [0x180181540]
movsd xmm3, qword [0x180180c40]
addsd xmm3, xmm2
movaps xmm2, xmm3
addsd xmm2, xmm1
movaps xmm1, xmm2
addsd xmm1, xmm0
movaps xmm0, xmm1
cvtsd2ss xmm0, xmm0
xorps xmm0, xmmword [0x180180ca0]
movss dword [rsp + 0x48], xmm0
jmp 0x1800a542e
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 [0x1801813a8]
movsd xmm1, qword [0x180181518]
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 [0x180181408]
movsd xmm2, qword [0x180181538]
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.18007e250
jmp 0x1800a211e
add rsp, 0x7e8
ret