// File: /workspace/github_cpp_makefile_star2_O3/jkingan[P]ladyheather/heathmsc.cpp
// Function: moonxyz_(int*, double*, double*)
int moonxyz_(int *mjd, double *fmjd, double *rm)
{
    /* F2C generated locals */
    double d__1;

    /* Local variables */
    static double ghar, d, f, q, t, oblir, tjdtt, t1, t2, t3, el;
    static double cselat, selatd, cselon, selond, fmjdtt, sselat, el0, 
                  sselon, tsectt, rm1, rm2, rm3, elp, rse;
    static double tsecgps;

    if(mjd == 0) return (-1); 
    if(fmjd == 0) return (-1); 
    if(rm == 0) return (-1); 

/* get low-precision, geocentric coordinates for moon (ECEF) */
/*** input:  mjd/fmjd, is Modified Julian Date (and fractional) in GPS time*/
/* output: rm, is geocentric lunar position vector [m] in ECEF */
/*** 1."satellite orbits: models, methods, applications" montenbruck & gill(2000)*/
/* section 3.3.2, pg. 72-73 */
/*** 2."astronomy on the personal computer, 4th ed." montenbruck & pfleger (2005)*/
/* section 3.2, pg. 38-39  routine MiniMoon */
/* use TT for lunar ephemerides */

    /* Function Body */
    if((tide_options & LOW_RES_TIDES) == 0) {  // use more accurate values from moon_posn()
       selatd = moon_lat;
       selond = moon_lon;
       rse = moon_dist;
       oblir = obliquity(jd_utc, 1);
    }
    else {
       tsecgps = *fmjd * 86400.;
   /* *** GPS time (sec of */
       tsectt = gps2tt_(&tsecgps);
   /* *** TT  time (sec of */
       fmjdtt = tsectt / 86400.;
   /* julian centuries since 1.5 january 2000 (J2000) */
   /*   (note: also low precision use of mjd --> tjd) */
   /* *** TT  time (fract. */
       tjdtt = *mjd + fmjdtt + 2400000.5;
   /* *** Julian Date, TT */
       t = (tjdtt - 2451545.) / 36525.;
   /* el0 -- mean longitude of Moon (deg) */
   /* el  -- mean anomaly of Moon (deg) */
   /* elp -- mean anomaly of Sun  (deg) */
   /* f   -- mean angular distance of Moon from ascending node (deg) */
   /* d   -- difference between mean longitudes of Sun and Moon (deg) */
   /* equations 3.47, p.72 */
   /* *** julian centuries, */
       el0 = t * 481267.88088 + 218.31617 - t * 1.3972f;
       el = t * 477198.86753 + 134.96292;
       elp = t * 35999.04944 + 357.52543;
       f = t * 483202.01873 + 93.27283;
       d = t * 445267.11135 + 297.85027;
   /* longitude w.r.t. equinox and ecliptic of year 2000 */
       selond = el0 + sin(el / stuff_1.rad) * 6.288888888888889 + sin((el + el) /
                stuff_1.rad) * .2136111111111111 - sin((el - d - d) / 
               stuff_1.rad) * 1.273888888888889 + sin((d + d) / stuff_1.rad) * 
               .6583333333333333 - sin(elp / stuff_1.rad) * .1855555555555556 - 
               sin((f + f) / stuff_1.rad) * .1144444444444444 - sin((el + el - d 
               - d) / stuff_1.rad) * .05888888888888889 - sin((el + elp - d - d) 
               / stuff_1.rad) * .05722222222222222 + sin((el + d + d) / 
               stuff_1.rad) * .05333333333333334 - sin((elp - d - d) / 
               stuff_1.rad) * .04583333333333333 + sin((el - elp) / stuff_1.rad) 
               * .04111111111111111 - sin(d / stuff_1.rad) * .03472222222222222 
               - sin((el + elp) / stuff_1.rad) * .03055555555555555 - sin((f + f 
               - d - d) / stuff_1.rad) * .01527777777777778;
   /* latitude w.r.t. equinox and ecliptic of year 2000 */
   /* *** eq 3.48, p.72 */
       q = sin((f + f) / stuff_1.rad) * .1144444444444444 + sin(elp / 
               stuff_1.rad) * .1502777777777778;
   /* *** temporary ter */
       selatd = sin((f + selond - el0 + q) / stuff_1.rad) * 5.144444444444445 - 
               sin((f - d - d) / stuff_1.rad) * .1461111111111111 + sin((el + f 
               - d - d) / stuff_1.rad) * .01222222222222222 - sin((-el + f - d - 
               d) / stuff_1.rad) * .008611111111111111 - sin((-el - el + f) / 
               stuff_1.rad) * .006944444444444444 - sin((elp + f - d - d) / 
               stuff_1.rad) * .006388888888888889 + sin((-el + f) / stuff_1.rad) 
               * .005833333333333334 + sin((-elp + f - d - d) / stuff_1.rad) * 
               .003055555555555556;
   /* distance from Earth center to Moon (m) */
   /* *** eq 3.49, p.72 */
       rse = 3.85e8 - cos(el / stuff_1.rad) * 2.0905e7 - cos((d + d - el) / 
               stuff_1.rad) * 3.699e6 - cos((d + d) / stuff_1.rad) * 2.956e6 - 
               cos((el + el) / stuff_1.rad) * 5.7e5 + cos((el + el - d - d) / 
               stuff_1.rad) * 2.46e5 - cos((elp - d - d) / stuff_1.rad) * 2.05e5 
               - cos((el + d + d) / stuff_1.rad) * 1.71e5 - cos((el + elp - d - 
               d) / stuff_1.rad) * 1.52e5;
       selond += t * 1.3972;
       oblir = 23.43929111 / stuff_1.rad;
    }
//sprintf(debug_text2, "seella:   %.9f %.9f %.9f", fmod(selatd+360.0, 360.0),fmod(selond,360.0), rse);
/* convert spherical ecliptic coordinates to equatorial cartesian */
/* precession of equinox wrt. J2000   (p.71) */
/* *** eq 3.50, p.72 */


/*** position vector of moon (mean equinox & ecliptic of J2000) (EME2000, ICRF)*/
/***                         (plus long. advance due to precession -- eq. above)*/
/* *** degrees */
/* *** obliquity of the J2000 eclipti */
    sselat = sin(selatd / stuff_1.rad);
    cselat = cos(selatd / stuff_1.rad);
    sselon = sin(selond / stuff_1.rad);
    cselon = cos(selond / stuff_1.rad);
    t1 = rse * cselon * cselat;
/* *** meters          !*** eq. 3.51, */
    t2 = rse * sselon * cselat;
/* *** meters          !*** eq. 3.51, */
    t3 = rse * sselat;
//sprintf(debug_text3, "xyzt: %.9f %.9f %.9f  rse:%.9f", t1,t2,t3, rse);
/* *** meters          !*** eq. 3.51, */
    d__1 = -oblir;
    rot1_(&d__1, &t1, &t2, &t3, &rm1, &rm2, &rm3);
/* convert position vector of moon to ECEF  (ignore polar motion/LOD) 
*/
/* *** eq. 3.51, */
    getghar_(mjd, fmjd, &ghar);
/* *** sec 2.3.1, */
    rot3_(&ghar, &rm1, &rm2, &rm3, &rm[0], &rm[1], &rm[2]);
/* *** eq. 2.89, */
    return 0;
}

// Assembly:
testq %rdi, %rdi
sete %al
testq %rsi, %rsi
sete %cl
orb %al, %cl
testq %rdx, %rdx
sete %al
orb %cl, %al
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
jne 0xebdf7
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x18, %rsp
movq %rdx, %rbx
movq %rsi, %r14
movq %rdi, %r15
leaq 0x221c38(%rip), %rax    # 0x30d08c
testb $0x1, (%rax)
jne 0xeb4ab
movsd 0x28fff7(%rip), %xmm0   # 0x37b458
movsd %xmm0, 0x2902c7(%rip)   # 0x37b730
movsd 0x28ffef(%rip), %xmm0   # 0x37b460
movsd %xmm0, 0x2902bf(%rip)   # 0x37b738
movsd 0x28ffe7(%rip), %xmm0   # 0x37b468
movsd %xmm0, 0x2902ef(%rip)   # 0x37b778
leaq 0x2220a0(%rip), %rax    # 0x30d530
movsd (%rax), %xmm0
movl $0x1, %edi
callq 0xe1215
movsd 0x28ffca(%rip), %xmm1   # 0x37b470
jmp 0xebc37
movsd 0x1db65(%rip), %xmm0    # 0x109018
movsd (%r14), %xmm2
mulsd %xmm0, %xmm2
addsd 0x40d9c(%rip), %xmm2    # 0x12c260
cvtsi2sdl (%r15), %xmm1
divsd %xmm0, %xmm2
addsd %xmm2, %xmm1
addsd 0x332ef(%rip), %xmm1    # 0x11e7c8
addsd 0x4034f(%rip), %xmm1    # 0x12b830
divsd 0x4034f(%rip), %xmm1    # 0x12b838
movsd %xmm1, 0x290207(%rip)   # 0x37b6f8
movsd 0x40daf(%rip), %xmm0    # 0x12c2a8
mulsd %xmm1, %xmm0
addsd 0x40dab(%rip), %xmm0    # 0x12c2b0
movsd 0x40dab(%rip), %xmm2    # 0x12c2b8
mulsd %xmm1, %xmm2
addsd %xmm0, %xmm2
movsd %xmm2, -0x30(%rbp)
movsd %xmm2, 0x290226(%rip)   # 0x37b748
movsd 0x40d96(%rip), %xmm0    # 0x12c2c0
mulsd %xmm1, %xmm0
addsd 0x40d92(%rip), %xmm0    # 0x12c2c8
movsd %xmm0, 0x2901e2(%rip)   # 0x37b720
movsd 0x40d8a(%rip), %xmm2    # 0x12c2d0
mulsd %xmm1, %xmm2
addsd 0x40d86(%rip), %xmm2    # 0x12c2d8
movsd %xmm2, 0x290216(%rip)   # 0x37b770
movsd 0x40d7e(%rip), %xmm2    # 0x12c2e0
mulsd %xmm1, %xmm2
addsd 0x40d7a(%rip), %xmm2    # 0x12c2e8
mulsd 0x40d7a(%rip), %xmm1    # 0x12c2f0
addsd 0x40d7a(%rip), %xmm1    # 0x12c2f8
movsd %xmm2, 0x29016a(%rip)   # 0x37b6f0
movsd %xmm1, 0x29015a(%rip)   # 0x37b6e8
divsd 0x28feda(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x40d5d(%rip), %xmm0    # 0x12c300
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x29016b(%rip), %xmm0   # 0x37b720
addsd %xmm0, %xmm0
divsd 0x28feaf(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x40d3a(%rip), %xmm0    # 0x12c308
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x290140(%rip), %xmm0   # 0x37b720
movsd 0x290100(%rip), %xmm1   # 0x37b6e8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x28fe78(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x40d0b(%rip), %xmm0    # 0x12c310
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x2900d1(%rip), %xmm0   # 0x37b6e8
addsd %xmm0, %xmm0
divsd 0x28fe4d(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x40ce8(%rip), %xmm0    # 0x12c318
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x29012e(%rip), %xmm0   # 0x37b770
divsd 0x28fe26(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x40cc9(%rip), %xmm0    # 0x12c320
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x290087(%rip), %xmm0   # 0x37b6f0
addsd %xmm0, %xmm0
divsd 0x28fdfb(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x40ca6(%rip), %xmm0    # 0x12c328
movsd -0x30(%rbp), %xmm1
subsd %xmm0, %xmm1
movsd %xmm1, -0x30(%rbp)
movsd 0x290088(%rip), %xmm0   # 0x37b720
addsd %xmm0, %xmm0
movsd 0x290044(%rip), %xmm1   # 0x37b6e8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x28fdbc(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x40c6f(%rip), %xmm0    # 0x12c330
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x29004d(%rip), %xmm0   # 0x37b720
addsd 0x290095(%rip), %xmm0   # 0x37b770
movsd 0x290005(%rip), %xmm1   # 0x37b6e8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x28fd7d(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x40c38(%rip), %xmm0    # 0x12c338
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x28ffd6(%rip), %xmm1   # 0x37b6e8
movsd 0x290006(%rip), %xmm0   # 0x37b720
addsd %xmm1, %xmm0
addsd %xmm1, %xmm0
divsd 0x28fd46(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x40c09(%rip), %xmm0    # 0x12c340
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x290027(%rip), %xmm0   # 0x37b770
movsd 0x28ff97(%rip), %xmm1   # 0x37b6e8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x28fd0f(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x40bda(%rip), %xmm0    # 0x12c348
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x28ffa0(%rip), %xmm0   # 0x37b720
subsd 0x28ffe8(%rip), %xmm0   # 0x37b770
divsd 0x28fce0(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x40bb3(%rip), %xmm0    # 0x12c350
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x28ff39(%rip), %xmm0   # 0x37b6e8
divsd 0x28fcb9(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x40b94(%rip), %xmm0    # 0x12c358
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x28ff4a(%rip), %xmm0   # 0x37b720
addsd 0x28ff92(%rip), %xmm0   # 0x37b770
divsd 0x28fc8a(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x40b6d(%rip), %xmm0    # 0x12c360
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x28feeb(%rip), %xmm0   # 0x37b6f0
addsd %xmm0, %xmm0
movsd 0x28fed7(%rip), %xmm1   # 0x37b6e8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x28fc4f(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x40b3a(%rip), %xmm0    # 0x12c368
addsd -0x30(%rbp), %xmm0
movsd %xmm0, 0x28fefd(%rip)   # 0x37b738
movsd 0x28fead(%rip), %xmm0   # 0x37b6f0
addsd %xmm0, %xmm0
divsd 0x28fc21(%rip), %xmm0   # 0x37b470
callq 0x9080
movsd %xmm0, -0x30(%rbp)
movsd 0x28ff0f(%rip), %xmm0   # 0x37b770
divsd 0x28fc07(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x40afa(%rip), %xmm0    # 0x12c370
movsd -0x30(%rbp), %xmm2
mulsd 0x40aa5(%rip), %xmm2    # 0x12c328
movsd 0x28fe65(%rip), %xmm1   # 0x37b6f0
addsd 0x28fea5(%rip), %xmm1   # 0x37b738
subsd 0x28fead(%rip), %xmm1   # 0x37b748
addsd %xmm2, %xmm0
addsd %xmm1, %xmm0
divsd 0x28fbc5(%rip), %xmm0   # 0x37b470
callq 0x9080
movsd %xmm0, -0x30(%rbp)
movsd 0x28fe33(%rip), %xmm0   # 0x37b6f0
movsd 0x28fe23(%rip), %xmm1   # 0x37b6e8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x28fb9b(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x40a96(%rip), %xmm0    # 0x12c378
movsd -0x30(%rbp), %xmm1
mulsd 0x40a91(%rip), %xmm1    # 0x12c380
addsd %xmm0, %xmm1
movsd %xmm1, -0x30(%rbp)
movsd 0x28fe20(%rip), %xmm0   # 0x37b720
addsd 0x28fde8(%rip), %xmm0   # 0x37b6f0
movsd 0x28fdd8(%rip), %xmm1   # 0x37b6e8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x28fb50(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x40a5b(%rip), %xmm0    # 0x12c388
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x28fdb1(%rip), %xmm0   # 0x37b6f0
subsd 0x28fdd9(%rip), %xmm0   # 0x37b720
movsd 0x28fd99(%rip), %xmm1   # 0x37b6e8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x28fb11(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x40a24(%rip), %xmm0    # 0x12c390
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x28fda2(%rip), %xmm1   # 0x37b720
movapd 0x1d82a(%rip), %xmm0    # 0x1091b0
xorpd %xmm1, %xmm0
subsd %xmm1, %xmm0
addsd 0x28fd5a(%rip), %xmm0   # 0x37b6f0
divsd 0x28fad2(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x409ed(%rip), %xmm0    # 0x12c398
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x28fdb3(%rip), %xmm0   # 0x37b770
addsd 0x28fd2b(%rip), %xmm0   # 0x37b6f0
movsd 0x28fd1b(%rip), %xmm1   # 0x37b6e8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x28fa93(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x409b6(%rip), %xmm0    # 0x12c3a0
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x28fcf4(%rip), %xmm0   # 0x37b6f0
subsd 0x28fd1c(%rip), %xmm0   # 0x37b720
divsd 0x28fa64(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x4098f(%rip), %xmm0    # 0x12c3a8
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x28fcc5(%rip), %xmm0   # 0x37b6f0
subsd 0x28fd3d(%rip), %xmm0   # 0x37b770
movsd 0x28fcad(%rip), %xmm1   # 0x37b6e8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x28fa25(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x40958(%rip), %xmm0    # 0x12c3b0
addsd -0x30(%rbp), %xmm0
movsd %xmm0, 0x28fccb(%rip)   # 0x37b730
movsd 0x28fcb3(%rip), %xmm0   # 0x37b720
divsd 0x28f9fb(%rip), %xmm0   # 0x37b470
callq 0x9710
mulsd 0x40936(%rip), %xmm0    # 0x12c3b8
addsd 0x40936(%rip), %xmm0    # 0x12c3c0
movsd %xmm0, -0x30(%rbp)
movsd 0x28fc51(%rip), %xmm0   # 0x37b6e8
addsd %xmm0, %xmm0
subsd 0x28fc7d(%rip), %xmm0   # 0x37b720
divsd 0x28f9c5(%rip), %xmm0   # 0x37b470
callq 0x9710
mulsd 0x40910(%rip), %xmm0    # 0x12c3c8
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x28fc1e(%rip), %xmm0   # 0x37b6e8
addsd %xmm0, %xmm0
divsd 0x28f99a(%rip), %xmm0   # 0x37b470
callq 0x9710
mulsd 0x408ed(%rip), %xmm0    # 0x12c3d0
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x28fc2b(%rip), %xmm0   # 0x37b720
addsd %xmm0, %xmm0
divsd 0x28f96f(%rip), %xmm0   # 0x37b470
callq 0x9710
mulsd 0x408ca(%rip), %xmm0    # 0x12c3d8
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x28fc00(%rip), %xmm0   # 0x37b720
addsd %xmm0, %xmm0
movsd 0x28fbbc(%rip), %xmm1   # 0x37b6e8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x28f934(%rip), %xmm0   # 0x37b470
callq 0x9710
mulsd 0x40897(%rip), %xmm0    # 0x12c3e0
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x28fc15(%rip), %xmm0   # 0x37b770
movsd 0x28fb85(%rip), %xmm1   # 0x37b6e8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x28f8fd(%rip), %xmm0   # 0x37b470
callq 0x9710
mulsd 0x40868(%rip), %xmm0    # 0x12c3e8
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x28fb56(%rip), %xmm1   # 0x37b6e8
movsd 0x28fb86(%rip), %xmm0   # 0x37b720
addsd %xmm1, %xmm0
addsd %xmm1, %xmm0
divsd 0x28f8c6(%rip), %xmm0   # 0x37b470
callq 0x9710
mulsd 0x40839(%rip), %xmm0    # 0x12c3f0
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x28fb57(%rip), %xmm0   # 0x37b720
addsd 0x28fb9f(%rip), %xmm0   # 0x37b770
movsd 0x28fb0f(%rip), %xmm1   # 0x37b6e8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x28f887(%rip), %xmm0   # 0x37b470
callq 0x9710
mulsd 0x40802(%rip), %xmm0    # 0x12c3f8
addsd -0x30(%rbp), %xmm0
movsd %xmm0, 0x28fb75(%rip)   # 0x37b778
movsd 0x28faed(%rip), %xmm0   # 0x37b6f8
mulsd 0x4068d(%rip), %xmm0    # 0x12c2a0
addsd 0x28fb1d(%rip), %xmm0   # 0x37b738
movsd %xmm0, 0x28fb15(%rip)   # 0x37b738
movsd 0x28f845(%rip), %xmm1   # 0x37b470
movsd 0x40625(%rip), %xmm0    # 0x12c258
divsd %xmm1, %xmm0
movsd %xmm0, 0x28fac1(%rip)   # 0x37b700
movsd 0x28fae9(%rip), %xmm0   # 0x37b730
divsd %xmm1, %xmm0
callq 0x9080
movsd %xmm0, 0x28fae8(%rip)   # 0x37b740
movsd 0x28fad0(%rip), %xmm0   # 0x37b730
divsd 0x28f808(%rip), %xmm0   # 0x37b470
callq 0x9710
movsd %xmm0, 0x28fab3(%rip)   # 0x37b728
movsd 0x28fabb(%rip), %xmm0   # 0x37b738
divsd 0x28f7eb(%rip), %xmm0   # 0x37b470
callq 0x9080
movsd %xmm0, 0x28fabe(%rip)   # 0x37b750
movsd 0x28fa9e(%rip), %xmm0   # 0x37b738
divsd 0x28f7ce(%rip), %xmm0   # 0x37b470
callq 0x9710
movsd 0x28fac9(%rip), %xmm1   # 0x37b778
mulsd %xmm1, %xmm0
movsd 0x28fa6d(%rip), %xmm2   # 0x37b728
mulsd %xmm2, %xmm0
movsd %xmm0, 0x28fa41(%rip)   # 0x37b708
movsd 0x28fa81(%rip), %xmm0   # 0x37b750
mulsd %xmm1, %xmm0
mulsd %xmm2, %xmm0
movsd %xmm0, 0x28fa31(%rip)   # 0x37b710
mulsd 0x28fa59(%rip), %xmm1   # 0x37b740
movsd %xmm1, 0x28fa29(%rip)   # 0x37b718
movsd 0x28fa09(%rip), %xmm0   # 0x37b700
xorps 0x1d4b2(%rip), %xmm0    # 0x1091b0
movaps %xmm0, -0x30(%rbp)
callq 0x9080
movsd %xmm0, 0x28fb21(%rip)   # 0x37b830
movapd -0x30(%rbp), %xmm0
callq 0x9710
movsd 0x28f9e7(%rip), %xmm1   # 0x37b708
movsd %xmm1, 0x28fa2f(%rip)   # 0x37b758
movsd 0x28f9df(%rip), %xmm1   # 0x37b710
movsd 0x28faf7(%rip), %xmm2   # 0x37b830
movsd 0x28f9d7(%rip), %xmm3   # 0x37b718
movapd %xmm0, %xmm4
mulsd %xmm1, %xmm4
mulsd %xmm2, %xmm1
mulsd %xmm3, %xmm2
addsd %xmm2, %xmm4
movsd %xmm4, 0x28fa03(%rip)   # 0x37b760
mulsd %xmm3, %xmm0
subsd %xmm1, %xmm0
movsd %xmm0, 0x28f9fb(%rip)   # 0x37b768
leaq 0x28f96c(%rip), %rdx    # 0x37b6e0
movq %r15, %rdi
movq %r14, %rsi
callq 0xedecd
movsd 0x28f959(%rip), %xmm0   # 0x37b6e0
callq 0x9080
movsd %xmm0, 0x28faa4(%rip)   # 0x37b838
movsd 0x28f944(%rip), %xmm0   # 0x37b6e0
callq 0x9710
movsd 0x28f9af(%rip), %xmm1   # 0x37b758
movsd 0x28fa87(%rip), %xmm2   # 0x37b838
movsd 0x28f9a7(%rip), %xmm3   # 0x37b760
movapd %xmm0, %xmm4
mulsd %xmm1, %xmm4
mulsd %xmm2, %xmm1
mulsd %xmm3, %xmm2
addsd %xmm2, %xmm4
movsd %xmm4, (%rbx)
mulsd %xmm3, %xmm0
subsd %xmm1, %xmm0
movsd %xmm0, 0x8(%rbx)
movsd 0x28f982(%rip), %xmm0   # 0x37b768
movsd %xmm0, 0x10(%rbx)
xorl %eax, %eax
addq $0x18, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq