// File: /workspace/github_c_makefile_star2_O0/PoulinV[P]AxiCLASS/build/../source/transfer.c
// Function: transfer_global_selection_read
int transfer_global_selection_read(
                                   struct transfer * ptr
                                   ) {

  /* for reading selection function */
  FILE * input_file;
  int row,status;
  double tmp1,tmp2;

  ptr->nz_size = 0;

  if (ptr->has_nz_file == _TRUE_) {

    input_file = fopen(ptr->nz_file_name,"r");
    class_test(input_file == NULL,
               ptr->error_message,
               "Could not open file %s!",ptr->nz_file_name);

    /* Find size of table */
    for (row=0,status=2; status==2; row++){
      status = fscanf(input_file,"%lf %lf",&tmp1,&tmp2);
    }
    rewind(input_file);
    ptr->nz_size = row-1;

    /* Allocate room for interpolation table */
    class_alloc(ptr->nz_z,sizeof(double)*ptr->nz_size,ptr->error_message);
    class_alloc(ptr->nz_nz,sizeof(double)*ptr->nz_size,ptr->error_message);
    class_alloc(ptr->nz_ddnz,sizeof(double)*ptr->nz_size,ptr->error_message);

    for (row=0; row<ptr->nz_size; row++){
      status = fscanf(input_file,"%lf %lf",
                      &ptr->nz_z[row],&ptr->nz_nz[row]);
      //printf("%d: (z,dNdz) = (%g,%g)\n",row,ptr->nz_z[row],ptr->nz_nz[row]);
    }
    fclose(input_file);

    /* Call spline interpolation: */
    class_call(array_spline_table_lines(ptr->nz_z,
                                        ptr->nz_size,
                                        ptr->nz_nz,
                                        1,
                                        ptr->nz_ddnz,
                                        _SPLINE_EST_DERIV_,
                                        ptr->error_message),
               ptr->error_message,
               ptr->error_message);
  }

  ptr->nz_evo_size = 0;

  if (ptr->has_nz_evo_file == _TRUE_) {

    input_file = fopen(ptr->nz_evo_file_name,"r");
    class_test(input_file == NULL,
               ptr->error_message,
               "Could not open file %s!",ptr->nz_evo_file_name);

    /* Find size of table */
    for (row=0,status=2; status==2; row++){
      status = fscanf(input_file,"%lf %lf",&tmp1,&tmp2);
    }
    rewind(input_file);
    ptr->nz_evo_size = row-1;

    /* Allocate room for interpolation table */
    class_alloc(ptr->nz_evo_z,sizeof(double)*ptr->nz_evo_size,ptr->error_message);
    class_alloc(ptr->nz_evo_nz,sizeof(double)*ptr->nz_evo_size,ptr->error_message);
    class_alloc(ptr->nz_evo_dlog_nz,sizeof(double)*ptr->nz_evo_size,ptr->error_message);
    class_alloc(ptr->nz_evo_dd_dlog_nz,sizeof(double)*ptr->nz_evo_size,ptr->error_message);

    for (row=0; row<ptr->nz_evo_size; row++){
      status = fscanf(input_file,"%lf %lf",
                      &ptr->nz_evo_z[row],&ptr->nz_evo_nz[row]);
    }
    fclose(input_file);

    /* infer dlog(dN/dz)/dz from dN/dz */
    ptr->nz_evo_dlog_nz[0] =
      (log(ptr->nz_evo_nz[1])-log(ptr->nz_evo_nz[0]))
      /(ptr->nz_evo_z[1]-ptr->nz_evo_z[0]);
    for (row=1; row<ptr->nz_evo_size-1; row++){
      ptr->nz_evo_dlog_nz[row] =
        (log(ptr->nz_evo_nz[row+1])-log(ptr->nz_evo_nz[row-1]))
        /(ptr->nz_evo_z[row+1]-ptr->nz_evo_z[row-1]);
    }
    ptr->nz_evo_dlog_nz[ptr->nz_evo_size-1] =
      (log(ptr->nz_evo_nz[ptr->nz_evo_size-1])-log(ptr->nz_evo_nz[ptr->nz_evo_size-2]))
      /(ptr->nz_evo_z[ptr->nz_evo_size-1]-ptr->nz_evo_z[ptr->nz_evo_size-2]);

    /* to test that the file is read:
       for (row=0; row<ptr->nz_evo_size; row++){
       fprintf(stdout,"%d: (z,dNdz,dlndNdzdz) = (%g,%g,%g)\n",row,ptr->nz_evo_z[row],ptr->nz_evo_nz[row],ptr->nz_evo_dlog_nz[row]);
       }
    */

    /* Call spline interpolation: */
    class_call(array_spline_table_lines(ptr->nz_evo_z,
                                        ptr->nz_evo_size,
                                        ptr->nz_evo_dlog_nz,
                                        1,
                                        ptr->nz_evo_dd_dlog_nz,
                                        _SPLINE_EST_DERIV_,
                                        ptr->error_message),
               ptr->error_message,
               ptr->error_message);
  }

  return _SUCCESS_;

}

// Assembly:
subq $0x68c8, %rsp           # imm = 0x68C8
movq %rdi, 0x68b8(%rsp)
movq 0x68b8(%rsp), %rax
movl $0x0, 0x75c(%rax)
movq 0x68b8(%rsp), %rax
movswl 0x658(%rax), %eax
cmpl $0x1, %eax
jne 0x133f69
movq 0x68b8(%rsp), %rdi
addq $0x65c, %rdi            # imm = 0x65C
leaq 0xbd198(%rip), %rsi     # 0x1f0c37
callq 0x8410
movq %rax, 0x68b0(%rsp)
cmpq $0x0, 0x68b0(%rsp)
jne 0x133b46
leaq 0x6090(%rsp), %rdi
movq 0x68b8(%rsp), %rdx
addq $0x65c, %rdx            # imm = 0x65C
leaq 0xbb9d5(%rip), %rsi     # 0x1ef4ae
movb $0x0, %al
callq 0x5b9c0
leaq 0x5890(%rsp), %rdi
leaq 0x6090(%rsp), %rcx
leaq 0x9e58b(%rip), %rsi     # 0x1d2082
leaq 0xd1213(%rip), %rdx     # 0x204d11
movb $0x0, %al
callq 0x5b9c0
movq 0x68b8(%rsp), %rdi
addq $0x96a, %rdi            # imm = 0x96A
leaq 0x5890(%rsp), %r8
leaq 0x9e511(%rip), %rsi     # 0x1d2034
leaq 0xd11fa(%rip), %rdx     # 0x204d24
movl $0x1139, %ecx           # imm = 0x1139
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x68c4(%rsp)
jmp 0x13479d
movl $0x0, 0x68ac(%rsp)
movl $0x2, 0x68a8(%rsp)
cmpl $0x2, 0x68a8(%rsp)
jne 0x133ba6
movq 0x68b0(%rsp), %rdi
leaq 0xcb730(%rip), %rsi     # 0x1ff2a5
leaq 0x68a0(%rsp), %rdx
leaq 0x6898(%rsp), %rcx
movb $0x0, %al
callq 0x8690
movl %eax, 0x68a8(%rsp)
movl 0x68ac(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x68ac(%rsp)
jmp 0x133b5c
movq 0x68b0(%rsp), %rdi
callq 0x8060
movl 0x68ac(%rsp), %ecx
subl $0x1, %ecx
movq 0x68b8(%rsp), %rax
movl %ecx, 0x75c(%rax)
movq 0x68b8(%rsp), %rax
movslq 0x75c(%rax), %rdi
shlq $0x3, %rdi
callq 0x8460
movq %rax, %rcx
movq 0x68b8(%rsp), %rax
movq %rcx, 0x760(%rax)
movq 0x68b8(%rsp), %rax
cmpq $0x0, 0x760(%rax)
jne 0x133c86
movq 0x68b8(%rsp), %rax
movslq 0x75c(%rax), %rax
shlq $0x3, %rax
movl %eax, 0x588c(%rsp)
leaq 0x5080(%rsp), %rdi
movl 0x588c(%rsp), %ecx
leaq 0x9e3cd(%rip), %rsi     # 0x1d2004
leaq 0xd1105(%rip), %rdx     # 0x204d43
movb $0x0, %al
callq 0x5b9c0
movq 0x68b8(%rsp), %rdi
addq $0x96a, %rdi            # imm = 0x96A
leaq 0x5080(%rsp), %r8
leaq 0x9e3d1(%rip), %rsi     # 0x1d2034
leaq 0xd10ba(%rip), %rdx     # 0x204d24
movl $0x1143, %ecx           # imm = 0x1143
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x68c4(%rsp)
jmp 0x13479d
movq 0x68b8(%rsp), %rax
movslq 0x75c(%rax), %rdi
shlq $0x3, %rdi
callq 0x8460
movq %rax, %rcx
movq 0x68b8(%rsp), %rax
movq %rcx, 0x768(%rax)
movq 0x68b8(%rsp), %rax
cmpq $0x0, 0x768(%rax)
jne 0x133d41
movq 0x68b8(%rsp), %rax
movslq 0x75c(%rax), %rax
shlq $0x3, %rax
movl %eax, 0x507c(%rsp)
leaq 0x4870(%rsp), %rdi
movl 0x507c(%rsp), %ecx
leaq 0x9e312(%rip), %rsi     # 0x1d2004
leaq 0xd1054(%rip), %rdx     # 0x204d4d
movb $0x0, %al
callq 0x5b9c0
movq 0x68b8(%rsp), %rdi
addq $0x96a, %rdi            # imm = 0x96A
leaq 0x4870(%rsp), %r8
leaq 0x9e316(%rip), %rsi     # 0x1d2034
leaq 0xd0fff(%rip), %rdx     # 0x204d24
movl $0x1144, %ecx           # imm = 0x1144
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x68c4(%rsp)
jmp 0x13479d
movq 0x68b8(%rsp), %rax
movslq 0x75c(%rax), %rdi
shlq $0x3, %rdi
callq 0x8460
movq %rax, %rcx
movq 0x68b8(%rsp), %rax
movq %rcx, 0x770(%rax)
movq 0x68b8(%rsp), %rax
cmpq $0x0, 0x770(%rax)
jne 0x133dfc
movq 0x68b8(%rsp), %rax
movslq 0x75c(%rax), %rax
shlq $0x3, %rax
movl %eax, 0x486c(%rsp)
leaq 0x4060(%rsp), %rdi
movl 0x486c(%rsp), %ecx
leaq 0x9e257(%rip), %rsi     # 0x1d2004
leaq 0xd0fa4(%rip), %rdx     # 0x204d58
movb $0x0, %al
callq 0x5b9c0
movq 0x68b8(%rsp), %rdi
addq $0x96a, %rdi            # imm = 0x96A
leaq 0x4060(%rsp), %r8
leaq 0x9e25b(%rip), %rsi     # 0x1d2034
leaq 0xd0f44(%rip), %rdx     # 0x204d24
movl $0x1145, %ecx           # imm = 0x1145
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x68c4(%rsp)
jmp 0x13479d
movl $0x0, 0x68ac(%rsp)
movl 0x68ac(%rsp), %eax
movq 0x68b8(%rsp), %rcx
cmpl 0x75c(%rcx), %eax
jge 0x133e8d
movq 0x68b0(%rsp), %rdi
movq 0x68b8(%rsp), %rax
movq 0x760(%rax), %rdx
movslq 0x68ac(%rsp), %rax
shlq $0x3, %rax
addq %rax, %rdx
movq 0x68b8(%rsp), %rax
movq 0x768(%rax), %rcx
movslq 0x68ac(%rsp), %rax
shlq $0x3, %rax
addq %rax, %rcx
leaq 0xcb43c(%rip), %rsi     # 0x1ff2a5
movb $0x0, %al
callq 0x8690
movl %eax, 0x68a8(%rsp)
movl 0x68ac(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x68ac(%rsp)
jmp 0x133e07
movq 0x68b0(%rsp), %rdi
callq 0x83c0
movq 0x68b8(%rsp), %rax
movq 0x760(%rax), %rdi
movq 0x68b8(%rsp), %rax
movl 0x75c(%rax), %esi
movq 0x68b8(%rsp), %rax
movq 0x768(%rax), %rdx
movq 0x68b8(%rsp), %rax
movq 0x770(%rax), %r8
movq 0x68b8(%rsp), %rax
addq $0x96a, %rax            # imm = 0x96A
movl $0x1, %r9d
movl %r9d, %ecx
movq %rax, (%rsp)
callq 0x1cf90
cmpl $0x1, %eax
jne 0x133f67
leaq 0x3860(%rsp), %rdi
movq 0x68b8(%rsp), %rcx
addq $0x96a, %rcx            # imm = 0x96A
leaq 0x9e4c0(%rip), %rsi     # 0x1d23d8
leaq 0xd0e46(%rip), %rdx     # 0x204d65
movb $0x0, %al
callq 0x5b9c0
movq 0x68b8(%rsp), %rdi
addq $0x96a, %rdi            # imm = 0x96A
leaq 0x3860(%rsp), %r8
leaq 0x9e0f0(%rip), %rsi     # 0x1d2034
leaq 0xd0dd9(%rip), %rdx     # 0x204d24
movl $0x1157, %ecx           # imm = 0x1157
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x68c4(%rsp)
jmp 0x13479d
jmp 0x133f69
movq 0x68b8(%rsp), %rax
movl $0x0, 0x87c(%rax)
movq 0x68b8(%rsp), %rax
movswl 0x778(%rax), %eax
cmpl $0x1, %eax
jne 0x134792
movq 0x68b8(%rsp), %rdi
addq $0x77c, %rdi            # imm = 0x77C
leaq 0xbcc8e(%rip), %rsi     # 0x1f0c37
callq 0x8410
movq %rax, 0x68b0(%rsp)
cmpq $0x0, 0x68b0(%rsp)
jne 0x134050
leaq 0x3060(%rsp), %rdi
movq 0x68b8(%rsp), %rdx
addq $0x77c, %rdx            # imm = 0x77C
leaq 0xbb4cb(%rip), %rsi     # 0x1ef4ae
movb $0x0, %al
callq 0x5b9c0
leaq 0x2860(%rsp), %rdi
leaq 0x3060(%rsp), %rcx
leaq 0x9e081(%rip), %rsi     # 0x1d2082
leaq 0xd0d09(%rip), %rdx     # 0x204d11
movb $0x0, %al
callq 0x5b9c0
movq 0x68b8(%rsp), %rdi
addq $0x96a, %rdi            # imm = 0x96A
leaq 0x2860(%rsp), %r8
leaq 0x9e007(%rip), %rsi     # 0x1d2034
leaq 0xd0cf0(%rip), %rdx     # 0x204d24
movl $0x1161, %ecx           # imm = 0x1161
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x68c4(%rsp)
jmp 0x13479d
movl $0x0, 0x68ac(%rsp)
movl $0x2, 0x68a8(%rsp)
cmpl $0x2, 0x68a8(%rsp)
jne 0x1340b0
movq 0x68b0(%rsp), %rdi
leaq 0xcb226(%rip), %rsi     # 0x1ff2a5
leaq 0x68a0(%rsp), %rdx
leaq 0x6898(%rsp), %rcx
movb $0x0, %al
callq 0x8690
movl %eax, 0x68a8(%rsp)
movl 0x68ac(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x68ac(%rsp)
jmp 0x134066
movq 0x68b0(%rsp), %rdi
callq 0x8060
movl 0x68ac(%rsp), %ecx
subl $0x1, %ecx
movq 0x68b8(%rsp), %rax
movl %ecx, 0x87c(%rax)
movq 0x68b8(%rsp), %rax
movslq 0x87c(%rax), %rdi
shlq $0x3, %rdi
callq 0x8460
movq %rax, %rcx
movq 0x68b8(%rsp), %rax
movq %rcx, 0x880(%rax)
movq 0x68b8(%rsp), %rax
cmpq $0x0, 0x880(%rax)
jne 0x134190
movq 0x68b8(%rsp), %rax
movslq 0x87c(%rax), %rax
shlq $0x3, %rax
movl %eax, 0x285c(%rsp)
leaq 0x2050(%rsp), %rdi
movl 0x285c(%rsp), %ecx
leaq 0x9dec3(%rip), %rsi     # 0x1d2004
leaq 0xd0c83(%rip), %rdx     # 0x204dcb
movb $0x0, %al
callq 0x5b9c0
movq 0x68b8(%rsp), %rdi
addq $0x96a, %rdi            # imm = 0x96A
leaq 0x2050(%rsp), %r8
leaq 0x9dec7(%rip), %rsi     # 0x1d2034
leaq 0xd0bb0(%rip), %rdx     # 0x204d24
movl $0x116b, %ecx           # imm = 0x116B
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x68c4(%rsp)
jmp 0x13479d
movq 0x68b8(%rsp), %rax
movslq 0x87c(%rax), %rdi
shlq $0x3, %rdi
callq 0x8460
movq %rax, %rcx
movq 0x68b8(%rsp), %rax
movq %rcx, 0x888(%rax)
movq 0x68b8(%rsp), %rax
cmpq $0x0, 0x888(%rax)
jne 0x13424b
movq 0x68b8(%rsp), %rax
movslq 0x87c(%rax), %rax
shlq $0x3, %rax
movl %eax, 0x204c(%rsp)
leaq 0x1840(%rsp), %rdi
movl 0x204c(%rsp), %ecx
leaq 0x9de08(%rip), %rsi     # 0x1d2004
leaq 0xd0bd6(%rip), %rdx     # 0x204dd9
movb $0x0, %al
callq 0x5b9c0
movq 0x68b8(%rsp), %rdi
addq $0x96a, %rdi            # imm = 0x96A
leaq 0x1840(%rsp), %r8
leaq 0x9de0c(%rip), %rsi     # 0x1d2034
leaq 0xd0af5(%rip), %rdx     # 0x204d24
movl $0x116c, %ecx           # imm = 0x116C
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x68c4(%rsp)
jmp 0x13479d
movq 0x68b8(%rsp), %rax
movslq 0x87c(%rax), %rdi
shlq $0x3, %rdi
callq 0x8460
movq %rax, %rcx
movq 0x68b8(%rsp), %rax
movq %rcx, 0x890(%rax)
movq 0x68b8(%rsp), %rax
cmpq $0x0, 0x890(%rax)
jne 0x134306
movq 0x68b8(%rsp), %rax
movslq 0x87c(%rax), %rax
shlq $0x3, %rax
movl %eax, 0x183c(%rsp)
leaq 0x1030(%rsp), %rdi
movl 0x183c(%rsp), %ecx
leaq 0x9dd4d(%rip), %rsi     # 0x1d2004
leaq 0xd0b2a(%rip), %rdx     # 0x204de8
movb $0x0, %al
callq 0x5b9c0
movq 0x68b8(%rsp), %rdi
addq $0x96a, %rdi            # imm = 0x96A
leaq 0x1030(%rsp), %r8
leaq 0x9dd51(%rip), %rsi     # 0x1d2034
leaq 0xd0a3a(%rip), %rdx     # 0x204d24
movl $0x116d, %ecx           # imm = 0x116D
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x68c4(%rsp)
jmp 0x13479d
movq 0x68b8(%rsp), %rax
movslq 0x87c(%rax), %rdi
shlq $0x3, %rdi
callq 0x8460
movq %rax, %rcx
movq 0x68b8(%rsp), %rax
movq %rcx, 0x898(%rax)
movq 0x68b8(%rsp), %rax
cmpq $0x0, 0x898(%rax)
jne 0x1343c1
movq 0x68b8(%rsp), %rax
movslq 0x87c(%rax), %rax
shlq $0x3, %rax
movl %eax, 0x102c(%rsp)
leaq 0x820(%rsp), %rdi
movl 0x102c(%rsp), %ecx
leaq 0x9dc92(%rip), %rsi     # 0x1d2004
leaq 0xd0a83(%rip), %rdx     # 0x204dfc
movb $0x0, %al
callq 0x5b9c0
movq 0x68b8(%rsp), %rdi
addq $0x96a, %rdi            # imm = 0x96A
leaq 0x820(%rsp), %r8
leaq 0x9dc96(%rip), %rsi     # 0x1d2034
leaq 0xd097f(%rip), %rdx     # 0x204d24
movl $0x116e, %ecx           # imm = 0x116E
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x68c4(%rsp)
jmp 0x13479d
movl $0x0, 0x68ac(%rsp)
movl 0x68ac(%rsp), %eax
movq 0x68b8(%rsp), %rcx
cmpl 0x87c(%rcx), %eax
jge 0x134452
movq 0x68b0(%rsp), %rdi
movq 0x68b8(%rsp), %rax
movq 0x880(%rax), %rdx
movslq 0x68ac(%rsp), %rax
shlq $0x3, %rax
addq %rax, %rdx
movq 0x68b8(%rsp), %rax
movq 0x888(%rax), %rcx
movslq 0x68ac(%rsp), %rax
shlq $0x3, %rax
addq %rax, %rcx
leaq 0xcae77(%rip), %rsi     # 0x1ff2a5
movb $0x0, %al
callq 0x8690
movl %eax, 0x68a8(%rsp)
movl 0x68ac(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x68ac(%rsp)
jmp 0x1343cc
movq 0x68b0(%rsp), %rdi
callq 0x83c0
movq 0x68b8(%rsp), %rax
movq 0x888(%rax), %rax
movsd 0x8(%rax), %xmm0
callq 0x82f0
movsd %xmm0, 0x18(%rsp)
movq 0x68b8(%rsp), %rax
movq 0x888(%rax), %rax
movsd (%rax), %xmm0
callq 0x82f0
movaps %xmm0, %xmm1
movsd 0x18(%rsp), %xmm0
subsd %xmm1, %xmm0
movq 0x68b8(%rsp), %rax
movq 0x880(%rax), %rax
movsd 0x8(%rax), %xmm1
movq 0x68b8(%rsp), %rax
movq 0x880(%rax), %rax
subsd (%rax), %xmm1
divsd %xmm1, %xmm0
movq 0x68b8(%rsp), %rax
movq 0x890(%rax), %rax
movsd %xmm0, (%rax)
movl $0x1, 0x68ac(%rsp)
movl 0x68ac(%rsp), %eax
movq 0x68b8(%rsp), %rcx
movl 0x87c(%rcx), %ecx
subl $0x1, %ecx
cmpl %ecx, %eax
jge 0x1345e3
movq 0x68b8(%rsp), %rax
movq 0x888(%rax), %rax
movl 0x68ac(%rsp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
callq 0x82f0
movsd %xmm0, 0x10(%rsp)
movq 0x68b8(%rsp), %rax
movq 0x888(%rax), %rax
movl 0x68ac(%rsp), %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
callq 0x82f0
movaps %xmm0, %xmm1
movsd 0x10(%rsp), %xmm0
subsd %xmm1, %xmm0
movq 0x68b8(%rsp), %rax
movq 0x880(%rax), %rax
movl 0x68ac(%rsp), %ecx
addl $0x1, %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm1
movq 0x68b8(%rsp), %rax
movq 0x880(%rax), %rax
movl 0x68ac(%rsp), %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
subsd (%rax,%rcx,8), %xmm1
divsd %xmm1, %xmm0
movq 0x68b8(%rsp), %rax
movq 0x890(%rax), %rax
movslq 0x68ac(%rsp), %rcx
movsd %xmm0, (%rax,%rcx,8)
movl 0x68ac(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x68ac(%rsp)
jmp 0x1344ec
movq 0x68b8(%rsp), %rax
movq 0x888(%rax), %rax
movq 0x68b8(%rsp), %rcx
movl 0x87c(%rcx), %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
callq 0x82f0
movsd %xmm0, 0x8(%rsp)
movq 0x68b8(%rsp), %rax
movq 0x888(%rax), %rax
movq 0x68b8(%rsp), %rcx
movl 0x87c(%rcx), %ecx
subl $0x2, %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm0
callq 0x82f0
movaps %xmm0, %xmm1
movsd 0x8(%rsp), %xmm0
subsd %xmm1, %xmm0
movq 0x68b8(%rsp), %rax
movq 0x880(%rax), %rax
movq 0x68b8(%rsp), %rcx
movl 0x87c(%rcx), %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
movsd (%rax,%rcx,8), %xmm1
movq 0x68b8(%rsp), %rax
movq 0x880(%rax), %rax
movq 0x68b8(%rsp), %rcx
movl 0x87c(%rcx), %ecx
subl $0x2, %ecx
movslq %ecx, %rcx
subsd (%rax,%rcx,8), %xmm1
divsd %xmm1, %xmm0
movq 0x68b8(%rsp), %rax
movq 0x890(%rax), %rax
movq 0x68b8(%rsp), %rcx
movl 0x87c(%rcx), %ecx
subl $0x1, %ecx
movslq %ecx, %rcx
movsd %xmm0, (%rax,%rcx,8)
movq 0x68b8(%rsp), %rax
movq 0x880(%rax), %rdi
movq 0x68b8(%rsp), %rax
movl 0x87c(%rax), %esi
movq 0x68b8(%rsp), %rax
movq 0x890(%rax), %rdx
movq 0x68b8(%rsp), %rax
movq 0x898(%rax), %r8
movq 0x68b8(%rsp), %rax
addq $0x96a, %rax            # imm = 0x96A
movl $0x1, %r9d
movl %r9d, %ecx
movq %rax, (%rsp)
callq 0x1cf90
cmpl $0x1, %eax
jne 0x134790
leaq 0x20(%rsp), %rdi
movq 0x68b8(%rsp), %rcx
addq $0x96a, %rcx            # imm = 0x96A
leaq 0x9dc91(%rip), %rsi     # 0x1d23d8
leaq 0xd06c5(%rip), %rdx     # 0x204e13
movb $0x0, %al
callq 0x5b9c0
movq 0x68b8(%rsp), %rdi
addq $0x96a, %rdi            # imm = 0x96A
leaq 0x20(%rsp), %r8
leaq 0x9d8c4(%rip), %rsi     # 0x1d2034
leaq 0xd05ad(%rip), %rdx     # 0x204d24
movl $0x1192, %ecx           # imm = 0x1192
movb $0x0, %al
callq 0x5b9c0
movl $0x1, 0x68c4(%rsp)
jmp 0x13479d
jmp 0x134792
movl $0x0, 0x68c4(%rsp)
movl 0x68c4(%rsp), %eax
addq $0x68c8, %rsp           # imm = 0x68C8
retq
nopl (%rax)