__ZN11NBodySystem7advanceEd:
LFB1598:
.cfi_startproc
pushl %ebp
.cfi_def_cfa_offset 8
.cfi_offset 5, -8
pushl %edi
.cfi_def_cfa_offset 12
.cfi_offset 7, -12
pushl %esi
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
pushl %ebx
.cfi_def_cfa_offset 20
.cfi_offset 3, -20
subl $20, %esp
.cfi_def_cfa_offset 40
movsd 40(%esp), %xmm4
movl $192, %esi
movl $__ZN11NBodySystem6bodiesE, %ecx
xorl %ebx, %ebx
addl $64, %ecx
cmpl $__ZN11NBodySystem6bodiesE+320, %ecx
je L1501
L1531:
movsd -64(%ecx), %xmm3
movsd -56(%ecx), %xmm6
movsd -48(%ecx), %xmm1
movl %ebx, %edx
sall $5, %edx
addl $__ZZN11NBodySystem7advanceEdE1r, %edx
movl %ecx, %eax
L1504:
movapd %xmm3, %xmm0
subsd (%eax), %xmm0
movsd %xmm0, (%edx)
movapd %xmm6, %xmm5
subsd 8(%eax), %xmm5
movsd %xmm5, 8(%edx)
movapd %xmm1, %xmm7
subsd 16(%eax), %xmm7
movsd %xmm7, 16(%edx)
addl $64, %eax
addl $32, %edx
cmpl $__ZN11NBodySystem6bodiesE+320, %eax
jne L1504
movl %esi, %ebp
shrl $6, %ebp
leal 1(%ebx,%ebp), %ebx
subl $64, %esi
addl $64, %ecx
cmpl $__ZN11NBodySystem6bodiesE+320, %ecx
jne L1531
L1501:
movddup %xmm4, %xmm5
movapd LC46, %xmm3
movsd __ZZN11NBodySystem7advanceEdE1r, %xmm2
movhpd __ZZN11NBodySystem7advanceEdE1r+32, %xmm2
movsd __ZZN11NBodySystem7advanceEdE1r+8, %xmm0
movhpd __ZZN11NBodySystem7advanceEdE1r+40, %xmm0
movsd __ZZN11NBodySystem7advanceEdE1r+16, %xmm1
movhpd __ZZN11NBodySystem7advanceEdE1r+48, %xmm1
mulpd %xmm0, %xmm0
mulpd %xmm2, %xmm2
addpd %xmm2, %xmm0
mulpd %xmm1, %xmm1
addpd %xmm1, %xmm0
cvtpd2ps %xmm0, %xmm6
rsqrtps %xmm6, %xmm7
cvtps2pd %xmm7, %xmm6
movapd %xmm6, %xmm1
mulpd %xmm3, %xmm1
movapd LC47, %xmm7
mulpd %xmm0, %xmm7
movapd %xmm6, %xmm2
mulpd %xmm6, %xmm2
mulpd %xmm6, %xmm2
mulpd %xmm7, %xmm2
subpd %xmm2, %xmm1
movapd %xmm1, %xmm6
mulpd %xmm1, %xmm6
mulpd %xmm7, %xmm6
movapd %xmm3, %xmm7
subpd %xmm6, %xmm7
movapd %xmm7, %xmm2
mulpd %xmm1, %xmm2
movapd %xmm5, %xmm1
divpd %xmm0, %xmm1
mulpd %xmm1, %xmm2
movapd %xmm2, __ZZN11NBodySystem7advanceEdE3mag
movl $2, %edx
movl $__ZZN11NBodySystem7advanceEdE1r+64, %eax
L1506:
movsd (%eax), %xmm6
movhpd 32(%eax), %xmm6
movsd 8(%eax), %xmm0
movhpd 40(%eax), %xmm0
movsd 16(%eax), %xmm7
movhpd 48(%eax), %xmm7
mulpd %xmm0, %xmm0
mulpd %xmm6, %xmm6
addpd %xmm6, %xmm0
mulpd %xmm7, %xmm7
addpd %xmm7, %xmm0
cvtpd2ps %xmm0, %xmm2
rsqrtps %xmm2, %xmm1
cvtps2pd %xmm1, %xmm6
movapd %xmm6, %xmm2
mulpd %xmm3, %xmm2
movapd LC47, %xmm7
mulpd %xmm0, %xmm7
movapd %xmm6, %xmm1
mulpd %xmm6, %xmm1
mulpd %xmm6, %xmm1
mulpd %xmm7, %xmm1
subpd %xmm1, %xmm2
movapd %xmm2, %xmm6
mulpd %xmm2, %xmm6
mulpd %xmm7, %xmm6
movapd %xmm3, %xmm7
subpd %xmm6, %xmm7
movapd %xmm7, %xmm1
mulpd %xmm2, %xmm1
movapd %xmm5, %xmm2
divpd %xmm0, %xmm2
mulpd %xmm2, %xmm1
movapd %xmm1, __ZZN11NBodySystem7advanceEdE3mag(,%edx,8)
movsd 64(%eax), %xmm6
movhpd 96(%eax), %xmm6
movsd 72(%eax), %xmm0
movhpd 104(%eax), %xmm0
movsd 80(%eax), %xmm7
movhpd 112(%eax), %xmm7
mulpd %xmm0, %xmm0
mulpd %xmm6, %xmm6
addpd %xmm6, %xmm0
mulpd %xmm7, %xmm7
addpd %xmm7, %xmm0
cvtpd2ps %xmm0, %xmm1
rsqrtps %xmm1, %xmm2
cvtps2pd %xmm2, %xmm6
movapd %xmm6, %xmm2
mulpd %xmm3, %xmm2
movapd LC47, %xmm7
mulpd %xmm0, %xmm7
movapd %xmm6, %xmm1
mulpd %xmm6, %xmm1
mulpd %xmm6, %xmm1
mulpd %xmm7, %xmm1
subpd %xmm1, %xmm2
movapd %xmm2, %xmm6
mulpd %xmm2, %xmm6
mulpd %xmm7, %xmm6
movapd %xmm3, %xmm7
subpd %xmm6, %xmm7
movapd %xmm7, %xmm1
mulpd %xmm2, %xmm1
movapd %xmm5, %xmm2
divpd %xmm0, %xmm2
mulpd %xmm2, %xmm1
movapd %xmm1, __ZZN11NBodySystem7advanceEdE3mag+16(,%edx,8)
addl $4, %edx
subl $-128, %eax
cmpl $10, %edx
jne L1506
movl $192, 4(%esp)
movl $__ZN11NBodySystem6bodiesE, %eax
movl $0, (%esp)
addl $64, %eax
cmpl $__ZN11NBodySystem6bodiesE+320, %eax
je L1507
L1532:
movsd -8(%eax), %xmm0
movl (%esp), %ebx
movl %ebx, %edx
sall $5, %edx
leal __ZZN11NBodySystem7advanceEdE1r(%edx), %edi
leal 0(,%ebx,8), %ecx
leal __ZZN11NBodySystem7advanceEdE3mag(%ecx), %ebp
movl $__ZN11NBodySystem6bodiesE+256, %esi
subl %eax, %esi
shrl $6, %esi
andl $1, %esi
movsd 56(%eax), %xmm3
movsd __ZZN11NBodySystem7advanceEdE3mag(%ecx), %xmm2
movsd __ZZN11NBodySystem7advanceEdE1r(%edx), %xmm5
mulsd %xmm2, %xmm5
movapd %xmm5, %xmm6
mulsd %xmm3, %xmm6
movsd -32(%eax), %xmm1
subsd %xmm6, %xmm1
movsd %xmm1, -32(%eax)
mulsd %xmm0, %xmm5
addsd 32(%eax), %xmm5
movsd %xmm5, 32(%eax)
movsd 8(%edi), %xmm5
mulsd %xmm2, %xmm5
movapd %xmm5, %xmm7
mulsd %xmm3, %xmm7
movsd -24(%eax), %xmm6
subsd %xmm7, %xmm6
movsd %xmm6, -24(%eax)
mulsd %xmm0, %xmm5
addsd 40(%eax), %xmm5
movsd %xmm5, 40(%eax)
mulsd 16(%edi), %xmm2
movapd %xmm3, %xmm5
mulsd %xmm2, %xmm5
movsd -16(%eax), %xmm3
subsd %xmm5, %xmm3
movsd %xmm3, -16(%eax)
mulsd %xmm0, %xmm2
addsd 48(%eax), %xmm2
movsd %xmm2, 48(%eax)
leal 64(%eax), %edx
leal 32(%edi), %ecx
leal 8(%ebp), %ebx
cmpl $__ZN11NBodySystem6bodiesE+320, %edx
je L1527
testl %esi, %esi
je L1510
movsd 56(%edx), %xmm2
movsd 8(%ebp), %xmm7
movsd 32(%edi), %xmm5
mulsd %xmm7, %xmm5
movapd %xmm5, %xmm6
mulsd %xmm2, %xmm6
subsd %xmm6, %xmm1
movsd %xmm1, -32(%eax)
mulsd %xmm0, %xmm5
movsd 32(%edx), %xmm1
addsd %xmm5, %xmm1
movsd %xmm1, 32(%edx)
movsd 8(%ecx), %xmm3
mulsd %xmm7, %xmm3
movapd %xmm3, %xmm6
mulsd %xmm2, %xmm6
movsd -24(%eax), %xmm5
subsd %xmm6, %xmm5
movsd %xmm5, -24(%eax)
mulsd %xmm0, %xmm3
addsd 40(%edx), %xmm3
movsd %xmm3, 40(%edx)
movsd 16(%ecx), %xmm1
mulsd %xmm7, %xmm1
mulsd %xmm1, %xmm2
movapd %xmm2, %xmm7
movsd -16(%eax), %xmm2
subsd %xmm7, %xmm2
movsd %xmm2, -16(%eax)
mulsd %xmm0, %xmm1
addsd 48(%edx), %xmm1
movsd %xmm1, 48(%edx)
leal 128(%eax), %edx
leal 64(%edi), %ecx
leal 16(%ebp), %ebx
cmpl $__ZN11NBodySystem6bodiesE+320, %edx
je L1527
L1510:
movsd 56(%edx), %xmm7
movsd (%ebx), %xmm1
movsd (%ecx), %xmm3
mulsd %xmm1, %xmm3
movapd %xmm3, %xmm6
mulsd %xmm7, %xmm6
movsd -32(%eax), %xmm5
subsd %xmm6, %xmm5
movsd %xmm5, -32(%eax)
mulsd %xmm0, %xmm3
addsd 32(%edx), %xmm3
movsd %xmm3, 32(%edx)
movsd 8(%ecx), %xmm2
mulsd %xmm1, %xmm2
movapd %xmm2, %xmm3
mulsd %xmm7, %xmm3
movsd -24(%eax), %xmm6
subsd %xmm3, %xmm6
movsd %xmm6, -24(%eax)
mulsd %xmm0, %xmm2
addsd 40(%edx), %xmm2
movsd %xmm2, 40(%edx)
mulsd 16(%ecx), %xmm1
mulsd %xmm1, %xmm7
movsd -16(%eax), %xmm5
subsd %xmm7, %xmm5
movsd %xmm5, -16(%eax)
mulsd %xmm0, %xmm1
addsd 48(%edx), %xmm1
movsd %xmm1, 48(%edx)
movsd 120(%edx), %xmm2
movsd 8(%ebx), %xmm1
movsd 32(%ecx), %xmm3
mulsd %xmm1, %xmm3
movapd %xmm3, %xmm6
mulsd %xmm2, %xmm6
movsd -32(%eax), %xmm7
subsd %xmm6, %xmm7
movsd %xmm7, -32(%eax)
mulsd %xmm0, %xmm3
addsd 96(%edx), %xmm3
movsd %xmm3, 96(%edx)
movsd 40(%ecx), %xmm3
mulsd %xmm1, %xmm3
movapd %xmm3, %xmm6
mulsd %xmm2, %xmm6
movsd -24(%eax), %xmm5
subsd %xmm6, %xmm5
movsd %xmm5, -24(%eax)
mulsd %xmm0, %xmm3
addsd 104(%edx), %xmm3
movsd %xmm3, 104(%edx)
mulsd 48(%ecx), %xmm1
mulsd %xmm1, %xmm2
movapd %xmm2, %xmm7
movsd -16(%eax), %xmm2
subsd %xmm7, %xmm2
movsd %xmm2, -16(%eax)
mulsd %xmm0, %xmm1
addsd 112(%edx), %xmm1
movsd %xmm1, 112(%edx)
subl $-128, %edx
addl $64, %ecx
addl $16, %ebx
cmpl $__ZN11NBodySystem6bodiesE+320, %edx
jne L1510
L1527:
movl 4(%esp), %ebp
shrl $6, %ebp
movl (%esp), %edi
leal 1(%edi,%ebp), %esi
movl %esi, (%esp)
subl $64, 4(%esp)
addl $64, %eax
cmpl $__ZN11NBodySystem6bodiesE+320, %eax
jne L1532
L1507:
movsd __ZN11NBodySystem6bodiesE+32, %xmm5
mulsd %xmm4, %xmm5
addsd __ZN11NBodySystem6bodiesE, %xmm5
movsd %xmm5, __ZN11NBodySystem6bodiesE
movsd __ZN11NBodySystem6bodiesE+40, %xmm3
mulsd %xmm4, %xmm3
addsd __ZN11NBodySystem6bodiesE+8, %xmm3
movsd %xmm3, __ZN11NBodySystem6bodiesE+8
movsd __ZN11NBodySystem6bodiesE+48, %xmm6
mulsd %xmm4, %xmm6
addsd __ZN11NBodySystem6bodiesE+16, %xmm6
movsd %xmm6, __ZN11NBodySystem6bodiesE+16
movsd __ZN11NBodySystem6bodiesE+96, %xmm7
mulsd %xmm4, %xmm7
addsd __ZN11NBodySystem6bodiesE+64, %xmm7
movsd %xmm7, __ZN11NBodySystem6bodiesE+64
movsd __ZN11NBodySystem6bodiesE+104, %xmm1
mulsd %xmm4, %xmm1
addsd __ZN11NBodySystem6bodiesE+72, %xmm1
movsd %xmm1, __ZN11NBodySystem6bodiesE+72
movsd __ZN11NBodySystem6bodiesE+112, %xmm2
mulsd %xmm4, %xmm2
addsd __ZN11NBodySystem6bodiesE+80, %xmm2
movsd %xmm2, __ZN11NBodySystem6bodiesE+80
movsd __ZN11NBodySystem6bodiesE+160, %xmm0
mulsd %xmm4, %xmm0
addsd __ZN11NBodySystem6bodiesE+128, %xmm0
movsd %xmm0, __ZN11NBodySystem6bodiesE+128
movsd __ZN11NBodySystem6bodiesE+168, %xmm5
mulsd %xmm4, %xmm5
addsd __ZN11NBodySystem6bodiesE+136, %xmm5
movsd %xmm5, __ZN11NBodySystem6bodiesE+136
movsd __ZN11NBodySystem6bodiesE+176, %xmm3
mulsd %xmm4, %xmm3
addsd __ZN11NBodySystem6bodiesE+144, %xmm3
movsd %xmm3, __ZN11NBodySystem6bodiesE+144
movsd __ZN11NBodySystem6bodiesE+224, %xmm6
mulsd %xmm4, %xmm6
addsd __ZN11NBodySystem6bodiesE+192, %xmm6
movsd %xmm6, __ZN11NBodySystem6bodiesE+192
movsd __ZN11NBodySystem6bodiesE+232, %xmm7
mulsd %xmm4, %xmm7
addsd __ZN11NBodySystem6bodiesE+200, %xmm7
movsd %xmm7, __ZN11NBodySystem6bodiesE+200
movsd __ZN11NBodySystem6bodiesE+240, %xmm1
mulsd %xmm4, %xmm1
addsd __ZN11NBodySystem6bodiesE+208, %xmm1
movsd %xmm1, __ZN11NBodySystem6bodiesE+208
movsd __ZN11NBodySystem6bodiesE+288, %xmm2
mulsd %xmm4, %xmm2
addsd __ZN11NBodySystem6bodiesE+256, %xmm2
movsd %xmm2, __ZN11NBodySystem6bodiesE+256
movsd __ZN11NBodySystem6bodiesE+296, %xmm0
mulsd %xmm4, %xmm0
addsd __ZN11NBodySystem6bodiesE+264, %xmm0
movsd %xmm0, __ZN11NBodySystem6bodiesE+264
mulsd __ZN11NBodySystem6bodiesE+304, %xmm4
addsd __ZN11NBodySystem6bodiesE+272, %xmm4
movsd %xmm4, __ZN11NBodySystem6bodiesE+272
addl $20, %esp
.cfi_def_cfa_offset 20
popl %ebx
.cfi_restore 3
.cfi_def_cfa_offset 16
popl %esi
.cfi_restore 6
.cfi_def_cfa_offset 12
popl %edi
.cfi_restore 7
.cfi_def_cfa_offset 8
popl %ebp
.cfi_restore 5
.cfi_def_cfa_offset 4
ret $8