// File: /workspace/github_cpp_makefile_star2_O3/manikandan5[P]Image-Matching-Stitching-Warping/./CImg.h
// Function: cimg_library::CImgList<double>::load_parrec(char const*)
CImgList<T>& load_parrec(const char *const filename) {
      if (!filename)
        throw CImgArgumentException(_cimglist_instance
                                    "load_parrec(): Specified filename is (null).",
                                    cimglist_instance);

      char body[1024] = { 0 }, filenamepar[1024] = { 0 }, filenamerec[1024] = { 0 };
      const char *const ext = cimg::split_filename(filename,body);
      if (!std::strcmp(ext,"par")) {
        std::strncpy(filenamepar,filename,sizeof(filenamepar)-1);
        cimg_snprintf(filenamerec,sizeof(filenamerec),"%s.rec",body);
      }
      if (!std::strcmp(ext,"PAR")) {
        std::strncpy(filenamepar,filename,sizeof(filenamepar)-1);
        cimg_snprintf(filenamerec,sizeof(filenamerec),"%s.REC",body);
      }
      if (!std::strcmp(ext,"rec")) {
        std::strncpy(filenamerec,filename,sizeof(filenamerec)-1);
        cimg_snprintf(filenamepar,sizeof(filenamepar),"%s.par",body);
      }
      if (!std::strcmp(ext,"REC")) {
        std::strncpy(filenamerec,filename,sizeof(filenamerec)-1);
        cimg_snprintf(filenamepar,sizeof(filenamepar),"%s.PAR",body);
      }
      std::FILE *file = cimg::fopen(filenamepar,"r");

      // Parse header file
      CImgList<floatT> st_slices;
      CImgList<uintT> st_global;
      int err;
      char line[256] = { 0 };
      do { err=std::fscanf(file,"%255[^\n]%*c",line); } while (err!=EOF && (*line=='#' || *line=='.'));
      do {
        unsigned int sn,size_x,size_y,pixsize;
        float rs,ri,ss;
        err = std::fscanf(file,"%u%*u%*u%*u%*u%*u%*u%u%*u%u%u%g%g%g%*[^\n]",&sn,&pixsize,&size_x,&size_y,&ri,&rs,&ss);
        if (err==7) {
          CImg<floatT>::vector((float)sn,(float)pixsize,(float)size_x,(float)size_y,ri,rs,ss,0).move_to(st_slices);
          unsigned int i; for (i = 0; i<st_global._width && sn<=st_global[i][2]; ++i) {}
          if (i==st_global._width) CImg<uintT>::vector(size_x,size_y,sn).move_to(st_global);
          else {
            CImg<uintT> &vec = st_global[i];
            if (size_x>vec[0]) vec[0] = size_x;
            if (size_y>vec[1]) vec[1] = size_y;
            vec[2] = sn;
          }
          st_slices[st_slices._width-1][7] = (float)i;
        }
      } while (err==7);

      // Read data
      std::FILE *file2 = cimg::fopen(filenamerec,"rb");
      cimglist_for(st_global,l) {
        const CImg<uintT>& vec = st_global[l];
        CImg<T>(vec[0],vec[1],vec[2]).move_to(*this);
      }

      cimglist_for(st_slices,l) {
        const CImg<floatT>& vec = st_slices[l];
        const unsigned int
          sn = (unsigned int)vec[0] - 1,
          pixsize = (unsigned int)vec[1],
          size_x = (unsigned int)vec[2],
          size_y = (unsigned int)vec[3],
          imn = (unsigned int)vec[7];
        const float ri = vec[4], rs = vec[5], ss = vec[6];
        switch (pixsize) {
        case 8 : {
          CImg<ucharT> buf(size_x,size_y);
          cimg::fread(buf._data,size_x*size_y,file2);
          if (cimg::endianness()) cimg::invert_endianness(buf._data,size_x*size_y);
          CImg<T>& img = (*this)[imn];
          cimg_forXY(img,x,y) img(x,y,sn) = (T)(( buf(x,y)*rs + ri )/(rs*ss));
        } break;
        case 16 : {
          CImg<ushortT> buf(size_x,size_y);
          cimg::fread(buf._data,size_x*size_y,file2);
          if (cimg::endianness()) cimg::invert_endianness(buf._data,size_x*size_y);
          CImg<T>& img = (*this)[imn];
          cimg_forXY(img,x,y) img(x,y,sn) = (T)(( buf(x,y)*rs + ri )/(rs*ss));
        } break;
        case 32 : {
          CImg<uintT> buf(size_x,size_y);
          cimg::fread(buf._data,size_x*size_y,file2);
          if (cimg::endianness()) cimg::invert_endianness(buf._data,size_x*size_y);
          CImg<T>& img = (*this)[imn];
          cimg_forXY(img,x,y) img(x,y,sn) = (T)(( buf(x,y)*rs + ri )/(rs*ss));
        } break;
        default :
          cimg::fclose(file);
          cimg::fclose(file2);
          throw CImgIOException(_cimglist_instance
                                "load_parrec(): Unsupported %d-bits pixel type for file '%s'.",
                                cimglist_instance,
                                pixsize,filename);
        }
      }
      cimg::fclose(file);
      cimg::fclose(file2);
      if (!_width)
        throw CImgIOException(_cimglist_instance
                              "load_parrec(): Failed to recognize valid PAR-REC data in file '%s'.",
                              cimglist_instance,
                              filename);
      return *this;
    }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xda8, %rsp            # imm = 0xDA8
movq %rdi, %rbp
testq %rsi, %rsi
je 0x4c874
movq %rsi, %r15
leaq 0x9a0(%rsp), %rdi
movl $0x400, %edx            # imm = 0x400
xorl %esi, %esi
callq 0x4290
leaq 0x4a0(%rsp), %rdi
movl $0x400, %edx            # imm = 0x400
xorl %esi, %esi
callq 0x4290
leaq 0xa0(%rsp), %rdi
movl $0x400, %edx            # imm = 0x400
xorl %esi, %esi
callq 0x4290
movq %r15, %rax
movq %rax, %rbx
movq %rax, %rdi
movl $0x2e, %esi
callq 0x41a0
incq %rax
cmpq %r15, %rax
jae 0x4bda5
cmpq %r15, %rbx
je 0x4bde9
movl %r15d, %r14d
notl %r14d
addl %ebx, %r14d
leaq 0x9a0(%rsp), %rdi
movq %r15, %rsi
movq %r14, %rdx
callq 0x4440
movb $0x0, 0x9a0(%rsp,%r14)
jmp 0x4be07
leaq 0x9a0(%rsp), %rdi
movq %r15, %rsi
callq 0x44e0
movq %r15, %rdi
callq 0x41e0
movq %rax, %rbx
addq %r15, %rbx
leaq 0x4480b(%rip), %rsi     # 0x90619
movq %rbx, %rdi
callq 0x4730
testl %eax, %eax
jne 0x4be52
leaq 0x4a0(%rsp), %rdi
movl $0x3ff, %edx            # imm = 0x3FF
movq %r15, %rsi
callq 0x4240
leaq 0x447d2(%rip), %rdx     # 0x90608
leaq 0xa0(%rsp), %rdi
leaq 0x9a0(%rsp), %rcx
movl $0x400, %esi            # imm = 0x400
xorl %eax, %eax
callq 0x4890
leaq 0x447c7(%rip), %rsi     # 0x90620
movq %rbx, %rdi
callq 0x4730
testl %eax, %eax
jne 0x4be9d
leaq 0x4a0(%rsp), %rdi
movl $0x3ff, %edx            # imm = 0x3FF
movq %r15, %rsi
callq 0x4240
leaq 0x4478e(%rip), %rdx     # 0x9060f
leaq 0xa0(%rsp), %rdi
leaq 0x9a0(%rsp), %rcx
movl $0x400, %esi            # imm = 0x400
xorl %eax, %eax
callq 0x4890
leaq 0x44767(%rip), %rsi     # 0x9060b
movq %rbx, %rdi
callq 0x4730
testl %eax, %eax
jne 0x4bee8
leaq 0xa0(%rsp), %rdi
movl $0x3ff, %edx            # imm = 0x3FF
movq %r15, %rsi
callq 0x4240
leaq 0x4474a(%rip), %rdx     # 0x90616
leaq 0x4a0(%rsp), %rdi
leaq 0x9a0(%rsp), %rcx
movl $0x400, %esi            # imm = 0x400
xorl %eax, %eax
callq 0x4890
leaq 0x44723(%rip), %rsi     # 0x90612
movq %rbx, %rdi
callq 0x4730
testl %eax, %eax
jne 0x4bf33
leaq 0xa0(%rsp), %rdi
movl $0x3ff, %edx            # imm = 0x3FF
movq %r15, %rsi
callq 0x4240
leaq 0x44706(%rip), %rdx     # 0x9061d
leaq 0x4a0(%rsp), %rdi
leaq 0x9a0(%rsp), %rcx
movl $0x400, %esi            # imm = 0x400
xorl %eax, %eax
callq 0x4890
cmpb $0x2d, 0x4a0(%rsp)
jne 0x4bf5a
movzbl 0x4a1(%rsp), %eax
cmpl $0x2e, %eax
je 0x4bf4e
testl %eax, %eax
jne 0x4bf5a
movq 0x5c053(%rip), %rax     # 0xa7fa8
movq (%rax), %r12
jmp 0x4bf71
leaq 0x2e8b2(%rip), %rsi     # 0x7a813
leaq 0x4a0(%rsp), %rdi
callq 0x45d0
movq %rax, %r12
testq %r12, %r12
je 0x4c8ac
xorps %xmm0, %xmm0
movaps %xmm0, 0x50(%rsp)
movaps %xmm0, 0x40(%rsp)
leaq 0x8a0(%rsp), %rbx
movl $0x100, %edx            # imm = 0x100
movq %rbx, %rdi
xorl %esi, %esi
callq 0x4290
leaq 0x4467f(%rip), %r14     # 0x90624
movq %r12, %rdi
movq %r14, %rsi
movq %rbx, %rdx
xorl %eax, %eax
callq 0x49f0
cmpl $-0x1, %eax
je 0x4bfcc
movzbl 0x8a0(%rsp), %eax
cmpl $0x23, %eax
je 0x4bfa5
cmpl $0x2e, %eax
je 0x4bfa5
movq %r12, 0x70(%rsp)
movq %r15, 0x90(%rsp)
leaq 0x30(%rsp), %r14
leaq 0x8(%rsp), %r12
movq %rbp, 0x38(%rsp)
subq $0x8, %rsp
movq 0x78(%rsp), %rdi
leaq 0x44638(%rip), %rsi     # 0x90630
leaq 0x30(%rsp), %rdx
leaq 0x94(%rsp), %rcx
leaq 0x3c(%rsp), %r8
movq %r14, %r9
xorl %eax, %eax
leaq 0x88(%rsp), %r10
pushq %r10
leaq 0x98(%rsp), %r10
pushq %r10
leaq 0x9c(%rsp), %r10
pushq %r10
callq 0x49f0
addq $0x20, %rsp
cmpl $0x7, %eax
jne 0x4c242
movl 0x28(%rsp), %ebp
movl 0x8c(%rsp), %r15d
movl 0x34(%rsp), %r13d
movl 0x30(%rsp), %ebx
movq %r12, %rdi
movl $0x1, %esi
movl $0x8, %edx
movl $0x1, %ecx
movl $0x1, %r8d
callq 0x1de60
movd %ebx, %xmm0
movd %r13d, %xmm1
punpckldq %xmm0, %xmm1    # xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
movd %r15d, %xmm0
movd %ebp, %xmm2
punpckldq %xmm0, %xmm2    # xmm2 = xmm2[0],xmm0[0],xmm2[1],xmm0[1]
punpcklqdq %xmm1, %xmm2    # xmm2 = xmm2[0],xmm1[0]
movdqa %xmm2, %xmm0
pand 0x22145(%rip), %xmm0    # 0x6e1e0
por 0x2214d(%rip), %xmm0    # 0x6e1f0
psrld $0x10, %xmm2
por 0x22150(%rip), %xmm2    # 0x6e200
subps 0x22159(%rip), %xmm2    # 0x6e210
addps %xmm0, %xmm2
movq 0x20(%rsp), %rax
movups %xmm2, (%rax)
movss 0x84(%rsp), %xmm0
movss %xmm0, 0x10(%rax)
movss 0x88(%rsp), %xmm0
movss %xmm0, 0x14(%rax)
movss 0x80(%rsp), %xmm0
movss %xmm0, 0x18(%rax)
movl $0x0, 0x1c(%rax)
movl 0x50(%rsp), %ebp
leaq 0x50(%rsp), %rdi
movl $0x1, %esi
movl %ebp, %edx
callq 0x4cd0c
shlq $0x5, %rbp
addq 0x8(%rax), %rbp
movq %r12, %rdi
movq %rbp, %rsi
callq 0x4cc9a
cmpb $0x0, 0x18(%rsp)
jne 0x4c131
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x4c131
callq 0x4690
movl 0x40(%rsp), %eax
testq %rax, %rax
movq 0x38(%rsp), %rbp
je 0x4c168
movl 0x28(%rsp), %ecx
movq 0x48(%rsp), %rdx
addq $0x18, %rdx
xorl %r15d, %r15d
movq (%rdx), %rsi
cmpl 0x8(%rsi), %ecx
ja 0x4c16b
incq %r15
addq $0x20, %rdx
cmpq %r15, %rax
jne 0x4c14f
movl %eax, %r15d
jmp 0x4c170
xorl %r15d, %r15d
cmpl %eax, %r15d
jne 0x4c1eb
movq %r12, %rdi
movl $0x1, %esi
movl $0x3, %edx
movl $0x1, %ecx
movl $0x1, %r8d
callq 0x1dcd2
movq 0x20(%rsp), %rax
movl 0x34(%rsp), %ecx
movl %ecx, (%rax)
movl 0x30(%rsp), %ecx
movl %ecx, 0x4(%rax)
movl 0x28(%rsp), %ecx
movl %ecx, 0x8(%rax)
movl 0x40(%rsp), %ebp
leaq 0x40(%rsp), %rdi
movl $0x1, %esi
movl %ebp, %edx
callq 0x4d3a8
shlq $0x5, %rbp
addq 0x8(%rax), %rbp
movq %r12, %rdi
movq %rbp, %rsi
callq 0x32fdc
cmpb $0x0, 0x18(%rsp)
jne 0x4c1e4
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x4c1e4
callq 0x4690
movq 0x38(%rsp), %rbp
jmp 0x4c219
movq 0x48(%rsp), %rax
movl %r15d, %edx
movl 0x34(%rsp), %ecx
shlq $0x5, %rdx
movq 0x18(%rax,%rdx), %rax
cmpl (%rax), %ecx
jbe 0x4c206
movl %ecx, (%rax)
movl 0x30(%rsp), %ecx
cmpl 0x4(%rax), %ecx
jbe 0x4c212
movl %ecx, 0x4(%rax)
movl 0x28(%rsp), %ecx
movl %ecx, 0x8(%rax)
movl %r15d, %eax
xorps %xmm0, %xmm0
cvtsi2ss %rax, %xmm0
movq 0x58(%rsp), %rax
movl 0x50(%rsp), %ecx
decl %ecx
shlq $0x5, %rcx
movq 0x18(%rax,%rcx), %rax
movss %xmm0, 0x1c(%rax)
jmp 0x4bfe8
cmpb $0x2d, 0xa0(%rsp)
jne 0x4c269
movzbl 0xa1(%rsp), %eax
cmpl $0x2e, %eax
je 0x4c25d
testl %eax, %eax
jne 0x4c269
movq 0x5bd44(%rip), %rax     # 0xa7fa8
movq (%rax), %r12
jmp 0x4c280
leaq 0x43075(%rip), %rsi     # 0x8f2e5
leaq 0xa0(%rsp), %rdi
callq 0x45d0
movq %rax, %r12
testq %r12, %r12
je 0x4c8ef
cmpl $0x0, 0x40(%rsp)
jle 0x4c30b
movl $0x18, %r15d
xorl %r13d, %r13d
leaq 0x8(%rsp), %rbx
movq 0x48(%rsp), %rax
movq (%rax,%r15), %rax
movl (%rax), %esi
movl 0x4(%rax), %edx
movl 0x8(%rax), %ecx
movq %rbx, %rdi
movl $0x1, %r8d
callq 0x8666
movl (%rbp), %r14d
movq %rbp, %rdi
movl $0x1, %esi
movl %r14d, %edx
callq 0x4a72e
shlq $0x5, %r14
addq 0x8(%rax), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xb678
cmpb $0x0, 0x18(%rsp)
jne 0x4c2fa
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x4c2fa
callq 0x4690
incq %r13
movslq 0x40(%rsp), %rax
addq $0x20, %r15
cmpq %rax, %r13
jl 0x4c29e
cmpl $0x0, 0x50(%rsp)
jle 0x4c71c
xorl %ebx, %ebx
movq 0x58(%rsp), %rax
movq %rbx, %rcx
shlq $0x5, %rcx
movq 0x18(%rax,%rcx), %rax
cvttss2si (%rax), %rcx
cvttss2si 0x4(%rax), %r13
cvttss2si 0x8(%rax), %r14
cvttss2si 0xc(%rax), %r15
decl %ecx
movq %rcx, 0x68(%rsp)
cvttss2si 0x1c(%rax), %rcx
movq %rcx, 0x78(%rsp)
movss 0x10(%rax), %xmm0
movss %xmm0, 0x2c(%rsp)
movss 0x14(%rax), %xmm0
movss %xmm0, 0x4(%rsp)
movss 0x18(%rax), %xmm0
movss %xmm0, (%rsp)
cmpl $0x8, %r13d
je 0x4c59e
cmpl $0x10, %r13d
je 0x4c497
cmpl $0x20, %r13d
jne 0x4c7ab
leaq 0x8(%rsp), %rdi
movl %r14d, %esi
movl %r15d, %edx
movl $0x1, %ecx
movl $0x1, %r8d
callq 0x1dcd2
movq %rbx, %r13
movq 0x20(%rsp), %rdi
imull %r14d, %r15d
movq %r15, %rsi
movq %r12, %rdx
callq 0x4ba4c
movq 0x8(%rbp), %rax
movl 0x78(%rsp), %edx
shlq $0x5, %rdx
movslq 0x4(%rax,%rdx), %rcx
testq %rcx, %rcx
jle 0x4c474
addq %rdx, %rax
movl (%rax), %edx
movq 0x20(%rsp), %rsi
movl 0x8(%rsp), %edi
movss (%rsp), %xmm0
mulss 0x4(%rsp), %xmm0
movss %xmm0, (%rsp)
movl 0x68(%rsp), %r8d
imulq %rcx, %r8
imulq %rdx, %r8
shlq $0x3, %r8
leaq (,%rdx,8), %r9
xorl %r10d, %r10d
xorl %r11d, %r11d
testl %edx, %edx
movss 0x2c(%rsp), %xmm1
movss 0x4(%rsp), %xmm2
movss (%rsp), %xmm3
jle 0x4c466
movq 0x18(%rax), %rbx
addq %r8, %rbx
xorl %r14d, %r14d
leal (%r10,%r14), %r15d
movl (%rsi,%r15,4), %r15d
xorps %xmm0, %xmm0
cvtsi2ss %r15, %xmm0
mulss %xmm2, %xmm0
addss %xmm1, %xmm0
divss %xmm3, %xmm0
cvtss2sd %xmm0, %xmm0
movsd %xmm0, (%rbx,%r14,8)
incq %r14
cmpq %r14, %rdx
jne 0x4c438
incq %r11
addq %rdi, %r10
addq %r9, %r8
cmpq %rcx, %r11
jne 0x4c419
cmpb $0x0, 0x18(%rsp)
jne 0x4c596
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x4c596
callq 0x4690
jmp 0x4c596
leaq 0x8(%rsp), %rdi
movl %r14d, %esi
movl %r15d, %edx
movl $0x1, %ecx
movl $0x1, %r8d
callq 0x4ca6c
movq %rbx, %r13
movq 0x20(%rsp), %rdi
imull %r14d, %r15d
movq %r15, %rsi
movq %r12, %rdx
callq 0x48767
movq 0x8(%rbp), %rax
movl 0x78(%rsp), %edx
shlq $0x5, %rdx
movslq 0x4(%rax,%rdx), %rcx
testq %rcx, %rcx
jle 0x4c57b
addq %rdx, %rax
movl (%rax), %edx
movq 0x20(%rsp), %rsi
movl 0x8(%rsp), %edi
movss (%rsp), %xmm0
mulss 0x4(%rsp), %xmm0
movss %xmm0, (%rsp)
movl 0x68(%rsp), %r8d
imulq %rcx, %r8
imulq %rdx, %r8
shlq $0x3, %r8
leaq (,%rdx,8), %r9
xorl %r10d, %r10d
xorl %r11d, %r11d
testl %edx, %edx
movss 0x2c(%rsp), %xmm1
movss 0x4(%rsp), %xmm2
movss (%rsp), %xmm3
jle 0x4c56d
movq 0x18(%rax), %rbx
addq %r8, %rbx
xorl %r14d, %r14d
leal (%r10,%r14), %r15d
movzwl (%rsi,%r15,2), %ebp
xorps %xmm0, %xmm0
cvtsi2ss %ebp, %xmm0
mulss %xmm2, %xmm0
addss %xmm1, %xmm0
divss %xmm3, %xmm0
cvtss2sd %xmm0, %xmm0
movsd %xmm0, (%rbx,%r14,8)
incq %r14
cmpq %r14, %rdx
jne 0x4c53f
incq %r11
addq %rdi, %r10
addq %r9, %r8
cmpq %rcx, %r11
jne 0x4c520
cmpb $0x0, 0x18(%rsp)
jne 0x4c591
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x4c591
callq 0x4690
movq 0x38(%rsp), %rbp
movq %r13, %rbx
jmp 0x4c70b
leaq 0x8(%rsp), %rdi
movl %r14d, %esi
movl %r15d, %edx
movl $0x1, %ecx
movl $0x1, %r8d
callq 0xe578
movq %rbx, 0x98(%rsp)
movq 0x20(%rsp), %r13
imull %r14d, %r15d
testl %r15d, %r15d
je 0x4c813
testq %r13, %r13
je 0x4c813
movq %r15, %rbx
xorl %r14d, %r14d
movl $0x3f00000, %eax        # imm = 0x3F00000
cmpq %rax, %rbx
movl $0x3f00000, %ebp        # imm = 0x3F00000
cmovbq %rbx, %rbp
leaq (%r13,%r14), %rdi
movl $0x1, %esi
movq %rbp, %rdx
movq %r12, %rcx
callq 0x47d0
addq %rax, %r14
subq %rax, %rbx
cmpq %rax, %rbp
jne 0x4c618
testq %rbx, %rbx
jne 0x4c5e2
testq %rbx, %rbx
je 0x4c631
leaq 0x43296(%rip), %rdi     # 0x8f8ba
movq %r14, %rsi
movq %r15, %rdx
xorl %eax, %eax
callq 0xbb10
movq 0x38(%rsp), %rax
movq 0x8(%rax), %rax
movl 0x78(%rsp), %edx
shlq $0x5, %rdx
movslq 0x4(%rax,%rdx), %rcx
testq %rcx, %rcx
jle 0x4c6e8
addq %rdx, %rax
movl (%rax), %edx
movq 0x20(%rsp), %rsi
movl 0x8(%rsp), %edi
movss (%rsp), %xmm0
mulss 0x4(%rsp), %xmm0
movss %xmm0, (%rsp)
movl 0x68(%rsp), %r8d
imulq %rcx, %r8
imulq %rdx, %r8
shlq $0x3, %r8
leaq (,%rdx,8), %r9
xorl %r10d, %r10d
xorl %r11d, %r11d
testl %edx, %edx
movss 0x2c(%rsp), %xmm1
movss 0x4(%rsp), %xmm2
movss (%rsp), %xmm3
jle 0x4c6da
movq 0x18(%rax), %rbx
addq %r8, %rbx
xorl %r14d, %r14d
leal (%r10,%r14), %r15d
movzbl (%rsi,%r15), %ebp
xorps %xmm0, %xmm0
cvtsi2ss %ebp, %xmm0
mulss %xmm2, %xmm0
addss %xmm1, %xmm0
divss %xmm3, %xmm0
cvtss2sd %xmm0, %xmm0
movsd %xmm0, (%rbx,%r14,8)
incq %r14
cmpq %r14, %rdx
jne 0x4c6ac
incq %r11
addq %rdi, %r10
addq %r9, %r8
cmpq %rcx, %r11
jne 0x4c68d
cmpb $0x0, 0x18(%rsp)
jne 0x4c6fe
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x4c6fe
callq 0x4690
movq 0x38(%rsp), %rbp
movq 0x98(%rsp), %rbx
incq %rbx
movslq 0x50(%rsp), %rax
cmpq %rax, %rbx
jl 0x4c318
movq 0x5b885(%rip), %r14     # 0xa7fa8
movq 0x5b85e(%rip), %rbx     # 0xa7f88
movq 0x70(%rsp), %rdi
cmpq %rdi, (%r14)
je 0x4c752
cmpq %rdi, (%rbx)
je 0x4c752
callq 0x4550
testl %eax, %eax
je 0x4c752
leaq 0x428b3(%rip), %rdi     # 0x8effc
movl %eax, %esi
xorl %eax, %eax
callq 0xbb10
cmpq %r12, (%r14)
je 0x4c778
cmpq %r12, (%rbx)
je 0x4c778
movq %r12, %rdi
callq 0x4550
testl %eax, %eax
je 0x4c778
leaq 0x4288d(%rip), %rdi     # 0x8effc
movl %eax, %esi
xorl %eax, %eax
callq 0xbb10
cmpl $0x0, (%rbp)
je 0x4c91e
leaq 0x40(%rsp), %rdi
callq 0x4cbf6
leaq 0x50(%rsp), %rdi
callq 0x4cc48
movq %rbp, %rax
addq $0xda8, %rsp            # imm = 0xDA8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x70(%rsp), %rdi
callq 0x367a9
movq %r12, %rdi
callq 0x367a9
movl $0x4008, %edi           # imm = 0x4008
callq 0x4210
movq %rax, %r14
movq 0x38(%rsp), %rax
movl (%rax), %edx
movl 0x4(%rax), %ecx
movq 0x8(%rax), %r8
leaq 0x43e7b(%rip), %rsi     # 0x9065a
leaq 0x42939(%rip), %r9      # 0x8f11f
movq %r14, %rdi
xorl %eax, %eax
pushq 0x90(%rsp)
pushq %r13
callq 0x36908
addq $0x10, %rsp
leaq 0x5b4ec(%rip), %rsi     # 0xa7cf0
movq 0x5b7c5(%rip), %rdx     # 0xa7fd0
movq %r14, %rdi
callq 0x4910
movl $0x4008, %edi           # imm = 0x4008
callq 0x4210
movq %rax, %r14
cmpl $0x2, %r15d
leaq 0x44107(%rip), %rax     # 0x90932
leaq 0x22036(%rip), %r8      # 0x6e868
cmovaeq %rax, %r8
subq $0x8, %rsp
leaq 0x4302c(%rip), %rsi     # 0x8f86d
leaq 0x2dfbf(%rip), %rcx     # 0x7a807
movq %r14, %rdi
movq %r15, %rdx
movq %r12, %r9
xorl %eax, %eax
pushq %r13
callq 0xc16a
addq $0x10, %rsp
leaq 0x5b3eb(%rip), %rsi     # 0xa7c50
movq 0x5b764(%rip), %rdx     # 0xa7fd0
movq %r14, %rdi
callq 0x4910
movl $0x4008, %edi           # imm = 0x4008
callq 0x4210
movq %rax, %r14
movl (%rbp), %edx
movl 0x4(%rbp), %ecx
movq 0x8(%rbp), %r8
leaq 0x43d26(%rip), %rsi     # 0x905b8
leaq 0x42886(%rip), %r9      # 0x8f11f
movq %rax, %rdi
xorl %eax, %eax
callq 0xc16a
leaq 0x5b3a6(%rip), %rsi     # 0xa7c50
jmp 0x4c8e0
movl $0x4008, %edi           # imm = 0x4008
callq 0x4210
movq %rax, %r14
leaq 0x448c2(%rip), %rsi     # 0x91182
leaq 0x2df4c(%rip), %rcx     # 0x7a813
leaq 0x4a0(%rsp), %rdx
movq %rax, %rdi
xorl %eax, %eax
callq 0x36908
leaq 0x5b410(%rip), %rsi     # 0xa7cf0
movq 0x5b6e9(%rip), %rdx     # 0xa7fd0
movq %r14, %rdi
callq 0x4910
movl $0x4008, %edi           # imm = 0x4008
callq 0x4210
movq %rax, %r14
leaq 0x4487f(%rip), %rsi     # 0x91182
leaq 0x429db(%rip), %rcx     # 0x8f2e5
leaq 0xa0(%rsp), %rdx
movq %rax, %rdi
xorl %eax, %eax
callq 0x36908
jmp 0x4c95c
movl $0x4008, %edi           # imm = 0x4008
callq 0x4210
movq %rax, %r14
movl (%rbp), %edx
movl 0x4(%rbp), %ecx
movq 0x8(%rbp), %r8
subq $0x8, %rsp
leaq 0x43d7a(%rip), %rsi     # 0x906ba
leaq 0x427d8(%rip), %r9      # 0x8f11f
movq %rax, %rdi
xorl %eax, %eax
pushq 0x98(%rsp)
callq 0x36908
addq $0x10, %rsp
leaq 0x5b38d(%rip), %rsi     # 0xa7cf0
movq 0x5b666(%rip), %rdx     # 0xa7fd0
movq %r14, %rdi
callq 0x4910
jmp 0x4c988
jmp 0x4c988
jmp 0x4c978
movq %rax, %rbx
movq %r14, %rdi
callq 0x43c0
jmp 0x4ca64
movq %rax, %rbx
movq %r14, %rdi
callq 0x43c0
jmp 0x4ca50
jmp 0x4ca06
jmp 0x4c9a9
movq %rax, %rbx
movq %r14, %rdi
callq 0x43c0
jmp 0x4c9ac
movq %rax, %rbx
cmpb $0x0, 0x18(%rsp)
jne 0x4ca50
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x4ca50
jmp 0x4ca4b
jmp 0x4ca06
jmp 0x4ca06
movq %rax, %rbx
cmpb $0x0, 0x18(%rsp)
jne 0x4ca50
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x4ca50
jmp 0x4ca4b
jmp 0x4ca06
movq %rax, %rbx
cmpb $0x0, 0x18(%rsp)
jne 0x4ca50
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x4ca50
jmp 0x4ca4b
jmp 0x4ca06
jmp 0x4ca06
jmp 0x4ca06
jmp 0x4ca06
jmp 0x4ca06
movq %rax, %rbx
jmp 0x4ca50
movq %rax, %rbx
cmpb $0x0, 0x18(%rsp)
jne 0x4ca50
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x4ca50
jmp 0x4ca4b
movq %rax, %rbx
cmpb $0x0, 0x18(%rsp)
jne 0x4ca50
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x4ca50
jmp 0x4ca4b
movq %rax, %rbx
cmpb $0x0, 0x18(%rsp)
jne 0x4ca50
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x4ca50
callq 0x4690
leaq 0x40(%rsp), %rdi
callq 0x4cbf6
leaq 0x50(%rsp), %rdi
callq 0x4cc48
movq %rbx, %rdi
callq 0x4960