// File: /workspace/github_cpp_makefile_star2_O1/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 0xeb37c
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x18, %rsp
movq %rdx, %rbx
movq %rsi, %r14
movq %rdi, %r15
leaq 0x2226ab(%rip), %rax    # 0x30d08c
testb $0x1, (%rax)
jne 0xeaa30
movsd 0x290a6a(%rip), %xmm0   # 0x37b458
movsd %xmm0, 0x290e0a(%rip)   # 0x37b800
movsd 0x290a62(%rip), %xmm0   # 0x37b460
movsd %xmm0, 0x290e02(%rip)   # 0x37b808
movsd 0x290a5a(%rip), %xmm0   # 0x37b468
movsd %xmm0, 0x290e32(%rip)   # 0x37b848
leaq 0x222b13(%rip), %rax    # 0x30d530
movsd (%rax), %xmm0
movl $0x1, %edi
callq 0xe0757
jmp 0xeb1b8
movsd 0x1e5e0(%rip), %xmm0    # 0x109018
movsd (%r14), %xmm2
mulsd %xmm0, %xmm2
addsd 0x41737(%rip), %xmm2    # 0x12c180
cvtsi2sdl (%r15), %xmm1
divsd %xmm0, %xmm2
addsd %xmm2, %xmm1
addsd 0x33cba(%rip), %xmm1    # 0x11e718
addsd 0x40cea(%rip), %xmm1    # 0x12b750
divsd 0x40cea(%rip), %xmm1    # 0x12b758
movsd %xmm1, 0x290d52(%rip)   # 0x37b7c8
movsd 0x4174a(%rip), %xmm0    # 0x12c1c8
mulsd %xmm1, %xmm0
addsd 0x41746(%rip), %xmm0    # 0x12c1d0
movsd 0x41746(%rip), %xmm2    # 0x12c1d8
mulsd %xmm1, %xmm2
addsd %xmm0, %xmm2
movsd %xmm2, -0x30(%rbp)
movsd %xmm2, 0x290d71(%rip)   # 0x37b818
movsd 0x41731(%rip), %xmm0    # 0x12c1e0
mulsd %xmm1, %xmm0
addsd 0x4172d(%rip), %xmm0    # 0x12c1e8
movsd %xmm0, 0x290d2d(%rip)   # 0x37b7f0
movsd 0x41725(%rip), %xmm2    # 0x12c1f0
mulsd %xmm1, %xmm2
addsd 0x41721(%rip), %xmm2    # 0x12c1f8
movsd %xmm2, 0x290d61(%rip)   # 0x37b840
movsd 0x41719(%rip), %xmm2    # 0x12c200
mulsd %xmm1, %xmm2
addsd 0x41715(%rip), %xmm2    # 0x12c208
mulsd 0x41715(%rip), %xmm1    # 0x12c210
addsd 0x41715(%rip), %xmm1    # 0x12c218
movsd %xmm2, 0x290cb5(%rip)   # 0x37b7c0
movsd %xmm1, 0x290ca5(%rip)   # 0x37b7b8
divsd 0x290955(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x416f8(%rip), %xmm0    # 0x12c220
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x290cb6(%rip), %xmm0   # 0x37b7f0
addsd %xmm0, %xmm0
divsd 0x29092a(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x416d5(%rip), %xmm0    # 0x12c228
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x290c8b(%rip), %xmm0   # 0x37b7f0
movsd 0x290c4b(%rip), %xmm1   # 0x37b7b8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x2908f3(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x416a6(%rip), %xmm0    # 0x12c230
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x290c1c(%rip), %xmm0   # 0x37b7b8
addsd %xmm0, %xmm0
divsd 0x2908c8(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x41683(%rip), %xmm0    # 0x12c238
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x290c79(%rip), %xmm0   # 0x37b840
divsd 0x2908a1(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x41664(%rip), %xmm0    # 0x12c240
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x290bd2(%rip), %xmm0   # 0x37b7c0
addsd %xmm0, %xmm0
divsd 0x290876(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x41641(%rip), %xmm0    # 0x12c248
movsd -0x30(%rbp), %xmm1
subsd %xmm0, %xmm1
movsd %xmm1, -0x30(%rbp)
movsd 0x290bd3(%rip), %xmm0   # 0x37b7f0
addsd %xmm0, %xmm0
movsd 0x290b8f(%rip), %xmm1   # 0x37b7b8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x290837(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x4160a(%rip), %xmm0    # 0x12c250
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x290b98(%rip), %xmm0   # 0x37b7f0
addsd 0x290be0(%rip), %xmm0   # 0x37b840
movsd 0x290b50(%rip), %xmm1   # 0x37b7b8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x2907f8(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x415d3(%rip), %xmm0    # 0x12c258
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x290b21(%rip), %xmm1   # 0x37b7b8
movsd 0x290b51(%rip), %xmm0   # 0x37b7f0
addsd %xmm1, %xmm0
addsd %xmm1, %xmm0
divsd 0x2907c1(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x415a4(%rip), %xmm0    # 0x12c260
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x290b72(%rip), %xmm0   # 0x37b840
movsd 0x290ae2(%rip), %xmm1   # 0x37b7b8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x29078a(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x41575(%rip), %xmm0    # 0x12c268
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x290aeb(%rip), %xmm0   # 0x37b7f0
subsd 0x290b33(%rip), %xmm0   # 0x37b840
divsd 0x29075b(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x4154e(%rip), %xmm0    # 0x12c270
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x290a84(%rip), %xmm0   # 0x37b7b8
divsd 0x290734(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x4152f(%rip), %xmm0    # 0x12c278
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x290a95(%rip), %xmm0   # 0x37b7f0
addsd 0x290add(%rip), %xmm0   # 0x37b840
divsd 0x290705(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x41508(%rip), %xmm0    # 0x12c280
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x290a36(%rip), %xmm0   # 0x37b7c0
addsd %xmm0, %xmm0
movsd 0x290a22(%rip), %xmm1   # 0x37b7b8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x2906ca(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x414d5(%rip), %xmm0    # 0x12c288
addsd -0x30(%rbp), %xmm0
movsd %xmm0, 0x290a48(%rip)   # 0x37b808
movsd 0x2909f8(%rip), %xmm0   # 0x37b7c0
addsd %xmm0, %xmm0
divsd 0x29069c(%rip), %xmm0   # 0x37b470
callq 0x9080
movsd %xmm0, -0x30(%rbp)
movsd 0x290a5a(%rip), %xmm0   # 0x37b840
divsd 0x290682(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x41495(%rip), %xmm0    # 0x12c290
movsd -0x30(%rbp), %xmm2
mulsd 0x41440(%rip), %xmm2    # 0x12c248
movsd 0x2909b0(%rip), %xmm1   # 0x37b7c0
addsd 0x2909f0(%rip), %xmm1   # 0x37b808
subsd 0x2909f8(%rip), %xmm1   # 0x37b818
addsd %xmm2, %xmm0
addsd %xmm1, %xmm0
divsd 0x290640(%rip), %xmm0   # 0x37b470
callq 0x9080
movsd %xmm0, -0x30(%rbp)
movsd 0x29097e(%rip), %xmm0   # 0x37b7c0
movsd 0x29096e(%rip), %xmm1   # 0x37b7b8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x290616(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x41431(%rip), %xmm0    # 0x12c298
movsd -0x30(%rbp), %xmm1
mulsd 0x4142c(%rip), %xmm1    # 0x12c2a0
addsd %xmm0, %xmm1
movsd %xmm1, -0x30(%rbp)
movsd 0x29096b(%rip), %xmm0   # 0x37b7f0
addsd 0x290933(%rip), %xmm0   # 0x37b7c0
movsd 0x290923(%rip), %xmm1   # 0x37b7b8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x2905cb(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x413f6(%rip), %xmm0    # 0x12c2a8
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x2908fc(%rip), %xmm0   # 0x37b7c0
subsd 0x290924(%rip), %xmm0   # 0x37b7f0
movsd 0x2908e4(%rip), %xmm1   # 0x37b7b8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x29058c(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x413bf(%rip), %xmm0    # 0x12c2b0
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x2908ed(%rip), %xmm1   # 0x37b7f0
movapd 0x1e295(%rip), %xmm0    # 0x1091a0
xorpd %xmm1, %xmm0
subsd %xmm1, %xmm0
addsd 0x2908a5(%rip), %xmm0   # 0x37b7c0
divsd 0x29054d(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x41388(%rip), %xmm0    # 0x12c2b8
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x2908fe(%rip), %xmm0   # 0x37b840
addsd 0x290876(%rip), %xmm0   # 0x37b7c0
movsd 0x290866(%rip), %xmm1   # 0x37b7b8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x29050e(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x41351(%rip), %xmm0    # 0x12c2c0
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x29083f(%rip), %xmm0   # 0x37b7c0
subsd 0x290867(%rip), %xmm0   # 0x37b7f0
divsd 0x2904df(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x4132a(%rip), %xmm0    # 0x12c2c8
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x290810(%rip), %xmm0   # 0x37b7c0
subsd 0x290888(%rip), %xmm0   # 0x37b840
movsd 0x2907f8(%rip), %xmm1   # 0x37b7b8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x2904a0(%rip), %xmm0   # 0x37b470
callq 0x9080
mulsd 0x412f3(%rip), %xmm0    # 0x12c2d0
addsd -0x30(%rbp), %xmm0
movsd %xmm0, 0x290816(%rip)   # 0x37b800
movsd 0x2907fe(%rip), %xmm0   # 0x37b7f0
divsd 0x290476(%rip), %xmm0   # 0x37b470
callq 0x9710
mulsd 0x412d1(%rip), %xmm0    # 0x12c2d8
addsd 0x412d1(%rip), %xmm0    # 0x12c2e0
movsd %xmm0, -0x30(%rbp)
movsd 0x29079c(%rip), %xmm0   # 0x37b7b8
addsd %xmm0, %xmm0
subsd 0x2907c8(%rip), %xmm0   # 0x37b7f0
divsd 0x290440(%rip), %xmm0   # 0x37b470
callq 0x9710
mulsd 0x412ab(%rip), %xmm0    # 0x12c2e8
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x290769(%rip), %xmm0   # 0x37b7b8
addsd %xmm0, %xmm0
divsd 0x290415(%rip), %xmm0   # 0x37b470
callq 0x9710
mulsd 0x41288(%rip), %xmm0    # 0x12c2f0
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x290776(%rip), %xmm0   # 0x37b7f0
addsd %xmm0, %xmm0
divsd 0x2903ea(%rip), %xmm0   # 0x37b470
callq 0x9710
mulsd 0x41265(%rip), %xmm0    # 0x12c2f8
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x29074b(%rip), %xmm0   # 0x37b7f0
addsd %xmm0, %xmm0
movsd 0x290707(%rip), %xmm1   # 0x37b7b8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x2903af(%rip), %xmm0   # 0x37b470
callq 0x9710
mulsd 0x41232(%rip), %xmm0    # 0x12c300
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x290760(%rip), %xmm0   # 0x37b840
movsd 0x2906d0(%rip), %xmm1   # 0x37b7b8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x290378(%rip), %xmm0   # 0x37b470
callq 0x9710
mulsd 0x41203(%rip), %xmm0    # 0x12c308
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x2906a1(%rip), %xmm1   # 0x37b7b8
movsd 0x2906d1(%rip), %xmm0   # 0x37b7f0
addsd %xmm1, %xmm0
addsd %xmm1, %xmm0
divsd 0x290341(%rip), %xmm0   # 0x37b470
callq 0x9710
mulsd 0x411d4(%rip), %xmm0    # 0x12c310
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
movsd 0x2906a2(%rip), %xmm0   # 0x37b7f0
addsd 0x2906ea(%rip), %xmm0   # 0x37b840
movsd 0x29065a(%rip), %xmm1   # 0x37b7b8
subsd %xmm1, %xmm0
subsd %xmm1, %xmm0
divsd 0x290302(%rip), %xmm0   # 0x37b470
callq 0x9710
mulsd 0x4119d(%rip), %xmm0    # 0x12c318
addsd -0x30(%rbp), %xmm0
movsd %xmm0, 0x2906c0(%rip)   # 0x37b848
movsd 0x290638(%rip), %xmm0   # 0x37b7c8
mulsd 0x41028(%rip), %xmm0    # 0x12c1c0
addsd 0x290668(%rip), %xmm0   # 0x37b808
movsd %xmm0, 0x290660(%rip)   # 0x37b808
movsd 0x40fc8(%rip), %xmm0    # 0x12c178
divsd 0x2902b8(%rip), %xmm0   # 0x37b470
movsd %xmm0, 0x290610(%rip)   # 0x37b7d0
movsd 0x290638(%rip), %xmm0   # 0x37b800
divsd 0x2902a0(%rip), %xmm0   # 0x37b470
callq 0x9080
movsd %xmm0, 0x290633(%rip)   # 0x37b810
movsd 0x29061b(%rip), %xmm0   # 0x37b800
divsd 0x290283(%rip), %xmm0   # 0x37b470
callq 0x9710
movsd %xmm0, 0x2905fe(%rip)   # 0x37b7f8
movsd 0x290606(%rip), %xmm0   # 0x37b808
divsd 0x290266(%rip), %xmm0   # 0x37b470
callq 0x9080
movsd %xmm0, 0x290609(%rip)   # 0x37b820
movsd 0x2905e9(%rip), %xmm0   # 0x37b808
divsd 0x290249(%rip), %xmm0   # 0x37b470
callq 0x9710
movsd 0x290614(%rip), %xmm1   # 0x37b848
mulsd %xmm1, %xmm0
movsd 0x2905b8(%rip), %xmm2   # 0x37b7f8
mulsd %xmm2, %xmm0
movsd %xmm0, 0x29058c(%rip)   # 0x37b7d8
movsd 0x2905cc(%rip), %xmm0   # 0x37b820
mulsd %xmm1, %xmm0
mulsd %xmm2, %xmm0
movsd %xmm0, 0x29057c(%rip)   # 0x37b7e0
mulsd 0x2905a4(%rip), %xmm1   # 0x37b810
movsd %xmm1, 0x290574(%rip)   # 0x37b7e8
movsd 0x290554(%rip), %xmm0   # 0x37b7d0
xorps 0x1df1d(%rip), %xmm0    # 0x1091a0
movaps %xmm0, -0x30(%rbp)
callq 0x9080
movsd %xmm0, 0x290674(%rip)   # 0x37b908
movapd -0x30(%rbp), %xmm0
callq 0x9710
movsd 0x290532(%rip), %xmm1   # 0x37b7d8
movsd %xmm1, 0x29057a(%rip)   # 0x37b828
movsd 0x29052a(%rip), %xmm1   # 0x37b7e0
movsd 0x29064a(%rip), %xmm2   # 0x37b908
movsd 0x290522(%rip), %xmm3   # 0x37b7e8
movapd %xmm0, %xmm4
mulsd %xmm1, %xmm4
mulsd %xmm2, %xmm1
mulsd %xmm3, %xmm2
addsd %xmm2, %xmm4
movsd %xmm4, 0x29054e(%rip)   # 0x37b830
mulsd %xmm3, %xmm0
subsd %xmm1, %xmm0
movsd %xmm0, 0x290546(%rip)   # 0x37b838
leaq 0x2904b7(%rip), %rdx    # 0x37b7b0
movq %r15, %rdi
movq %r14, %rsi
callq 0xed864
movsd 0x2904a4(%rip), %xmm0   # 0x37b7b0
callq 0x9080
movsd %xmm0, 0x2905f7(%rip)   # 0x37b910
movsd 0x29048f(%rip), %xmm0   # 0x37b7b0
callq 0x9710
movsd 0x2904fa(%rip), %xmm1   # 0x37b828
movsd 0x2905da(%rip), %xmm2   # 0x37b910
movsd 0x2904f2(%rip), %xmm3   # 0x37b830
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 0x2904cd(%rip), %xmm0   # 0x37b838
movsd %xmm0, 0x10(%rbx)
xorl %eax, %eax
addq $0x18, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq