// File: /workspace/github_cpp_makefile_star2_O3/manikandan5[P]Image-Matching-Stitching-Warping/./CImg.h
// Function: cimg_library::CImg<double>::save(char const*, int, unsigned int) const
const CImg<T>& save(const char *const filename, const int number=-1, const unsigned int digits=6) const {
      if (!filename)
        throw CImgArgumentException(_cimg_instance
                                    "save(): Specified filename is (null).",
                                    cimg_instance);
      // Do not test for empty instances, since .cimg format is able to manage empty instances.
      const bool is_stdout = *filename=='-' && (!filename[1] || filename[1]=='.');
      const char *const ext = cimg::split_filename(filename);
      char nfilename[1024] = { 0 };
      const char *const fn = is_stdout?filename:(number>=0)?cimg::number_filename(filename,number,digits,nfilename):
        filename;

#ifdef cimg_save_plugin
      cimg_save_plugin(fn);
#endif
#ifdef cimg_save_plugin1
      cimg_save_plugin1(fn);
#endif
#ifdef cimg_save_plugin2
      cimg_save_plugin2(fn);
#endif
#ifdef cimg_save_plugin3
      cimg_save_plugin3(fn);
#endif
#ifdef cimg_save_plugin4
      cimg_save_plugin4(fn);
#endif
#ifdef cimg_save_plugin5
      cimg_save_plugin5(fn);
#endif
#ifdef cimg_save_plugin6
      cimg_save_plugin6(fn);
#endif
#ifdef cimg_save_plugin7
      cimg_save_plugin7(fn);
#endif
#ifdef cimg_save_plugin8
      cimg_save_plugin8(fn);
#endif
      // Ascii formats
      if (!cimg::strcasecmp(ext,"asc")) return save_ascii(fn);
      else if (!cimg::strcasecmp(ext,"dlm") ||
               !cimg::strcasecmp(ext,"txt")) return save_dlm(fn);
      else if (!cimg::strcasecmp(ext,"cpp") ||
               !cimg::strcasecmp(ext,"hpp") ||
               !cimg::strcasecmp(ext,"h") ||
               !cimg::strcasecmp(ext,"c")) return save_cpp(fn);

      // 2d binary formats
      else if (!cimg::strcasecmp(ext,"bmp")) return save_bmp(fn);
      else if (!cimg::strcasecmp(ext,"jpg") ||
               !cimg::strcasecmp(ext,"jpeg") ||
               !cimg::strcasecmp(ext,"jpe") ||
               !cimg::strcasecmp(ext,"jfif") ||
               !cimg::strcasecmp(ext,"jif")) return save_jpeg(fn);
      else if (!cimg::strcasecmp(ext,"rgb")) return save_rgb(fn);
      else if (!cimg::strcasecmp(ext,"rgba")) return save_rgba(fn);
      else if (!cimg::strcasecmp(ext,"png")) return save_png(fn);
      else if (!cimg::strcasecmp(ext,"pgm") ||
               !cimg::strcasecmp(ext,"ppm") ||
               !cimg::strcasecmp(ext,"pnm")) return save_pnm(fn);
      else if (!cimg::strcasecmp(ext,"pnk")) return save_pnk(fn);
      else if (!cimg::strcasecmp(ext,"pfm")) return save_pfm(fn);
      else if (!cimg::strcasecmp(ext,"exr")) return save_exr(fn);
      else if (!cimg::strcasecmp(ext,"tif") ||
               !cimg::strcasecmp(ext,"tiff")) return save_tiff(fn);

      // 3d binary formats
      else if (!cimg::strcasecmp(ext,"cimgz")) return save_cimg(fn,true);
      else if (!cimg::strcasecmp(ext,"cimg") || !*ext) return save_cimg(fn,false);
      else if (!cimg::strcasecmp(ext,"dcm")) return save_medcon_external(fn);
      else if (!cimg::strcasecmp(ext,"hdr") ||
               !cimg::strcasecmp(ext,"nii")) return save_analyze(fn);
      else if (!cimg::strcasecmp(ext,"inr")) return save_inr(fn);
      else if (!cimg::strcasecmp(ext,"mnc")) return save_minc2(fn);
      else if (!cimg::strcasecmp(ext,"pan")) return save_pandore(fn);
      else if (!cimg::strcasecmp(ext,"raw")) return save_raw(fn);

      // Archive files
      else if (!cimg::strcasecmp(ext,"gz")) return save_gzip_external(fn);

      // Image sequences
      else if (!cimg::strcasecmp(ext,"yuv")) return save_yuv(fn,true);
      else if (!cimg::strcasecmp(ext,"avi") ||
               !cimg::strcasecmp(ext,"mov") ||
               !cimg::strcasecmp(ext,"asf") ||
               !cimg::strcasecmp(ext,"divx") ||
               !cimg::strcasecmp(ext,"flv") ||
               !cimg::strcasecmp(ext,"mpg") ||
               !cimg::strcasecmp(ext,"m1v") ||
               !cimg::strcasecmp(ext,"m2v") ||
               !cimg::strcasecmp(ext,"m4v") ||
               !cimg::strcasecmp(ext,"mjp") ||
               !cimg::strcasecmp(ext,"mp4") ||
               !cimg::strcasecmp(ext,"mkv") ||
               !cimg::strcasecmp(ext,"mpe") ||
               !cimg::strcasecmp(ext,"movie") ||
               !cimg::strcasecmp(ext,"ogm") ||
               !cimg::strcasecmp(ext,"ogg") ||
               !cimg::strcasecmp(ext,"ogv") ||
               !cimg::strcasecmp(ext,"qt") ||
               !cimg::strcasecmp(ext,"rm") ||
               !cimg::strcasecmp(ext,"vob") ||
               !cimg::strcasecmp(ext,"wmv") ||
               !cimg::strcasecmp(ext,"xvid") ||
               !cimg::strcasecmp(ext,"mpeg")) return save_video(fn);
      return save_other(fn);
    }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xc18, %rsp            # imm = 0xC18
movq %rdi, %r14
testq %rsi, %rsi
je 0x847f
movl %ecx, %r12d
movl %edx, %ebp
movq %rsi, %r13
movb $0x1, %bl
cmpb $0x2d, (%rsi)
jne 0x7a76
movb 0x1(%r13), %al
testb %al, %al
setne %cl
cmpb $0x2e, %al
setne %bl
andb %cl, %bl
movq %r13, %rax
movq %rax, %r15
movq %rax, %rdi
movl $0x2e, %esi
callq 0x41a0
incq %rax
cmpq %r13, %rax
jae 0x7a79
cmpq %r13, %r15
jne 0x7aa4
movq %r13, %rdi
callq 0x41e0
movq %rax, %r15
addq %r13, %r15
leaq 0x410(%rsp), %rdi
movl $0x400, %edx            # imm = 0x400
xorl %esi, %esi
callq 0x4290
testl %ebp, %ebp
sets %al
xorb $0x1, %bl
orb %al, %bl
jne 0x7ba3
movl %r12d, 0xc(%rsp)
leaq 0x810(%rsp), %rdi
movl $0x400, %edx            # imm = 0x400
xorl %esi, %esi
callq 0x4290
leaq 0x10(%rsp), %rdi
movl $0x400, %edx            # imm = 0x400
xorl %esi, %esi
callq 0x4290
movq %r13, %rax
movq %rax, %rbx
movq %rax, %rdi
movl $0x2e, %esi
callq 0x41a0
incq %rax
cmpq %r13, %rax
jae 0x7af5
movq %r14, %r12
cmpq %r13, %rbx
je 0x7b36
movl %r13d, %r14d
notl %r14d
addl %ebx, %r14d
leaq 0x10(%rsp), %rdi
movq %r13, %rsi
movq %r14, %rdx
callq 0x4440
movb $0x0, 0x10(%rsp,%r14)
jmp 0x7b51
leaq 0x10(%rsp), %rdi
movq %r13, %rsi
callq 0x44e0
movq %r13, %rdi
callq 0x41e0
movq %rax, %rbx
addq %r13, %rbx
cmpb $0x0, (%rbx)
leaq 0x89c43(%rip), %rax     # 0x9179e
leaq 0x89c2d(%rip), %rdx     # 0x9178f
cmoveq %rax, %rdx
leaq 0x810(%rsp), %r14
movl $0x400, %esi            # imm = 0x400
movq %r14, %rdi
movl 0xc(%rsp), %ecx
xorl %eax, %eax
callq 0x4890
leaq 0x10(%rsp), %rdx
leaq 0x410(%rsp), %r13
movq %r13, %rdi
movq %r14, %rsi
movl %ebp, %ecx
movq %rbx, %r8
xorl %eax, %eax
callq 0x40a0
movq %r12, %r14
movq %r15, %rdi
callq 0x41e0
movl %eax, %eax
cmpq $0x3, %rax
movl $0x3, %edx
cmovbq %rax, %rdx
incq %rdx
xorl %ecx, %ecx
leaq 0x87629(%rip), %rsi     # 0x8f1ef
movzbl (%r15,%rcx), %edi
leal -0x5b(%rdi), %r8d
leal 0x20(%rdi), %r9d
cmpb $-0x1a, %r8b
movzbl %r9b, %r8d
cmovbl %edi, %r8d
movzbl (%rcx,%rsi), %edi
leal -0x5b(%rdi), %r9d
leal 0x20(%rdi), %r10d
cmpb $-0x1a, %r9b
movzbl %r10b, %r9d
cmovbl %edi, %r9d
cmpb %r9b, %r8b
jne 0x7c05
incq %rcx
cmpl %ecx, %edx
jne 0x7bc6
jmp 0x7c18
cmpq $0x3, %rax
movl $0x3, %ebx
cmovaeq %rbx, %rax
incl %eax
cmpl %ecx, %eax
jne 0x7c2a
movq %r14, %rdi
xorl %esi, %esi
movq %r13, %rdx
callq 0x5c942
jmp 0x7d16
movq %r15, %rdi
callq 0x41e0
movl %eax, %eax
cmpq $0x3, %rax
cmovbq %rax, %rbx
incq %rbx
xorl %ecx, %ecx
leaq 0x875ab(%rip), %rdx     # 0x8f1f3
movzbl (%r15,%rcx), %esi
leal -0x5b(%rsi), %edi
leal 0x20(%rsi), %r8d
cmpb $-0x1a, %dil
movzbl %r8b, %edi
cmovbl %esi, %edi
movzbl (%rcx,%rdx), %esi
leal -0x5b(%rsi), %r8d
leal 0x20(%rsi), %r9d
cmpb $-0x1a, %r8b
movzbl %r9b, %r8d
cmovbl %esi, %r8d
cmpb %r8b, %dil
jne 0x7c88
incq %rcx
cmpl %ecx, %ebx
jne 0x7c48
jmp 0x7d09
cmpq $0x3, %rax
movl $0x3, %ebx
cmovaeq %rbx, %rax
incl %eax
cmpl %ecx, %eax
je 0x7d09
movq %r15, %rdi
callq 0x41e0
movl %eax, %eax
cmpq $0x3, %rax
cmovbq %rax, %rbx
incq %rbx
xorl %ecx, %ecx
leaq 0x8753e(%rip), %rdx     # 0x8f1f7
movzbl (%r15,%rcx), %esi
leal -0x5b(%rsi), %edi
leal 0x20(%rsi), %r8d
cmpb $-0x1a, %dil
movzbl %r8b, %edi
cmovbl %esi, %edi
movzbl (%rcx,%rdx), %esi
leal -0x5b(%rsi), %r8d
leal 0x20(%rsi), %r9d
cmpb $-0x1a, %r8b
movzbl %r9b, %r8d
cmovbl %esi, %r8d
cmpb %r8b, %dil
jne 0x7cf6
incq %rcx
cmpl %ecx, %ebx
jne 0x7cb9
jmp 0x7d09
cmpq $0x3, %rax
movl $0x3, %ebx
cmovaeq %rbx, %rax
incl %eax
cmpl %ecx, %eax
jne 0x7d28
movq %r14, %rdi
xorl %esi, %esi
movq %r13, %rdx
callq 0x5cb0c
addq $0xc18, %rsp            # imm = 0xC18
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %r15, %rdi
callq 0x41e0
movl %eax, %eax
cmpq $0x3, %rax
cmovbq %rax, %rbx
incq %rbx
xorl %ecx, %ecx
leaq 0x89a34(%rip), %rdx     # 0x9177a
movzbl (%r15,%rcx), %esi
leal -0x5b(%rsi), %edi
leal 0x20(%rsi), %r8d
cmpb $-0x1a, %dil
movzbl %r8b, %edi
cmovbl %esi, %edi
movzbl (%rcx,%rdx), %esi
leal -0x5b(%rsi), %r8d
leal 0x20(%rsi), %r9d
cmpb $-0x1a, %r8b
movzbl %r9b, %r8d
cmovbl %esi, %r8d
cmpb %r8b, %dil
jne 0x7d86
incq %rcx
cmpl %ecx, %ebx
jne 0x7d46
jmp 0x7ed4
cmpq $0x3, %rax
movl $0x3, %ebx
cmovaeq %rbx, %rax
incl %eax
cmpl %ecx, %eax
je 0x7ed4
movq %r15, %rdi
callq 0x41e0
movl %eax, %eax
cmpq $0x3, %rax
cmovbq %rax, %rbx
incq %rbx
xorl %ecx, %ecx
leaq 0x899c3(%rip), %rdx     # 0x9177e
movzbl (%r15,%rcx), %esi
leal -0x5b(%rsi), %edi
leal 0x20(%rsi), %r8d
cmpb $-0x1a, %dil
movzbl %r8b, %edi
cmovbl %esi, %edi
movzbl (%rcx,%rdx), %esi
leal -0x5b(%rsi), %r8d
leal 0x20(%rsi), %r9d
cmpb $-0x1a, %r8b
movzbl %r9b, %r8d
cmovbl %esi, %r8d
cmpb %r8b, %dil
jne 0x7dfb
incq %rcx
cmpl %ecx, %ebx
jne 0x7dbb
jmp 0x7ed4
cmpq $0x3, %rax
movl $0x3, %edx
cmovbq %rax, %rdx
incl %edx
cmpl %ecx, %edx
je 0x7ed4
movq %r15, %rdi
callq 0x41e0
xorl %ecx, %ecx
testl %eax, %eax
setne %cl
leal 0x1(%rcx), %eax
incq %rcx
xorl %edx, %edx
leaq 0x67c9a(%rip), %rsi     # 0x6faca
movzbl (%r15,%rdx), %edi
leal -0x5b(%rdi), %r8d
leal 0x20(%rdi), %r9d
cmpb $-0x1a, %r8b
movzbl %r9b, %r8d
cmovbl %edi, %r8d
movzbl (%rdx,%rsi), %edi
leal -0x5b(%rdi), %r9d
leal 0x20(%rdi), %r10d
cmpb $-0x1a, %r9b
movzbl %r10b, %r9d
cmovbl %edi, %r9d
cmpb %r9b, %r8b
jne 0x7e6f
incq %rdx
cmpl %edx, %ecx
jne 0x7e30
jmp 0x7ed4
cmpl %edx, %eax
je 0x7ed4
movq %r15, %rdi
callq 0x41e0
xorl %ecx, %ecx
testl %eax, %eax
setne %cl
leal 0x1(%rcx), %eax
incq %rcx
xorl %edx, %edx
leaq 0x87eda(%rip), %rsi     # 0x8fd6b
movzbl (%r15,%rdx), %edi
leal -0x5b(%rdi), %r8d
leal 0x20(%rdi), %r9d
cmpb $-0x1a, %r8b
movzbl %r9b, %r8d
cmovbl %edi, %r8d
movzbl (%rdx,%rsi), %edi
leal -0x5b(%rdi), %r9d
leal 0x20(%rdi), %r10d
cmpb $-0x1a, %r9b
movzbl %r10b, %r9d
cmovbl %edi, %r9d
cmpb %r9b, %r8b
jne 0x7ed0
incq %rdx
cmpl %edx, %ecx
jne 0x7e91
jmp 0x7ed4
cmpl %edx, %eax
jne 0x7ee6
movq %r14, %rdi
xorl %esi, %esi
movq %r13, %rdx
callq 0x5ced6
jmp 0x7d16
movq %r15, %rdi
callq 0x41e0
movl %eax, %eax
cmpq $0x3, %rax
movl $0x3, %edx
cmovbq %rax, %rdx
incq %rdx
xorl %ecx, %ecx
leaq 0x872f2(%rip), %rsi     # 0x8f1fb
movzbl (%r15,%rcx), %edi
leal -0x5b(%rdi), %r8d
leal 0x20(%rdi), %r9d
cmpb $-0x1a, %r8b
movzbl %r9b, %r8d
cmovbl %edi, %r8d
movzbl (%rcx,%rsi), %edi
leal -0x5b(%rdi), %r9d
leal 0x20(%rdi), %r10d
cmpb $-0x1a, %r9b
movzbl %r10b, %r9d
cmovbl %edi, %r9d
cmpb %r9b, %r8b
jne 0x7f48
incq %rcx
cmpl %ecx, %edx
jne 0x7f09
jmp 0x7f5b
cmpq $0x3, %rax
movl $0x3, %ebx
cmovaeq %rbx, %rax
incl %eax
cmpl %ecx, %eax
jne 0x7f6d
movq %r14, %rdi
xorl %esi, %esi
movq %r13, %rdx
callq 0x5d1a4
jmp 0x7d16
movq %r15, %rdi
callq 0x41e0
movl %eax, %eax
cmpq $0x3, %rax
cmovbq %rax, %rbx
incq %rbx
xorl %ecx, %ecx
leaq 0x67c11(%rip), %rdx     # 0x6fb9c
movzbl (%r15,%rcx), %esi
leal -0x5b(%rsi), %edi
leal 0x20(%rsi), %r8d
cmpb $-0x1a, %dil
movzbl %r8b, %edi
cmovbl %esi, %edi
movzbl (%rcx,%rdx), %esi
leal -0x5b(%rsi), %r8d
leal 0x20(%rsi), %r9d
cmpb $-0x1a, %r8b
movzbl %r9b, %r8d
cmovbl %esi, %r8d
cmpb %r8b, %dil
jne 0x7fcb
incq %rcx
cmpl %ecx, %ebx
jne 0x7f8b
jmp 0x8468
cmpq $0x3, %rax
movl $0x3, %edx
cmovbq %rax, %rdx
incl %edx
cmpl %ecx, %edx
je 0x8468
leaq 0x87216(%rip), %rsi     # 0x8f1ff
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8468
leaq 0x87204(%rip), %rsi     # 0x8f204
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8468
leaq 0x871f1(%rip), %rsi     # 0x8f208
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8468
leaq 0x871df(%rip), %rsi     # 0x8f20d
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8468
leaq 0x8973d(%rip), %rsi     # 0x91782
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x84f0
leaq 0x8972a(%rip), %rsi     # 0x91786
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8502
leaq 0x8813b(%rip), %rsi     # 0x901ae
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8528
leaq 0x87187(%rip), %rsi     # 0x8f211
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8514
leaq 0x88fc6(%rip), %rsi     # 0x91067
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8514
leaq 0x89450(%rip), %rsi     # 0x91508
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8514
leaq 0x8714a(%rip), %rsi     # 0x8f219
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x853c
leaq 0x87137(%rip), %rsi     # 0x8f21d
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x854e
leaq 0x8712d(%rip), %rsi     # 0x8f22a
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8575
leaq 0x8710d(%rip), %rsi     # 0x8f221
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x855e
leaq 0x870fa(%rip), %rsi     # 0x8f225
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x855e
leaq 0x87132(%rip), %rsi     # 0x8f274
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x858f
leaq 0x8a926(%rip), %rsi     # 0x92a7f
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8585
cmpb $0x0, (%r15)
je 0x8585
leaq 0x870e0(%rip), %rsi     # 0x8f25a
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x85b6
leaq 0x88110(%rip), %rsi     # 0x902a1
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x85a4
leaq 0x870bc(%rip), %rsi     # 0x8f264
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x85a4
leaq 0x870ad(%rip), %rsi     # 0x8f26c
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x85c6
leaq 0x87092(%rip), %rsi     # 0x8f268
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x85da
leaq 0x87083(%rip), %rsi     # 0x8f270
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x85ec
leaq 0x87ef0(%rip), %rsi     # 0x900f4
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8600
leaq 0x872bc(%rip), %rsi     # 0x8f4d7
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x862e
leaq 0x89559(%rip), %rsi     # 0x9178b
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x863e
leaq 0x87031(%rip), %rsi     # 0x8f27a
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x8701e(%rip), %rsi     # 0x8f27e
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x8700b(%rip), %rsi     # 0x8f282
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x86ff8(%rip), %rsi     # 0x8f286
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x86fe6(%rip), %rsi     # 0x8f28b
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x86fd3(%rip), %rsi     # 0x8f28f
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x86fc0(%rip), %rsi     # 0x8f293
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x86fad(%rip), %rsi     # 0x8f297
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x86f9a(%rip), %rsi     # 0x8f29b
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x86f87(%rip), %rsi     # 0x8f29f
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x86f74(%rip), %rsi     # 0x8f2a3
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x86f61(%rip), %rsi     # 0x8f2a7
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x86f4e(%rip), %rsi     # 0x8f2ab
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x86f3b(%rip), %rsi     # 0x8f2af
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x86f2a(%rip), %rsi     # 0x8f2b5
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x86f17(%rip), %rsi     # 0x8f2b9
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x86f04(%rip), %rsi     # 0x8f2bd
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x86ef1(%rip), %rsi     # 0x8f2c1
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x86edd(%rip), %rsi     # 0x8f2c4
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x86ec9(%rip), %rsi     # 0x8f2c7
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x86eb6(%rip), %rsi     # 0x8f2cb
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x86ea3(%rip), %rsi     # 0x8f2cf
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
leaq 0x88cd8(%rip), %rsi     # 0x9111b
movq %r15, %rdi
callq 0x3995e
testl %eax, %eax
je 0x8614
movq %r14, %rdi
movq %r13, %rsi
movl $0x64, %edx
callq 0x5c6de
jmp 0x7d16
movq %r14, %rdi
xorl %esi, %esi
movq %r13, %rdx
movl $0x64, %ecx
callq 0x5d890
jmp 0x7d16
movl $0x4008, %edi           # imm = 0x4008
callq 0x4210
movq %rax, %rbx
movl (%r14), %edx
movl 0x4(%r14), %ecx
movl 0x8(%r14), %r8d
movl 0xc(%r14), %r9d
leaq 0x663c6(%rip), %rax     # 0x6e868
leaq 0x67799(%rip), %r10     # 0x6fc42
cmpb $0x0, 0x10(%r14)
cmovneq %rax, %r10
subq $0x8, %rsp
leaq 0x86c62(%rip), %r11     # 0x8f11f
leaq 0x89262(%rip), %rsi     # 0x91726
movq %rbx, %rdi
xorl %eax, %eax
pushq %r11
pushq %r10
pushq 0x18(%r14)
callq 0xc16a
addq $0x20, %rsp
leaq 0x9f76f(%rip), %rsi     # 0xa7c50
movq 0x9fae8(%rip), %rdx     # 0xa7fd0
movq %rbx, %rdi
callq 0x4910
movq %r14, %rdi
xorl %esi, %esi
movq %r13, %rdx
callq 0x5da4c
jmp 0x7d16
movq %r14, %rdi
xorl %esi, %esi
movq %r13, %rdx
callq 0x5dda2
jmp 0x7d16
movq %r14, %rdi
xorl %esi, %esi
movq %r13, %rdx
xorl %ecx, %ecx
callq 0x5e298
jmp 0x7d16
movq %r14, %rdi
xorl %esi, %esi
movq %r13, %rdx
xorl %ecx, %ecx
callq 0x5e156
jmp 0x7d16
movq %r14, %rdi
xorl %esi, %esi
movq %r13, %rdx
callq 0x5f184
jmp 0x7d16
movq %r14, %rdi
movq %r13, %rsi
callq 0x5af9e
jmp 0x7d16
movq %r14, %rdi
movq %r13, %rsi
xorl %edx, %edx
xorl %ecx, %ecx
xorl %r8d, %r8d
callq 0x5b1a6
jmp 0x7d16
movq %r14, %rdi
movq %r13, %rsi
callq 0x5b012
jmp 0x7d16
movq %r14, %rdi
movq %r13, %rsi
xorl %edx, %edx
jmp 0x859a
movq %r14, %rdi
movq %r13, %rsi
movl $0x1, %edx
callq 0x5b2ca
jmp 0x7d16
movq %r14, %rdi
movq %r13, %rsi
xorl %edx, %edx
callq 0x5b8a4
jmp 0x7d16
movq %r14, %rdi
movq %r13, %rsi
callq 0x5b32e
jmp 0x7d16
movq %r14, %rdi
xorl %esi, %esi
movq %r13, %rdx
xorl %ecx, %ecx
callq 0x5ffa6
jmp 0x7d16
movq %r14, %rdi
movq %r13, %rsi
xorl %edx, %edx
callq 0x5be72
jmp 0x7d16
movq %r14, %rdi
xorl %esi, %esi
movq %r13, %rdx
xorl %ecx, %ecx
callq 0x6043c
jmp 0x7d16
movq %r14, %rdi
xorl %esi, %esi
movq %r13, %rdx
xorl %ecx, %ecx
callq 0x617d4
jmp 0x7d16
movq %r14, %rdi
movq %r13, %rsi
movl $0x19, %edx
xorl %ecx, %ecx
xorl %r8d, %r8d
callq 0x5c616
jmp 0x7d16
movq %r14, %rdi
movq %r13, %rsi
callq 0x5bf96
jmp 0x7d16
movq %r14, %rdi
movq %r13, %rsi
movl $0x1, %edx
callq 0x5c5ae
jmp 0x7d16
movq %rax, %r14
movq %rbx, %rdi
callq 0x43c0
movq %r14, %rdi
callq 0x4960