// File: cphinton42[P]hinton-language/src/stb/stb_sprintf.h
// Function: stbsp__raise_to_power10(double*, double*, double, int)
static void stbsp__raise_to_power10( double *ohi, double *olo, double d, stbsp__int32 power )  // power can be -323 to +350
{
  double ph, pl;
  if ((power>=0) && (power<=22))
  {
    stbsp__ddmulthi(ph,pl,d,stbsp__bot[power]);
  }
  else
  {
    stbsp__int32 e,et,eb;
    double p2h,p2l;

    e=power; if (power<0) e=-e; 
    et = (e*0x2c9)>>14;/* %23 */ if (et>13) et=13; eb = e-(et*23);

    ph = d; pl = 0.0;
    if (power<0)
    {
      if (eb) { --eb; stbsp__ddmulthi(ph,pl,d,stbsp__negbot[eb]); stbsp__ddmultlos(ph,pl,d,stbsp__negboterr[eb]); }
      if (et)
      { 
        stbsp__ddrenorm(ph,pl);
        --et; stbsp__ddmulthi(p2h,p2l,ph,stbsp__negtop[et]); stbsp__ddmultlo(p2h,p2l,ph,pl,stbsp__negtop[et],stbsp__negtoperr[et]); ph=p2h;pl=p2l;
      }
    }
    else
    {
      if (eb) 
      { 
        e = eb; if (eb>22) eb=22; e -= eb;
        stbsp__ddmulthi(ph,pl,d,stbsp__bot[eb]); 
        if ( e ) { stbsp__ddrenorm(ph,pl); stbsp__ddmulthi(p2h,p2l,ph,stbsp__bot[e]); stbsp__ddmultlos(p2h,p2l,stbsp__bot[e],pl); ph=p2h;pl=p2l; }
      }
      if (et)
      {
        stbsp__ddrenorm(ph,pl);
        --et; stbsp__ddmulthi(p2h,p2l,ph,stbsp__top[et]); stbsp__ddmultlo(p2h,p2l,ph,pl,stbsp__top[et],stbsp__toperr[et]); ph=p2h;pl=p2l;
      }
    }
  }
  stbsp__ddrenorm(ph,pl);
  *ohi = ph; *olo = pl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x140, %rsp            # imm = 0x140
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movsd %xmm0, -0x18(%rbp)
movl %edx, -0x1c(%rbp)
cmpl $0x0, -0x1c(%rbp)
jl 0x1618d
cmpl $0x16, -0x1c(%rbp)
jg 0x1618d
xorps %xmm0, %xmm0
movsd %xmm0, -0x38(%rbp)
xorps %xmm0, %xmm0
movsd %xmm0, -0x48(%rbp)
movsd -0x18(%rbp), %xmm0
movslq -0x1c(%rbp), %rcx
leaq 0x3901(%rip), %rax      # 0x19920
mulsd (%rax,%rcx,8), %xmm0
movsd %xmm0, -0x28(%rbp)
movl $0x0, -0x5c(%rbp)
cmpl $0x8, -0x5c(%rbp)
jge 0x16051
movslq -0x5c(%rbp), %rax
movb -0x18(%rbp,%rax), %cl
movslq -0x5c(%rbp), %rax
movb %cl, -0x58(%rbp,%rax)
movl -0x5c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x5c(%rbp)
jmp 0x16030
movq -0x58(%rbp), %rax
andq $-0x8000000, %rax       # imm = 0xF8000000
movq %rax, -0x58(%rbp)
movl $0x0, -0x60(%rbp)
cmpl $0x8, -0x60(%rbp)
jge 0x16087
movslq -0x60(%rbp), %rax
movb -0x58(%rbp,%rax), %cl
movslq -0x60(%rbp), %rax
movb %cl, -0x38(%rbp,%rax)
movl -0x60(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x60(%rbp)
jmp 0x16066
movsd -0x18(%rbp), %xmm0
subsd -0x38(%rbp), %xmm0
movsd %xmm0, -0x40(%rbp)
movl $0x0, -0x64(%rbp)
cmpl $0x8, -0x64(%rbp)
jge 0x160cf
movslq -0x1c(%rbp), %rcx
leaq 0x3872(%rip), %rax      # 0x19920
shlq $0x3, %rcx
addq %rcx, %rax
movslq -0x64(%rbp), %rcx
movb (%rax,%rcx), %cl
movslq -0x64(%rbp), %rax
movb %cl, -0x58(%rbp,%rax)
movl -0x64(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x64(%rbp)
jmp 0x1609d
movq -0x58(%rbp), %rax
andq $-0x8000000, %rax       # imm = 0xF8000000
movq %rax, -0x58(%rbp)
movl $0x0, -0x68(%rbp)
cmpl $0x8, -0x68(%rbp)
jge 0x16105
movslq -0x68(%rbp), %rax
movb -0x58(%rbp,%rax), %cl
movslq -0x68(%rbp), %rax
movb %cl, -0x48(%rbp,%rax)
movl -0x68(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x68(%rbp)
jmp 0x160e4
movslq -0x1c(%rbp), %rcx
leaq 0x3810(%rip), %rax      # 0x19920
movsd (%rax,%rcx,8), %xmm0
subsd -0x48(%rbp), %xmm0
movsd %xmm0, -0x50(%rbp)
movsd -0x38(%rbp), %xmm1
movsd -0x48(%rbp), %xmm2
movsd -0x28(%rbp), %xmm0
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
mulsd %xmm2, %xmm1
addsd %xmm0, %xmm1
movsd -0x38(%rbp), %xmm0
movsd -0x50(%rbp), %xmm2
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
movsd -0x40(%rbp), %xmm1
movsd -0x48(%rbp), %xmm2
mulsd %xmm2, %xmm1
addsd %xmm0, %xmm1
movsd -0x40(%rbp), %xmm0
movsd -0x50(%rbp), %xmm2
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
movsd %xmm0, -0x30(%rbp)
jmp 0x16eb2
movl -0x1c(%rbp), %eax
movl %eax, -0x6c(%rbp)
cmpl $0x0, -0x1c(%rbp)
jge 0x161a1
xorl %eax, %eax
subl -0x6c(%rbp), %eax
movl %eax, -0x6c(%rbp)
imull $0x2c9, -0x6c(%rbp), %eax # imm = 0x2C9
sarl $0xe, %eax
movl %eax, -0x70(%rbp)
cmpl $0xd, -0x70(%rbp)
jle 0x161bb
movl $0xd, -0x70(%rbp)
movl -0x6c(%rbp), %eax
imull $0x17, -0x70(%rbp), %ecx
subl %ecx, %eax
movl %eax, -0x74(%rbp)
movsd -0x18(%rbp), %xmm0
movsd %xmm0, -0x28(%rbp)
xorps %xmm0, %xmm0
movsd %xmm0, -0x30(%rbp)
cmpl $0x0, -0x1c(%rbp)
jge 0x16701
cmpl $0x0, -0x74(%rbp)
je 0x16436
movl -0x74(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0x74(%rbp)
xorps %xmm0, %xmm0
movsd %xmm0, -0x90(%rbp)
xorps %xmm0, %xmm0
movsd %xmm0, -0xa0(%rbp)
movsd -0x18(%rbp), %xmm0
movslq -0x74(%rbp), %rcx
leaq 0x37c4(%rip), %rax      # 0x199e0
mulsd (%rax,%rcx,8), %xmm0
movsd %xmm0, -0x28(%rbp)
movl $0x0, -0xb4(%rbp)
cmpl $0x8, -0xb4(%rbp)
jge 0x16263
movslq -0xb4(%rbp), %rax
movb -0x18(%rbp,%rax), %cl
movslq -0xb4(%rbp), %rax
movb %cl, -0xb0(%rbp,%rax)
movl -0xb4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xb4(%rbp)
jmp 0x16230
movq -0xb0(%rbp), %rax
andq $-0x8000000, %rax       # imm = 0xF8000000
movq %rax, -0xb0(%rbp)
movl $0x0, -0xb8(%rbp)
cmpl $0x8, -0xb8(%rbp)
jge 0x162b7
movslq -0xb8(%rbp), %rax
movb -0xb0(%rbp,%rax), %cl
movslq -0xb8(%rbp), %rax
movb %cl, -0x90(%rbp,%rax)
movl -0xb8(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xb8(%rbp)
jmp 0x16281
movsd -0x18(%rbp), %xmm0
subsd -0x90(%rbp), %xmm0
movsd %xmm0, -0x98(%rbp)
movl $0x0, -0xbc(%rbp)
cmpl $0x8, -0xbc(%rbp)
jge 0x1631a
movslq -0x74(%rbp), %rcx
leaq 0x36f6(%rip), %rax      # 0x199e0
shlq $0x3, %rcx
addq %rcx, %rax
movslq -0xbc(%rbp), %rcx
movb (%rax,%rcx), %cl
movslq -0xbc(%rbp), %rax
movb %cl, -0xb0(%rbp,%rax)
movl -0xbc(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xbc(%rbp)
jmp 0x162d6
movq -0xb0(%rbp), %rax
andq $-0x8000000, %rax       # imm = 0xF8000000
movq %rax, -0xb0(%rbp)
movl $0x0, -0xc0(%rbp)
cmpl $0x8, -0xc0(%rbp)
jge 0x1636e
movslq -0xc0(%rbp), %rax
movb -0xb0(%rbp,%rax), %cl
movslq -0xc0(%rbp), %rax
movb %cl, -0xa0(%rbp,%rax)
movl -0xc0(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xc0(%rbp)
jmp 0x16338
movslq -0x74(%rbp), %rcx
leaq 0x3667(%rip), %rax      # 0x199e0
movsd (%rax,%rcx,8), %xmm0
subsd -0xa0(%rbp), %xmm0
movsd %xmm0, -0xa8(%rbp)
movsd -0x90(%rbp), %xmm1
movsd -0xa0(%rbp), %xmm2
movsd -0x28(%rbp), %xmm0
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
mulsd %xmm2, %xmm1
addsd %xmm0, %xmm1
movsd -0x90(%rbp), %xmm0
movsd -0xa8(%rbp), %xmm2
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
movsd -0x98(%rbp), %xmm1
movsd -0xa0(%rbp), %xmm2
mulsd %xmm2, %xmm1
addsd %xmm0, %xmm1
movsd -0x98(%rbp), %xmm0
movsd -0xa8(%rbp), %xmm2
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
movsd %xmm0, -0x30(%rbp)
movsd -0x30(%rbp), %xmm1
movsd -0x18(%rbp), %xmm0
movslq -0x74(%rbp), %rcx
leaq 0x366c(%rip), %rax      # 0x19a90
movsd (%rax,%rcx,8), %xmm2
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
movsd %xmm0, -0x30(%rbp)
cmpl $0x0, -0x70(%rbp)
je 0x166fc
movsd -0x28(%rbp), %xmm0
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0xc8(%rbp)
movsd -0x30(%rbp), %xmm0
movsd -0xc8(%rbp), %xmm1
subsd -0x28(%rbp), %xmm1
subsd %xmm1, %xmm0
movsd %xmm0, -0x30(%rbp)
movsd -0xc8(%rbp), %xmm0
movsd %xmm0, -0x28(%rbp)
movl -0x70(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0x70(%rbp)
xorps %xmm0, %xmm0
movsd %xmm0, -0xd0(%rbp)
xorps %xmm0, %xmm0
movsd %xmm0, -0xe0(%rbp)
movsd -0x28(%rbp), %xmm0
movslq -0x70(%rbp), %rcx
leaq 0x3697(%rip), %rax      # 0x19b40
mulsd (%rax,%rcx,8), %xmm0
movsd %xmm0, -0x80(%rbp)
movl $0x0, -0xf4(%rbp)
cmpl $0x8, -0xf4(%rbp)
jge 0x164f0
movslq -0xf4(%rbp), %rax
movb -0x28(%rbp,%rax), %cl
movslq -0xf4(%rbp), %rax
movb %cl, -0xf0(%rbp,%rax)
movl -0xf4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xf4(%rbp)
jmp 0x164bd
movq -0xf0(%rbp), %rax
andq $-0x8000000, %rax       # imm = 0xF8000000
movq %rax, -0xf0(%rbp)
movl $0x0, -0xf8(%rbp)
cmpl $0x8, -0xf8(%rbp)
jge 0x16544
movslq -0xf8(%rbp), %rax
movb -0xf0(%rbp,%rax), %cl
movslq -0xf8(%rbp), %rax
movb %cl, -0xd0(%rbp,%rax)
movl -0xf8(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xf8(%rbp)
jmp 0x1650e
movsd -0x28(%rbp), %xmm0
subsd -0xd0(%rbp), %xmm0
movsd %xmm0, -0xd8(%rbp)
movl $0x0, -0xfc(%rbp)
cmpl $0x8, -0xfc(%rbp)
jge 0x165a7
movslq -0x70(%rbp), %rcx
leaq 0x35c9(%rip), %rax      # 0x19b40
shlq $0x3, %rcx
addq %rcx, %rax
movslq -0xfc(%rbp), %rcx
movb (%rax,%rcx), %cl
movslq -0xfc(%rbp), %rax
movb %cl, -0xf0(%rbp,%rax)
movl -0xfc(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xfc(%rbp)
jmp 0x16563
movq -0xf0(%rbp), %rax
andq $-0x8000000, %rax       # imm = 0xF8000000
movq %rax, -0xf0(%rbp)
movl $0x0, -0x100(%rbp)
cmpl $0x8, -0x100(%rbp)
jge 0x165fb
movslq -0x100(%rbp), %rax
movb -0xf0(%rbp,%rax), %cl
movslq -0x100(%rbp), %rax
movb %cl, -0xe0(%rbp,%rax)
movl -0x100(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x100(%rbp)
jmp 0x165c5
movslq -0x70(%rbp), %rcx
leaq 0x353a(%rip), %rax      # 0x19b40
movsd (%rax,%rcx,8), %xmm0
subsd -0xe0(%rbp), %xmm0
movsd %xmm0, -0xe8(%rbp)
movsd -0xd0(%rbp), %xmm1
movsd -0xe0(%rbp), %xmm2
movsd -0x80(%rbp), %xmm0
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
mulsd %xmm2, %xmm1
addsd %xmm0, %xmm1
movsd -0xd0(%rbp), %xmm0
movsd -0xe8(%rbp), %xmm2
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
movsd -0xd8(%rbp), %xmm1
movsd -0xe0(%rbp), %xmm2
mulsd %xmm2, %xmm1
addsd %xmm0, %xmm1
movsd -0xd8(%rbp), %xmm0
movsd -0xe8(%rbp), %xmm2
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
movsd %xmm0, -0x88(%rbp)
movsd -0x88(%rbp), %xmm0
movsd -0x28(%rbp), %xmm1
movslq -0x70(%rbp), %rcx
leaq 0x34f9(%rip), %rax      # 0x19bb0
movsd (%rax,%rcx,8), %xmm3
movsd -0x30(%rbp), %xmm2
movslq -0x70(%rbp), %rcx
leaq 0x3474(%rip), %rax      # 0x19b40
mulsd (%rax,%rcx,8), %xmm2
mulsd %xmm3, %xmm1
addsd %xmm2, %xmm1
addsd %xmm1, %xmm0
movsd %xmm0, -0x88(%rbp)
movsd -0x80(%rbp), %xmm0
movsd %xmm0, -0x28(%rbp)
movsd -0x88(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
jmp 0x16eb0
cmpl $0x0, -0x74(%rbp)
je 0x16be8
movl -0x74(%rbp), %eax
movl %eax, -0x6c(%rbp)
cmpl $0x16, -0x74(%rbp)
jle 0x1671e
movl $0x16, -0x74(%rbp)
movl -0x74(%rbp), %ecx
movl -0x6c(%rbp), %eax
subl %ecx, %eax
movl %eax, -0x6c(%rbp)
xorps %xmm0, %xmm0
movsd %xmm0, -0x108(%rbp)
xorps %xmm0, %xmm0
movsd %xmm0, -0x118(%rbp)
movsd -0x18(%rbp), %xmm0
movslq -0x74(%rbp), %rcx
leaq 0x31d1(%rip), %rax      # 0x19920
mulsd (%rax,%rcx,8), %xmm0
movsd %xmm0, -0x28(%rbp)
movl $0x0, -0x12c(%rbp)
cmpl $0x8, -0x12c(%rbp)
jge 0x16796
movslq -0x12c(%rbp), %rax
movb -0x18(%rbp,%rax), %cl
movslq -0x12c(%rbp), %rax
movb %cl, -0x128(%rbp,%rax)
movl -0x12c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x12c(%rbp)
jmp 0x16763
movq -0x128(%rbp), %rax
andq $-0x8000000, %rax       # imm = 0xF8000000
movq %rax, -0x128(%rbp)
movl $0x0, -0x130(%rbp)
cmpl $0x8, -0x130(%rbp)
jge 0x167ea
movslq -0x130(%rbp), %rax
movb -0x128(%rbp,%rax), %cl
movslq -0x130(%rbp), %rax
movb %cl, -0x108(%rbp,%rax)
movl -0x130(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x130(%rbp)
jmp 0x167b4
movsd -0x18(%rbp), %xmm0
subsd -0x108(%rbp), %xmm0
movsd %xmm0, -0x110(%rbp)
movl $0x0, -0x134(%rbp)
cmpl $0x8, -0x134(%rbp)
jge 0x1684d
movslq -0x74(%rbp), %rcx
leaq 0x3103(%rip), %rax      # 0x19920
shlq $0x3, %rcx
addq %rcx, %rax
movslq -0x134(%rbp), %rcx
movb (%rax,%rcx), %cl
movslq -0x134(%rbp), %rax
movb %cl, -0x128(%rbp,%rax)
movl -0x134(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x134(%rbp)
jmp 0x16809
movq -0x128(%rbp), %rax
andq $-0x8000000, %rax       # imm = 0xF8000000
movq %rax, -0x128(%rbp)
movl $0x0, -0x138(%rbp)
cmpl $0x8, -0x138(%rbp)
jge 0x168a1
movslq -0x138(%rbp), %rax
movb -0x128(%rbp,%rax), %cl
movslq -0x138(%rbp), %rax
movb %cl, -0x118(%rbp,%rax)
movl -0x138(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x138(%rbp)
jmp 0x1686b
movslq -0x74(%rbp), %rcx
leaq 0x3074(%rip), %rax      # 0x19920
movsd (%rax,%rcx,8), %xmm0
subsd -0x118(%rbp), %xmm0
movsd %xmm0, -0x120(%rbp)
movsd -0x108(%rbp), %xmm1
movsd -0x118(%rbp), %xmm2
movsd -0x28(%rbp), %xmm0
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
mulsd %xmm2, %xmm1
addsd %xmm0, %xmm1
movsd -0x108(%rbp), %xmm0
movsd -0x120(%rbp), %xmm2
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
movsd -0x110(%rbp), %xmm1
movsd -0x118(%rbp), %xmm2
mulsd %xmm2, %xmm1
addsd %xmm0, %xmm1
movsd -0x110(%rbp), %xmm0
movsd -0x120(%rbp), %xmm2
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
movsd %xmm0, -0x30(%rbp)
cmpl $0x0, -0x6c(%rbp)
je 0x16be6
movsd -0x28(%rbp), %xmm0
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x140(%rbp)
movsd -0x30(%rbp), %xmm0
movsd -0x140(%rbp), %xmm1
subsd -0x28(%rbp), %xmm1
subsd %xmm1, %xmm0
movsd %xmm0, -0x30(%rbp)
movsd -0x140(%rbp), %xmm0
movsd %xmm0, -0x28(%rbp)
xorps %xmm0, %xmm0
movsd %xmm0, -0x148(%rbp)
xorps %xmm0, %xmm0
movsd %xmm0, -0x158(%rbp)
movsd -0x28(%rbp), %xmm0
movslq -0x6c(%rbp), %rcx
leaq 0x2f74(%rip), %rax      # 0x19920
mulsd (%rax,%rcx,8), %xmm0
movsd %xmm0, -0x80(%rbp)
movl $0x0, -0x16c(%rbp)
cmpl $0x8, -0x16c(%rbp)
jge 0x169f3
movslq -0x16c(%rbp), %rax
movb -0x28(%rbp,%rax), %cl
movslq -0x16c(%rbp), %rax
movb %cl, -0x168(%rbp,%rax)
movl -0x16c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x16c(%rbp)
jmp 0x169c0
movq -0x168(%rbp), %rax
andq $-0x8000000, %rax       # imm = 0xF8000000
movq %rax, -0x168(%rbp)
movl $0x0, -0x170(%rbp)
cmpl $0x8, -0x170(%rbp)
jge 0x16a47
movslq -0x170(%rbp), %rax
movb -0x168(%rbp,%rax), %cl
movslq -0x170(%rbp), %rax
movb %cl, -0x148(%rbp,%rax)
movl -0x170(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x170(%rbp)
jmp 0x16a11
movsd -0x28(%rbp), %xmm0
subsd -0x148(%rbp), %xmm0
movsd %xmm0, -0x150(%rbp)
movl $0x0, -0x174(%rbp)
cmpl $0x8, -0x174(%rbp)
jge 0x16aaa
movslq -0x6c(%rbp), %rcx
leaq 0x2ea6(%rip), %rax      # 0x19920
shlq $0x3, %rcx
addq %rcx, %rax
movslq -0x174(%rbp), %rcx
movb (%rax,%rcx), %cl
movslq -0x174(%rbp), %rax
movb %cl, -0x168(%rbp,%rax)
movl -0x174(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x174(%rbp)
jmp 0x16a66
movq -0x168(%rbp), %rax
andq $-0x8000000, %rax       # imm = 0xF8000000
movq %rax, -0x168(%rbp)
movl $0x0, -0x178(%rbp)
cmpl $0x8, -0x178(%rbp)
jge 0x16afe
movslq -0x178(%rbp), %rax
movb -0x168(%rbp,%rax), %cl
movslq -0x178(%rbp), %rax
movb %cl, -0x158(%rbp,%rax)
movl -0x178(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x178(%rbp)
jmp 0x16ac8
movslq -0x6c(%rbp), %rcx
leaq 0x2e17(%rip), %rax      # 0x19920
movsd (%rax,%rcx,8), %xmm0
subsd -0x158(%rbp), %xmm0
movsd %xmm0, -0x160(%rbp)
movsd -0x148(%rbp), %xmm1
movsd -0x158(%rbp), %xmm2
movsd -0x80(%rbp), %xmm0
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
mulsd %xmm2, %xmm1
addsd %xmm0, %xmm1
movsd -0x148(%rbp), %xmm0
movsd -0x160(%rbp), %xmm2
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
movsd -0x150(%rbp), %xmm1
movsd -0x158(%rbp), %xmm2
mulsd %xmm2, %xmm1
addsd %xmm0, %xmm1
movsd -0x150(%rbp), %xmm0
movsd -0x160(%rbp), %xmm2
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
movsd %xmm0, -0x88(%rbp)
movsd -0x88(%rbp), %xmm1
movslq -0x6c(%rbp), %rcx
leaq 0x2d6b(%rip), %rax      # 0x19920
movsd (%rax,%rcx,8), %xmm0
movsd -0x30(%rbp), %xmm2
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
movsd %xmm0, -0x88(%rbp)
movsd -0x80(%rbp), %xmm0
movsd %xmm0, -0x28(%rbp)
movsd -0x88(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
jmp 0x16be8
cmpl $0x0, -0x70(%rbp)
je 0x16eae
movsd -0x28(%rbp), %xmm0
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x180(%rbp)
movsd -0x30(%rbp), %xmm0
movsd -0x180(%rbp), %xmm1
subsd -0x28(%rbp), %xmm1
subsd %xmm1, %xmm0
movsd %xmm0, -0x30(%rbp)
movsd -0x180(%rbp), %xmm0
movsd %xmm0, -0x28(%rbp)
movl -0x70(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0x70(%rbp)
xorps %xmm0, %xmm0
movsd %xmm0, -0x188(%rbp)
xorps %xmm0, %xmm0
movsd %xmm0, -0x198(%rbp)
movsd -0x28(%rbp), %xmm0
movslq -0x70(%rbp), %rcx
leaq 0x2fc5(%rip), %rax      # 0x19c20
mulsd (%rax,%rcx,8), %xmm0
movsd %xmm0, -0x80(%rbp)
movl $0x0, -0x1ac(%rbp)
cmpl $0x8, -0x1ac(%rbp)
jge 0x16ca2
movslq -0x1ac(%rbp), %rax
movb -0x28(%rbp,%rax), %cl
movslq -0x1ac(%rbp), %rax
movb %cl, -0x1a8(%rbp,%rax)
movl -0x1ac(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1ac(%rbp)
jmp 0x16c6f
movq -0x1a8(%rbp), %rax
andq $-0x8000000, %rax       # imm = 0xF8000000
movq %rax, -0x1a8(%rbp)
movl $0x0, -0x1b0(%rbp)
cmpl $0x8, -0x1b0(%rbp)
jge 0x16cf6
movslq -0x1b0(%rbp), %rax
movb -0x1a8(%rbp,%rax), %cl
movslq -0x1b0(%rbp), %rax
movb %cl, -0x188(%rbp,%rax)
movl -0x1b0(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1b0(%rbp)
jmp 0x16cc0
movsd -0x28(%rbp), %xmm0
subsd -0x188(%rbp), %xmm0
movsd %xmm0, -0x190(%rbp)
movl $0x0, -0x1b4(%rbp)
cmpl $0x8, -0x1b4(%rbp)
jge 0x16d59
movslq -0x70(%rbp), %rcx
leaq 0x2ef7(%rip), %rax      # 0x19c20
shlq $0x3, %rcx
addq %rcx, %rax
movslq -0x1b4(%rbp), %rcx
movb (%rax,%rcx), %cl
movslq -0x1b4(%rbp), %rax
movb %cl, -0x1a8(%rbp,%rax)
movl -0x1b4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1b4(%rbp)
jmp 0x16d15
movq -0x1a8(%rbp), %rax
andq $-0x8000000, %rax       # imm = 0xF8000000
movq %rax, -0x1a8(%rbp)
movl $0x0, -0x1b8(%rbp)
cmpl $0x8, -0x1b8(%rbp)
jge 0x16dad
movslq -0x1b8(%rbp), %rax
movb -0x1a8(%rbp,%rax), %cl
movslq -0x1b8(%rbp), %rax
movb %cl, -0x198(%rbp,%rax)
movl -0x1b8(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1b8(%rbp)
jmp 0x16d77
movslq -0x70(%rbp), %rcx
leaq 0x2e68(%rip), %rax      # 0x19c20
movsd (%rax,%rcx,8), %xmm0
subsd -0x198(%rbp), %xmm0
movsd %xmm0, -0x1a0(%rbp)
movsd -0x188(%rbp), %xmm1
movsd -0x198(%rbp), %xmm2
movsd -0x80(%rbp), %xmm0
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
mulsd %xmm2, %xmm1
addsd %xmm0, %xmm1
movsd -0x188(%rbp), %xmm0
movsd -0x1a0(%rbp), %xmm2
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
movsd -0x190(%rbp), %xmm1
movsd -0x198(%rbp), %xmm2
mulsd %xmm2, %xmm1
addsd %xmm0, %xmm1
movsd -0x190(%rbp), %xmm0
movsd -0x1a0(%rbp), %xmm2
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
movsd %xmm0, -0x88(%rbp)
movsd -0x88(%rbp), %xmm0
movsd -0x28(%rbp), %xmm1
movslq -0x70(%rbp), %rcx
leaq 0x2e27(%rip), %rax      # 0x19c90
movsd (%rax,%rcx,8), %xmm3
movsd -0x30(%rbp), %xmm2
movslq -0x70(%rbp), %rcx
leaq 0x2da2(%rip), %rax      # 0x19c20
mulsd (%rax,%rcx,8), %xmm2
mulsd %xmm3, %xmm1
addsd %xmm2, %xmm1
addsd %xmm1, %xmm0
movsd %xmm0, -0x88(%rbp)
movsd -0x80(%rbp), %xmm0
movsd %xmm0, -0x28(%rbp)
movsd -0x88(%rbp), %xmm0
movsd %xmm0, -0x30(%rbp)
jmp 0x16eb0
jmp 0x16eb2
movsd -0x28(%rbp), %xmm0
addsd -0x30(%rbp), %xmm0
movsd %xmm0, -0x1c0(%rbp)
movsd -0x30(%rbp), %xmm0
movsd -0x1c0(%rbp), %xmm1
subsd -0x28(%rbp), %xmm1
subsd %xmm1, %xmm0
movsd %xmm0, -0x30(%rbp)
movsd -0x1c0(%rbp), %xmm0
movsd %xmm0, -0x28(%rbp)
movsd -0x28(%rbp), %xmm0
movq -0x8(%rbp), %rax
movsd %xmm0, (%rax)
movsd -0x30(%rbp), %xmm0
movq -0x10(%rbp), %rax
movsd %xmm0, (%rax)
addq $0x140, %rsp            # imm = 0x140
popq %rbp
retq
nop