Function at 0x18006d020
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 0x18006d078
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.180047900
jmp 0x180070437
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.180048060
mov dword [rsp + 0xd8], 0
jmp 0x18006d0ce
mov eax, dword [rsp + 0xd8]
inc eax
mov dword [rsp + 0xd8], eax
mov eax, dword [rsp + 0x818]
cmp dword [rsp + 0xd8], eax
jg 0x180070437
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.1800ff080
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 0x18006d17f
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 0x18006d31f
cmp dword [rsp + 0x60], 0x39800000
jae 0x18006d248
xor eax, eax
cmp eax, 1
je 0x18006d1f1
movss xmm0, dword [rsp + 0x3c]
addss xmm0, dword [0x18014652c]
movss dword [rsp + 0x408], xmm0
jmp 0x18006d22f
xor eax, eax
test eax, eax
je 0x18006d214
movss xmm0, dword [rsp + 0x3c]
addss xmm0, dword [0x18014652c]
cvtss2sd xmm0, xmm0
movsd qword [rsp + 0x698], xmm0
jmp 0x18006d22f
movss xmm0, dword [rsp + 0x3c]
addss xmm0, dword [0x18014652c]
cvtss2sd xmm0, xmm0
movsd qword [rsp + 0x680], xmm0
xor eax, eax
test eax, eax
jne 0x18006d1d1
movss xmm0, dword [0x180143e50]
movss dword [rsp + 0x48], xmm0
jmp 0x1800703ce
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 [0x1801463f0]
movsd xmm1, qword [0x180146568]
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 [0x180146448]
movsd xmm2, qword [rsp + 0x158]
mulsd xmm2, qword [0x180146580]
movsd xmm3, qword [0x180145c68]
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 0x1800703ce
cmp dword [rsp + 0x60], 0x407b53d1
ja 0x18006d667
cmp dword [rsp + 0x60], 0x4016cbe3
jbe 0x18006d449
cmp dword [rsp + 0xcc], 0
je 0x18006d35e
cvtss2sd xmm0, dword [rsp + 0x3c]
addsd xmm0, qword [0x180146498]
movsd qword [rsp + 0x348], xmm0
jmp 0x18006d375
cvtss2sd xmm0, dword [rsp + 0x3c]
subsd xmm0, qword [0x180146498]
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 [0x1801463f0]
movsd xmm1, qword [0x180146568]
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 [0x180146448]
movsd xmm2, qword [rsp + 0x160]
mulsd xmm2, qword [0x180146580]
movsd xmm3, qword [0x180145c68]
addsd xmm3, xmm2
movaps xmm2, xmm3
addsd xmm2, xmm1
movaps xmm1, xmm2
addsd xmm1, xmm0
movaps xmm0, xmm1
cvtsd2ss xmm0, xmm0
xorps xmm0, xmmword [0x180145cd0]
movss dword [rsp + 0x48], xmm0
jmp 0x1800703ce
cmp dword [rsp + 0xcc], 0
je 0x18006d55e
cvtss2sd xmm0, dword [rsp + 0x3c]
addsd xmm0, qword [0x180146480]
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 [0x1801463d8]
movsd xmm1, qword [0x180146558]
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 [0x180146440]
movsd xmm2, qword [0x180146578]
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 0x1800703ce
cvtss2sd xmm0, dword [rsp + 0x3c]
movsd xmm1, qword [0x180146480]
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 [0x1801463d8]
movsd xmm1, qword [0x180146558]
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 [0x180146440]
movsd xmm2, qword [0x180146578]
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 0x1800703ce
cmp dword [rsp + 0x60], 0x40e231d5
ja 0x18006d9ac
cmp dword [rsp + 0x60], 0x40afeddf
jbe 0x18006d78a
cmp dword [rsp + 0xcc], 0
je 0x18006d6a6
cvtss2sd xmm0, dword [rsp + 0x3c]
addsd xmm0, qword [0x1801464a8]
movsd qword [rsp + 0x350], xmm0
jmp 0x18006d6bd
cvtss2sd xmm0, dword [rsp + 0x3c]
subsd xmm0, qword [0x1801464a8]
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 [0x1801463f0]
movsd xmm1, qword [0x180146568]
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 [0x180146448]
movsd xmm2, qword [rsp + 0x178]
mulsd xmm2, qword [0x180146580]
movsd xmm3, qword [0x180145c68]
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 0x1800703ce
cmp dword [rsp + 0xcc], 0
je 0x18006d8aa
movss xmm0, dword [rsp + 0x3c]
xorps xmm0, xmmword [0x180145cd0]
cvtss2sd xmm0, xmm0
subsd xmm0, qword [0x1801464a0]
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 [0x1801463d8]
movsd xmm1, qword [0x180146558]
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 [0x180146440]
movsd xmm2, qword [0x180146578]
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 0x1800703ce
cvtss2sd xmm0, dword [rsp + 0x3c]
subsd xmm0, qword [0x1801464a0]
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 [0x1801463d8]
movsd xmm1, qword [0x180146558]
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 [0x180146440]
movsd xmm2, qword [0x180146578]
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 0x1800703ce
cmp dword [rsp + 0x60], 0x7f800000
jb 0x18006d9cd
movss xmm0, dword [rsp + 0x3c]
subss xmm0, dword [rsp + 0x3c]
movss dword [rsp + 0x48], xmm0
jmp 0x1800703ce
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 0x18006da82
cvtss2sd xmm0, dword [rsp + 0x3c]
mulsd xmm0, qword [0x180146460]
addsd xmm0, qword [0x180146508]
subsd xmm0, qword [0x180146508]
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 [0x180146478]
subsd xmm0, xmm1
movsd xmm1, qword [rsp + 0x2f0]
mulsd xmm1, qword [0x1801463a8]
subsd xmm0, xmm1
movsd qword [rsp + 0xa8], xmm0
mov eax, dword [rsp + 0xc4]
mov dword [rsp + 0xc8], eax
jmp 0x180070003
cmp dword [rsp + 0xd0], 0x7f800000
jb 0x18006dab8
movss xmm0, dword [rsp + 0x3c]
subss xmm0, dword [rsp + 0x3c]
cvtss2sd xmm0, xmm0
movsd qword [rsp + 0xa8], xmm0
mov dword [rsp + 0xc8], 0
jmp 0x180070003
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, [0x180145ed8]
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 0x18006db73
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 0x18006dbdb
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 0x18006dc30
cmp dword [rsp + 0x28], 0
jge 0x18006dbfd
xorps xmm0, xmm0
movsd qword [rsp + 0x3a8], xmm0
jmp 0x18006dc17
movsxd rax, dword [rsp + 0x28]
lea rcx, [0x180145ef0]
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 0x18006dbc7
mov dword [rsp + 0x20], 0
jmp 0x18006dc44
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x94]
cmp dword [rsp + 0x20], eax
jg 0x18006dcda
mov dword [rsp + 0x28], 0
xorps xmm0, xmm0
movsd qword [rsp + 0x30], xmm0
jmp 0x18006dc72
mov eax, dword [rsp + 0x28]
inc eax
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x88]
cmp dword [rsp + 0x28], eax
jg 0x18006dcc1
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 0x18006dc68
movsxd rax, dword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + rax*8 + 0x6a0], xmm0
jmp 0x18006dc3a
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 0x18006dd1f
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 0x18006dd8f
movsd xmm0, qword [0x1801463b8]
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
cvtsi2sd xmm0, eax
movsd qword [rsp + 0x30], xmm0
movsd xmm0, qword [0x1801464d0]
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 0x18006dd0b
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 0x18006dd9b
mov eax, dword [rsp + 0x8c]
and eax, 0x7ff00000
sar eax, 0x14
mov dword [rsp + 0x4c], eax
cmp dword [rsp + 0x4c], 0
jne 0x18006de8f
mov eax, dword [rsp + 0x8c]
btr eax, 0x1f
mov ecx, dword [rsp + 0x30c]
or ecx, eax
mov eax, ecx
test eax, eax
jne 0x18006de1a
movsd xmm0, qword [rsp + 0x78]
movsd qword [rsp + 0x40], xmm0
jmp 0x18006e2e8
movsd xmm0, qword [rsp + 0x78]
mulsd xmm0, qword [0x180146510]
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 0x18006de2e
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 0x18006de8f
movsd xmm0, qword [0x180146370]
mulsd xmm0, qword [rsp + 0x78]
movsd qword [rsp + 0x40], xmm0
jmp 0x18006e2e8
cmp dword [rsp + 0x4c], 0x7ff
jne 0x18006deb0
movsd xmm0, qword [rsp + 0x78]
addsd xmm0, qword [rsp + 0x78]
movsd qword [rsp + 0x40], xmm0
jmp 0x18006e2e8
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 0x18006dfc1
movsd xmm0, qword [0x180146540]
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 0x18006dedf
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 0x18006df0a
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 0x18006df32
movsd xmm0, qword [rsp + 0x240]
movsd qword [rsp + 0x40], xmm0
jmp 0x18006e2e8
cmp dword [rsp + 0x4c], 0
jle 0x18006e04d
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 0x18006dfcc
movsd xmm0, qword [rsp + 0x78]
movsd qword [rsp + 0x40], xmm0
jmp 0x18006e2e8
cmp dword [rsp + 0x4c], 0xffffffca
jg 0x18006e259
cmp dword [rsp + 0x38], 0xc350
jle 0x18006e15e
movsd xmm0, qword [0x180146540]
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 0x18006e077
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 0x18006e0a2
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 0x18006e0ca
movsd xmm0, qword [rsp + 0x248]
movsd qword [rsp + 0x40], xmm0
jmp 0x18006e2e8
movsd xmm0, qword [0x180146370]
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 0x18006e16f
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 0x18006e19a
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 0x18006e1c2
movsd xmm0, qword [0x180146370]
mulsd xmm0, qword [rsp + 0x250]
movsd qword [rsp + 0x40], xmm0
jmp 0x18006e2e8
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 0x18006e264
movsd xmm0, qword [rsp + 0x78]
mulsd xmm0, qword [0x180146380]
movsd qword [rsp + 0x40], xmm0
movsd xmm0, qword [rsp + 0x40]
mulsd xmm0, qword [0x180146450]
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 0x18006e34c
movsd xmm0, qword [rsp + 0xe0]
ucomisd xmm0, qword [0x180124b20]
jp 0x18006e363
jne 0x18006e363
movsd xmm0, qword [rsp + 0xe0]
movsd qword [rsp + 0x258], xmm0
jmp 0x18006e4ba
mov rax, qword [rsp + 0x2f8]
shr rax, 0x3f
test rax, rax
je 0x18006e3a1
movsd xmm0, qword [rsp + 0xe0]
subsd xmm0, qword [0x180146500]
addsd xmm0, qword [0x180146500]
subsd xmm0, qword [rsp + 0xe0]
movsd qword [rsp + 0x108], xmm0
jmp 0x18006e3cc
movsd xmm0, qword [rsp + 0xe0]
addsd xmm0, qword [0x180146500]
subsd xmm0, qword [0x180146500]
subsd xmm0, qword [rsp + 0xe0]
movsd qword [rsp + 0x108], xmm0
cmp dword [rsp + 0x110], 0x3fe
jg 0x18006e467
xor eax, eax
test eax, eax
je 0x18006e3f7
cvtsd2ss xmm0, qword [rsp + 0x108]
movss dword [rsp + 0x40c], xmm0
jmp 0x18006e424
xor eax, eax
cmp eax, 1
je 0x18006e412
movsd xmm0, qword [rsp + 0x108]
movsd qword [rsp + 0x688], xmm0
jmp 0x18006e424
movsd xmm0, qword [rsp + 0x108]
movsd qword [rsp + 0x690], xmm0
xor eax, eax
test eax, eax
jne 0x18006e3dd
mov rax, qword [rsp + 0x2f8]
shr rax, 0x3f
test rax, rax
je 0x18006e448
mov dword [rsp + 0x114], 0xffffffff
jmp 0x18006e453
mov dword [rsp + 0x114], 0
cvtsi2sd xmm0, dword [rsp + 0x114]
movsd qword [rsp + 0x258], xmm0
jmp 0x18006e4ba
movsd xmm0, qword [rsp + 0x108]
comisd xmm0, xmmword [0x180124b20]
jbe 0x18006e49f
movsd xmm0, qword [rsp + 0xe0]
addsd xmm0, qword [rsp + 0x108]
subsd xmm0, qword [0x180145c68]
movsd qword [rsp + 0x258], xmm0
jmp 0x18006e4ba
movsd xmm0, qword [rsp + 0xe0]
addsd xmm0, qword [rsp + 0x108]
movsd qword [rsp + 0x258], xmm0
movsd xmm0, qword [0x1801464b0]
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 0x18006e5a4
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 0x18006e5db
cmp dword [rsp + 0x38], 0
jne 0x18006e5c3
mov eax, dword [rsp + 0x24]
dec eax
cdqe
mov eax, dword [rsp + rax*4 + 0x590]
sar eax, 0x17
mov dword [rsp + 0x64], eax
jmp 0x18006e5db
movsd xmm0, qword [rsp + 0x40]
comisd xmm0, xmmword [0x180146458]
jb 0x18006e5db
mov dword [rsp + 0x64], 2
cmp dword [rsp + 0x64], 0
jle 0x18006ecd6
mov eax, dword [rsp + 0xa0]
inc eax
mov dword [rsp + 0xa0], eax
mov dword [rsp + 0xf4], 0
mov dword [rsp + 0x20], 0
jmp 0x18006e615
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x24]
cmp dword [rsp + 0x20], eax
jge 0x18006e679
movsxd rax, dword [rsp + 0x20]
mov eax, dword [rsp + rax*4 + 0x590]
mov dword [rsp + 0x28], eax
cmp dword [rsp + 0xf4], 0
jne 0x18006e662
cmp dword [rsp + 0x28], 0
je 0x18006e660
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 0x18006e677
mov eax, 0xffffff
sub eax, dword [rsp + 0x28]
movsxd rcx, dword [rsp + 0x20]
mov dword [rsp + rcx*4 + 0x590], eax
jmp 0x18006e60b
cmp dword [rsp + 0x38], 0
jle 0x18006e6eb
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x118], eax
cmp dword [rsp + 0x118], 1
je 0x18006e6a1
cmp dword [rsp + 0x118], 2
je 0x18006e6c7
jmp 0x18006e6eb
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 0x18006e6eb
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 0x18006ecd6
movsd xmm0, qword [0x180145c68]
subsd xmm0, qword [rsp + 0x40]
movsd qword [rsp + 0x40], xmm0
cmp dword [rsp + 0xf4], 0
je 0x18006ecd6
movsd xmm0, qword [0x180145c68]
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 0x18006e729
mov eax, dword [rsp + 0x90]
and eax, 0x7ff00000
sar eax, 0x14
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jne 0x18006e835
mov eax, dword [rsp + 0x90]
btr eax, 0x1f
mov ecx, dword [rsp + 0x324]
or ecx, eax
mov eax, ecx
test eax, eax
jne 0x18006e7b1
movsd xmm0, qword [rsp + 0x80]
movsd qword [rsp + 0xe8], xmm0
jmp 0x18006ecc1
movsd xmm0, qword [rsp + 0x80]
mulsd xmm0, qword [0x180146510]
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 0x18006e7cb
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 0x18006e835
movsd xmm0, qword [0x180146370]
mulsd xmm0, qword [rsp + 0x80]
movsd qword [rsp + 0xe8], xmm0
jmp 0x18006ecc1
cmp dword [rsp + 0x50], 0x7ff
jne 0x18006e85f
movsd xmm0, qword [rsp + 0x80]
addsd xmm0, qword [rsp + 0x80]
movsd qword [rsp + 0xe8], xmm0
jmp 0x18006ecc1
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 0x18006e976
movsd xmm0, qword [0x180146540]
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 0x18006e88e
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 0x18006e8b9
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 0x18006e8e4
movsd xmm0, qword [rsp + 0x260]
movsd qword [rsp + 0xe8], xmm0
jmp 0x18006ecc1
cmp dword [rsp + 0x50], 0
jle 0x18006ea0e
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 0x18006e981
movsd xmm0, qword [rsp + 0x80]
movsd qword [rsp + 0xe8], xmm0
jmp 0x18006ecc1
cmp dword [rsp + 0x50], 0xffffffca
jg 0x18006ec26
cmp dword [rsp + 0x38], 0xc350
jle 0x18006eb25
movsd xmm0, qword [0x180146540]
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 0x18006ea38
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 0x18006ea63
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 0x18006ea8e
movsd xmm0, qword [rsp + 0x268]
movsd qword [rsp + 0xe8], xmm0
jmp 0x18006ecc1
movsd xmm0, qword [0x180146370]
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 0x18006eb36
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 0x18006eb61
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 0x18006eb8c
movsd xmm0, qword [0x180146370]
mulsd xmm0, qword [rsp + 0x270]
movsd qword [rsp + 0xe8], xmm0
jmp 0x18006ecc1
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 0x18006ec31
movsd xmm0, qword [rsp + 0x80]
mulsd xmm0, qword [0x180146380]
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 [0x180124b20]
jp 0x18006ee6e
jne 0x18006ee6e
mov dword [rsp + 0x28], 0
mov eax, dword [rsp + 0x24]
dec eax
mov dword [rsp + 0x20], eax
jmp 0x18006ed0e
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x94]
cmp dword [rsp + 0x20], eax
jl 0x18006ed35
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 0x18006ed04
cmp dword [rsp + 0x28], 0
jne 0x18006ee6e
mov dword [rsp + 0x5c], 1
jmp 0x18006ed54
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 0x18006ed71
jmp 0x18006ed4a
mov eax, dword [rsp + 0x24]
inc eax
mov dword [rsp + 0x20], eax
jmp 0x18006ed87
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 0x18006ee59
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0xb0]
add ecx, eax
mov eax, ecx
cdqe
lea rcx, [0x180145ef0]
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 0x18006edf1
mov eax, dword [rsp + 0x28]
inc eax
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x88]
cmp dword [rsp + 0x28], eax
jg 0x18006ee40
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 0x18006ede7
movsxd rax, dword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + rax*8 + 0x6a0], xmm0
jmp 0x18006ed7d
mov eax, dword [rsp + 0x5c]
mov ecx, dword [rsp + 0x24]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x24], eax
jmp 0x18006dce5
movsd xmm0, qword [rsp + 0x40]
ucomisd xmm0, qword [0x180124b20]
jp 0x18006eec0
jne 0x18006eec0
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 0x18006eebb
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 0x18006ee95
jmp 0x18006f4c1
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 0x18006eed9
mov eax, dword [rsp + 0x98]
and eax, 0x7ff00000
sar eax, 0x14
mov dword [rsp + 0x54], eax
cmp dword [rsp + 0x54], 0
jne 0x18006efd0
mov eax, dword [rsp + 0x98]
btr eax, 0x1f
mov ecx, dword [rsp + 0x344]
or ecx, eax
mov eax, ecx
test eax, eax
jne 0x18006ef58
movsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x40], xmm0
jmp 0x18006f42f
movsd xmm0, qword [rsp + 0x68]
mulsd xmm0, qword [0x180146510]
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 0x18006ef6c
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 0x18006efd0
movsd xmm0, qword [0x180146370]
mulsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x40], xmm0
jmp 0x18006f42f
cmp dword [rsp + 0x54], 0x7ff
jne 0x18006eff1
movsd xmm0, qword [rsp + 0x68]
addsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x40], xmm0
jmp 0x18006f42f
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 0x18006f105
movsd xmm0, qword [0x180146540]
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 0x18006f023
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 0x18006f04e
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 0x18006f076
movsd xmm0, qword [rsp + 0x278]
movsd qword [rsp + 0x40], xmm0
jmp 0x18006f42f
cmp dword [rsp + 0x54], 0
jle 0x18006f191
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 0x18006f110
movsd xmm0, qword [rsp + 0x68]
movsd qword [rsp + 0x40], xmm0
jmp 0x18006f42f
cmp dword [rsp + 0x54], 0xffffffca
jg 0x18006f3a0
cmp dword [rsp + 0xf8], 0xc350
jle 0x18006f2a5
movsd xmm0, qword [0x180146540]
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 0x18006f1be
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 0x18006f1e9
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 0x18006f211
movsd xmm0, qword [rsp + 0x218]
movsd qword [rsp + 0x40], xmm0
jmp 0x18006f42f
movsd xmm0, qword [0x180146370]
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 0x18006f2b6
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 0x18006f2e1
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 0x18006f309
movsd xmm0, qword [0x180146370]
mulsd xmm0, qword [rsp + 0x280]
movsd qword [rsp + 0x40], xmm0
jmp 0x18006f42f
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 0x18006f3ab
movsd xmm0, qword [rsp + 0x68]
mulsd xmm0, qword [0x180146380]
movsd qword [rsp + 0x40], xmm0
movsd xmm0, qword [rsp + 0x40]
comisd xmm0, xmmword [0x1801464d0]
jb 0x18006f4af
movsd xmm0, qword [0x1801463b8]
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
cvtsi2sd xmm0, eax
movsd qword [rsp + 0x30], xmm0
movsd xmm0, qword [0x1801464d0]
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 0x18006f4c1
cvttsd2si eax, qword [rsp + 0x40]
movsxd rcx, dword [rsp + 0x24]
mov dword [rsp + rcx*4 + 0x590], eax
movsd xmm0, qword [0x180145c68]
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 0x18006f4cf
mov eax, dword [rsp + 0x9c]
and eax, 0x7ff00000
sar eax, 0x14
mov dword [rsp + 0x58], eax
cmp dword [rsp + 0x58], 0
jne 0x18006f5c3
mov eax, dword [rsp + 0x9c]
btr eax, 0x1f
mov ecx, dword [rsp + 0x2c0]
or ecx, eax
mov eax, ecx
test eax, eax
jne 0x18006f54e
movsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x30], xmm0
jmp 0x18006fa1c
movsd xmm0, qword [rsp + 0x70]
mulsd xmm0, qword [0x180146510]
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 0x18006f562
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 0x18006f5c3
movsd xmm0, qword [0x180146370]
mulsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x30], xmm0
jmp 0x18006fa1c
cmp dword [rsp + 0x58], 0x7ff
jne 0x18006f5e4
movsd xmm0, qword [rsp + 0x70]
addsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x30], xmm0
jmp 0x18006fa1c
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 0x18006f6f5
movsd xmm0, qword [0x180146540]
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 0x18006f613
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 0x18006f63e
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 0x18006f666
movsd xmm0, qword [rsp + 0x288]
movsd qword [rsp + 0x30], xmm0
jmp 0x18006fa1c
cmp dword [rsp + 0x58], 0
jle 0x18006f781
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 0x18006f700
movsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x30], xmm0
jmp 0x18006fa1c
cmp dword [rsp + 0x58], 0xffffffca
jg 0x18006f98d
cmp dword [rsp + 0x38], 0xc350
jle 0x18006f892
movsd xmm0, qword [0x180146540]
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 0x18006f7ab
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 0x18006f7d6
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 0x18006f7fe
movsd xmm0, qword [rsp + 0x290]
movsd qword [rsp + 0x30], xmm0
jmp 0x18006fa1c
movsd xmm0, qword [0x180146370]
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 0x18006f8a3
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 0x18006f8ce
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 0x18006f8f6
movsd xmm0, qword [0x180146370]
mulsd xmm0, qword [rsp + 0x298]
movsd qword [rsp + 0x30], xmm0
jmp 0x18006fa1c
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 0x18006f998
movsd xmm0, qword [rsp + 0x70]
mulsd xmm0, qword [0x180146380]
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x18006fa30
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 0
jl 0x18006fa76
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 [0x1801463b8]
movsd qword [rsp + 0x30], xmm0
jmp 0x18006fa26
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x18006fa8a
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 0
jl 0x18006fb34
xorps xmm0, xmm0
movsd qword [rsp + 0x30], xmm0
mov dword [rsp + 0x5c], 0
jmp 0x18006fab2
mov eax, dword [rsp + 0x5c]
inc eax
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x2dc]
cmp dword [rsp + 0x5c], eax
jg 0x18006fb12
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x24]
sub ecx, eax
mov eax, ecx
cmp dword [rsp + 0x5c], eax
jg 0x18006fb12
movsxd rax, dword [rsp + 0x5c]
lea rcx, [0x1801461e0]
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 0x18006faa8
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 0x18006fa80
mov dword [rsp + 0xc0], 0
cmp dword [rsp + 0xc0], 0
je 0x18006fb78
cmp dword [rsp + 0xc0], 1
je 0x18006fc06
cmp dword [rsp + 0xc0], 2
je 0x18006fc06
cmp dword [rsp + 0xc0], 3
je 0x18006fd41
jmp 0x18006ff8b
xorps xmm0, xmm0
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x18006fb95
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 0
jl 0x18006fbb8
movsxd rax, dword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
addsd xmm0, qword [rsp + rax*8 + 0x5e0]
movsd qword [rsp + 0x30], xmm0
jmp 0x18006fb8b
cmp dword [rsp + 0x64], 0
jne 0x18006fbd0
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x3d8], xmm0
jmp 0x18006fbe6
movsd xmm0, qword [rsp + 0x30]
xorps xmm0, xmmword [0x180124b30]
movsd qword [rsp + 0x3d8], xmm0
mov eax, 8
imul rax, rax, 0
movsd xmm0, qword [rsp + 0x3d8]
movsd qword [rsp + rax + 0xb8], xmm0
jmp 0x18006ff8b
xorps xmm0, xmm0
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x18006fc23
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 0
jl 0x18006fc46
movsxd rax, dword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
addsd xmm0, qword [rsp + rax*8 + 0x5e0]
movsd qword [rsp + 0x30], xmm0
jmp 0x18006fc19
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x30], xmm0
cmp dword [rsp + 0x64], 0
jne 0x18006fc6a
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x3e0], xmm0
jmp 0x18006fc80
movsd xmm0, qword [rsp + 0x30]
xorps xmm0, xmmword [0x180124b30]
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 0x18006fccd
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x24]
cmp dword [rsp + 0x20], eax
jg 0x18006fcf3
movsxd rax, dword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
addsd xmm0, qword [rsp + rax*8 + 0x5e0]
movsd qword [rsp + 0x30], xmm0
jmp 0x18006fcc3
cmp dword [rsp + 0x64], 0
jne 0x18006fd0b
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x3e8], xmm0
jmp 0x18006fd21
movsd xmm0, qword [rsp + 0x30]
xorps xmm0, xmmword [0x180124b30]
movsd qword [rsp + 0x3e8], xmm0
mov eax, 8
imul rax, rax, 1
movsd xmm0, qword [rsp + 0x3e8]
movsd qword [rsp + rax + 0xb8], xmm0
jmp 0x18006ff8b
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x18006fd55
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 0
jle 0x18006fdd7
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 0x18006fd4b
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x18006fdeb
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 1
jle 0x18006fe6d
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 0x18006fde1
xorps xmm0, xmm0
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x18006fe8a
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 2
jl 0x18006fead
movsxd rax, dword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
addsd xmm0, qword [rsp + rax*8 + 0x5e0]
movsd qword [rsp + 0x30], xmm0
jmp 0x18006fe80
cmp dword [rsp + 0x64], 0
jne 0x18006ff16
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 0x18006ff8b
mov eax, 8
imul rax, rax, 0
movsd xmm0, qword [rsp + rax + 0x5e0]
xorps xmm0, xmmword [0x180124b30]
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 [0x180124b30]
mov eax, 8
imul rax, rax, 1
movsd qword [rsp + rax + 0xb8], xmm0
movsd xmm0, qword [rsp + 0x30]
xorps xmm0, xmmword [0x180124b30]
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 0x18006ffda
mov eax, 8
imul rax, rax, 0
movsd xmm0, qword [rsp + rax + 0xb8]
xorps xmm0, xmmword [0x180124b30]
movsd qword [rsp + 0xa8], xmm0
mov eax, dword [rsp + 0xc4]
neg eax
mov dword [rsp + 0xc8], eax
jmp 0x180070003
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 0x18007004d
cmp dword [rsp + 0x100], 1
je 0x180070115
cmp dword [rsp + 0x100], 2
je 0x180070219
jmp 0x1800702e8
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 [0x1801463f0]
movsd xmm1, qword [0x180146568]
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 [0x180146448]
movsd xmm2, qword [rsp + 0x138]
mulsd xmm2, qword [0x180146580]
movsd xmm3, qword [0x180145c68]
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 0x1800703ce
movsd xmm0, qword [rsp + 0xa8]
xorps xmm0, xmmword [0x180124b30]
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 [0x1801463d8]
movsd xmm1, qword [0x180146558]
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 [0x180146440]
movsd xmm2, qword [0x180146578]
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 0x1800703ce
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 [0x1801463f0]
movsd xmm1, qword [0x180146568]
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 [0x180146448]
movsd xmm2, qword [rsp + 0x148]
mulsd xmm2, qword [0x180146580]
movsd xmm3, qword [0x180145c68]
addsd xmm3, xmm2
movaps xmm2, xmm3
addsd xmm2, xmm1
movaps xmm1, xmm2
addsd xmm1, xmm0
movaps xmm0, xmm1
cvtsd2ss xmm0, xmm0
xorps xmm0, xmmword [0x180145cd0]
movss dword [rsp + 0x48], xmm0
jmp 0x1800703ce
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 [0x1801463d8]
movsd xmm1, qword [0x180146558]
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 [0x180146440]
movsd xmm2, qword [0x180146578]
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.180047900
jmp 0x18006d0be
add rsp, 0x7e8
ret