// File: /workspace/github_cpp_makefile_star2_O1/manikandan5[P]Image-Matching-Stitching-Warping/./CImg.h
// Function: int cimg_library::cimg::dialog<unsigned char>(char const*, char const*, char const*, char const*, char const*, char const*, char const*, char const*, cimg_library::CImg<unsigned char> const&, bool)
inline int dialog(const char *const title, const char *const msg,
                    const char *const button1_label, const char *const button2_label,
                    const char *const button3_label, const char *const button4_label,
                    const char *const button5_label, const char *const button6_label,
                    const CImg<t>& logo, const bool is_centered = false) {
#if cimg_display==0
    cimg::unused(title,msg,button1_label,button2_label,button3_label,button4_label,button5_label,button6_label,
                 logo._data,is_centered);
    throw CImgIOException("cimg::dialog(): No display available.");
#else
    const unsigned char
      black[] = { 0,0,0 }, white[] = { 255,255,255 }, gray[] = { 200,200,200 }, gray2[] = { 150,150,150 };

    // Create buttons and canvas graphics
    CImgList<unsigned char> buttons, cbuttons, sbuttons;
    if (button1_label) { CImg<unsigned char>().draw_text(0,0,button1_label,black,gray,1,13).move_to(buttons);
      if (button2_label) { CImg<unsigned char>().draw_text(0,0,button2_label,black,gray,1,13).move_to(buttons);
        if (button3_label) { CImg<unsigned char>().draw_text(0,0,button3_label,black,gray,1,13).move_to(buttons);
          if (button4_label) { CImg<unsigned char>().draw_text(0,0,button4_label,black,gray,1,13).move_to(buttons);
            if (button5_label) { CImg<unsigned char>().draw_text(0,0,button5_label,black,gray,1,13).move_to(buttons);
              if (button6_label) { CImg<unsigned char>().draw_text(0,0,button6_label,black,gray,1,13).move_to(buttons);
              }}}}}}
    if (!buttons._width)
      throw CImgArgumentException("cimg::dialog(): No buttons have been defined.");
    cimglist_for(buttons,l) buttons[l].resize(-100,-100,1,3);

    unsigned int bw = 0, bh = 0;
    cimglist_for(buttons,l) { bw = cimg::max(bw,buttons[l]._width); bh = cimg::max(bh,buttons[l]._height); }
    bw+=8; bh+=8;
    if (bw<64) bw = 64;
    if (bw>128) bw = 128;
    if (bh<24) bh = 24;
    if (bh>48) bh = 48;

    CImg<unsigned char> button(bw,bh,1,3);
    button.draw_rectangle(0,0,bw-1,bh-1,gray);
    button.draw_line(0,0,bw-1,0,white).draw_line(0,bh-1,0,0,white);
    button.draw_line(bw-1,0,bw-1,bh-1,black).draw_line(bw-1,bh-1,0,bh-1,black);
    button.draw_line(1,bh-2,bw-2,bh-2,gray2).draw_line(bw-2,bh-2,bw-2,1,gray2);
    CImg<unsigned char> sbutton(bw,bh,1,3);
    sbutton.draw_rectangle(0,0,bw-1,bh-1,gray);
    sbutton.draw_line(0,0,bw-1,0,black).draw_line(bw-1,0,bw-1,bh-1,black);
    sbutton.draw_line(bw-1,bh-1,0,bh-1,black).draw_line(0,bh-1,0,0,black);
    sbutton.draw_line(1,1,bw-2,1,white).draw_line(1,bh-2,1,1,white);
    sbutton.draw_line(bw-2,1,bw-2,bh-2,black).draw_line(bw-2,bh-2,1,bh-2,black);
    sbutton.draw_line(2,bh-3,bw-3,bh-3,gray2).draw_line(bw-3,bh-3,bw-3,2,gray2);
    sbutton.draw_line(4,4,bw-5,4,black,1,0xAAAAAAAA,true).draw_line(bw-5,4,bw-5,bh-5,black,1,0xAAAAAAAA,false);
    sbutton.draw_line(bw-5,bh-5,4,bh-5,black,1,0xAAAAAAAA,false).draw_line(4,bh-5,4,4,black,1,0xAAAAAAAA,false);
    CImg<unsigned char> cbutton(bw,bh,1,3);
    cbutton.draw_rectangle(0,0,bw-1,bh-1,black).draw_rectangle(1,1,bw-2,bh-2,gray2).draw_rectangle(2,2,bw-3,bh-3,gray);
    cbutton.draw_line(4,4,bw-5,4,black,1,0xAAAAAAAA,true).draw_line(bw-5,4,bw-5,bh-5,black,1,0xAAAAAAAA,false);
    cbutton.draw_line(bw-5,bh-5,4,bh-5,black,1,0xAAAAAAAA,false).draw_line(4,bh-5,4,4,black,1,0xAAAAAAAA,false);

    cimglist_for(buttons,ll) {
      CImg<unsigned char>(cbutton).draw_image(1+(bw-buttons[ll].width())/2,1+(bh-buttons[ll].height())/2,buttons[ll]).
        move_to(cbuttons);
      CImg<unsigned char>(sbutton).draw_image((bw-buttons[ll].width())/2,(bh-buttons[ll].height())/2,buttons[ll]).
        move_to(sbuttons);
      CImg<unsigned char>(button).draw_image((bw-buttons[ll].width())/2,(bh-buttons[ll].height())/2,buttons[ll]).
        move_to(buttons[ll]);
    }

    CImg<unsigned char> canvas;
    if (msg)
      ((CImg<unsigned char>().draw_text(0,0,"%s",gray,0,1,13,msg)*=-1)+=200).resize(-100,-100,1,3).move_to(canvas);

    const unsigned int
      bwall = (buttons._width-1)*(12+bw) + bw,
      w = cimg::max(196U,36+logo._width+canvas._width,24+bwall),
      h = cimg::max(96U,36+canvas._height+bh,36+logo._height+bh),
      lx = 12 + (canvas._data?0:((w-24-logo._width)/2)),
      ly = (h-12-bh-logo._height)/2,
      tx = lx+logo._width+12,
      ty = (h-12-bh-canvas._height)/2,
      bx = (w-bwall)/2,
      by = h-12-bh;

    if (canvas._data)
      canvas = CImg<unsigned char>(w,h,1,3).
        draw_rectangle(0,0,w-1,h-1,gray).
        draw_line(0,0,w-1,0,white).draw_line(0,h-1,0,0,white).
        draw_line(w-1,0,w-1,h-1,black).draw_line(w-1,h-1,0,h-1,black).
        draw_image(tx,ty,canvas);
    else
      canvas = CImg<unsigned char>(w,h,1,3).
        draw_rectangle(0,0,w-1,h-1,gray).
        draw_line(0,0,w-1,0,white).draw_line(0,h-1,0,0,white).
        draw_line(w-1,0,w-1,h-1,black).draw_line(w-1,h-1,0,h-1,black);
    if (logo._data) canvas.draw_image(lx,ly,logo);

    unsigned int xbuttons[6] = { 0 };
    cimglist_for(buttons,lll) { xbuttons[lll] = bx+(bw+12)*lll; canvas.draw_image(xbuttons[lll],by,buttons[lll]); }

    // Open window and enter events loop
    CImgDisplay disp(canvas,title?title:" ",0,false,is_centered?true:false);
    if (is_centered) disp.move((CImgDisplay::screen_width() - disp.width())/2,
                             (CImgDisplay::screen_height() - disp.height())/2);
    bool stop_flag = false, refresh = false;
    int oselected = -1, oclicked = -1, selected = -1, clicked = -1;
    while (!disp.is_closed() && !stop_flag) {
      if (refresh) {
        if (clicked>=0)
          CImg<unsigned char>(canvas).draw_image(xbuttons[clicked],by,cbuttons[clicked]).display(disp);
        else {
          if (selected>=0)
            CImg<unsigned char>(canvas).draw_image(xbuttons[selected],by,sbuttons[selected]).display(disp);
          else canvas.display(disp);
        }
        refresh = false;
      }
      disp.wait(15);
      if (disp.is_resized()) disp.resize(disp,false);

      if (disp.button()&1)  {
        oclicked = clicked;
        clicked = -1;
        cimglist_for(buttons,l)
          if (disp.mouse_y()>=(int)by && disp.mouse_y()<(int)(by+bh) &&
              disp.mouse_x()>=(int)xbuttons[l] && disp.mouse_x()<(int)(xbuttons[l]+bw)) {
            clicked = selected = l;
            refresh = true;
          }
        if (clicked!=oclicked) refresh = true;
      } else if (clicked>=0) stop_flag = true;

      if (disp.key()) {
        oselected = selected;
        switch (disp.key()) {
        case cimg::keyESC : selected=-1; stop_flag = true; break;
        case cimg::keyENTER : if (selected<0) selected = 0; stop_flag = true; break;
        case cimg::keyTAB :
        case cimg::keyARROWRIGHT :
        case cimg::keyARROWDOWN : selected = (selected+1)%buttons._width; break;
        case cimg::keyARROWLEFT :
        case cimg::keyARROWUP : selected = (selected+buttons._width-1)%buttons._width; break;
        }
        disp.set_key();
        if (selected!=oselected) refresh = true;
      }
    }
    if (!disp) selected = -1;
    return selected;
#endif
  }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x638, %rsp            # imm = 0x638
movq %rsi, 0x70(%rsp)
movq %rdi, %rbp
movb $0x0, 0xe(%rsp)
movw $0x0, 0xc(%rsp)
movb $-0x1, 0x16(%rsp)
movw $0xffff, 0x14(%rsp)     # imm = 0xFFFF
movb $-0x38, 0x12(%rsp)
movw $0xc8c8, 0x10(%rsp)     # imm = 0xC8C8
movb $-0x6a, 0x1a(%rsp)
movw $0x9696, 0x18(%rsp)     # imm = 0x9696
xorps %xmm0, %xmm0
movaps %xmm0, 0x20(%rsp)
movaps %xmm0, 0xb0(%rsp)
movaps %xmm0, 0xa0(%rsp)
testq %rdx, %rdx
je 0xcce9
movq %r9, %rbx
movq %r8, %r14
movq %rcx, %r15
movq %rdx, %rcx
leaq 0x140(%rsp), %rdi
movq $0x0, 0x18(%rdi)
movaps %xmm0, (%rdi)
movb $0x0, 0x10(%rdi)
subq $0x8, %rsp
leaq 0x14(%rsp), %r8
leaq 0x18(%rsp), %r9
movss 0x64913(%rip), %xmm0    # 0x712b0
xorl %esi, %esi
xorl %edx, %edx
movb $0x1, %al
pushq $0xd
callq 0xe23a
addq $0x10, %rsp
movq %rax, %r12
leaq 0x20(%rsp), %rdi
movl (%rdi), %r13d
movl $0x1, %esi
movl %r13d, %edx
callq 0x11dea
shlq $0x5, %r13
addq 0x8(%rax), %r13
movq %r12, %rdi
movq %r13, %rsi
callq 0xeea0
cmpb $0x0, 0x150(%rsp)
jne 0xc9f5
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xc9f5
callq 0x4680
testq %r15, %r15
je 0xcce9
leaq 0x140(%rsp), %rdi
movq $0x0, 0x18(%rdi)
xorps %xmm0, %xmm0
movaps %xmm0, (%rdi)
movb $0x0, 0x10(%rdi)
subq $0x8, %rsp
leaq 0x14(%rsp), %r8
leaq 0x18(%rsp), %r9
movss 0x64882(%rip), %xmm0    # 0x712b0
xorl %esi, %esi
xorl %edx, %edx
movq %r15, %rcx
movb $0x1, %al
pushq $0xd
callq 0xe23a
addq $0x10, %rsp
movq %rax, %r15
leaq 0x20(%rsp), %rdi
movl (%rdi), %r12d
movl $0x1, %esi
movl %r12d, %edx
callq 0x11dea
shlq $0x5, %r12
addq 0x8(%rax), %r12
movq %r15, %rdi
movq %r12, %rsi
callq 0xeea0
cmpb $0x0, 0x150(%rsp)
jne 0xca89
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xca89
callq 0x4680
testq %r14, %r14
je 0xcce9
leaq 0x140(%rsp), %rdi
movq $0x0, 0x18(%rdi)
xorps %xmm0, %xmm0
movaps %xmm0, (%rdi)
movb $0x0, 0x10(%rdi)
subq $0x8, %rsp
leaq 0x14(%rsp), %r8
leaq 0x18(%rsp), %r9
movss 0x647ee(%rip), %xmm0    # 0x712b0
xorl %esi, %esi
xorl %edx, %edx
movq %r14, %rcx
movb $0x1, %al
pushq $0xd
callq 0xe23a
addq $0x10, %rsp
movq %rax, %r14
leaq 0x20(%rsp), %rdi
movl (%rdi), %r15d
movl $0x1, %esi
movl %r15d, %edx
callq 0x11dea
shlq $0x5, %r15
addq 0x8(%rax), %r15
movq %r14, %rdi
movq %r15, %rsi
callq 0xeea0
cmpb $0x0, 0x150(%rsp)
jne 0xcb1d
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xcb1d
callq 0x4680
testq %rbx, %rbx
je 0xcce9
leaq 0x140(%rsp), %rdi
movq $0x0, 0x18(%rdi)
xorps %xmm0, %xmm0
movaps %xmm0, (%rdi)
movb $0x0, 0x10(%rdi)
subq $0x8, %rsp
leaq 0x14(%rsp), %r8
leaq 0x18(%rsp), %r9
movss 0x6475a(%rip), %xmm0    # 0x712b0
xorl %esi, %esi
xorl %edx, %edx
movq %rbx, %rcx
movb $0x1, %al
pushq $0xd
callq 0xe23a
addq $0x10, %rsp
movq %rax, %rbx
leaq 0x20(%rsp), %rdi
movl (%rdi), %r14d
movl $0x1, %esi
movl %r14d, %edx
callq 0x11dea
shlq $0x5, %r14
addq 0x8(%rax), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xeea0
movq 0x670(%rsp), %rbx
cmpb $0x0, 0x150(%rsp)
jne 0xcbb9
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xcbb9
callq 0x4680
testq %rbx, %rbx
je 0xcce9
leaq 0x140(%rsp), %rdi
movq $0x0, 0x18(%rdi)
xorps %xmm0, %xmm0
movaps %xmm0, (%rdi)
movb $0x0, 0x10(%rdi)
subq $0x8, %rsp
leaq 0x14(%rsp), %r8
leaq 0x18(%rsp), %r9
movss 0x646be(%rip), %xmm0    # 0x712b0
xorl %esi, %esi
xorl %edx, %edx
movq %rbx, %rcx
movb $0x1, %al
pushq $0xd
callq 0xe23a
addq $0x10, %rsp
movq %rax, %rbx
leaq 0x20(%rsp), %rdi
movl (%rdi), %r14d
movl $0x1, %esi
movl %r14d, %edx
callq 0x11dea
shlq $0x5, %r14
addq 0x8(%rax), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xeea0
movq 0x678(%rsp), %rbx
cmpb $0x0, 0x150(%rsp)
jne 0xcc55
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xcc55
callq 0x4680
testq %rbx, %rbx
je 0xcce9
leaq 0x140(%rsp), %rdi
movq $0x0, 0x18(%rdi)
xorps %xmm0, %xmm0
movaps %xmm0, (%rdi)
movb $0x0, 0x10(%rdi)
subq $0x8, %rsp
leaq 0x14(%rsp), %r8
leaq 0x18(%rsp), %r9
movss 0x64622(%rip), %xmm0    # 0x712b0
xorl %esi, %esi
xorl %edx, %edx
movq %rbx, %rcx
movb $0x1, %al
pushq $0xd
callq 0xe23a
addq $0x10, %rsp
movq %rax, %rbx
leaq 0x20(%rsp), %rdi
movl (%rdi), %r14d
movl $0x1, %esi
movl %r14d, %edx
callq 0x11dea
shlq $0x5, %r14
addq 0x8(%rax), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xeea0
cmpb $0x0, 0x150(%rsp)
jne 0xcce9
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xcce9
callq 0x4680
movl 0x20(%rsp), %eax
testl %eax, %eax
je 0xde38
jle 0xcd4b
xorl %ebx, %ebx
xorl %r14d, %r14d
movq 0x28(%rsp), %rdi
addq %rbx, %rdi
subq $0x8, %rsp
xorps %xmm0, %xmm0
xorps %xmm1, %xmm1
xorps %xmm2, %xmm2
xorps %xmm3, %xmm3
movl $0xffffff9c, %esi       # imm = 0xFFFFFF9C
movl $0xffffff9c, %edx       # imm = 0xFFFFFF9C
movl $0x1, %ecx
movl $0x3, %r8d
movl $0x1, %r9d
pushq $0x0
callq 0xe344
addq $0x10, %rsp
incq %r14
movslq 0x20(%rsp), %rax
addq $0x20, %rbx
cmpq %rax, %r14
jl 0xccfc
testl %eax, %eax
jle 0xcd8c
movq 0x28(%rsp), %rdx
movl %eax, %esi
shlq $0x5, %rsi
xorl %edi, %edi
xorl %ecx, %ecx
xorl %eax, %eax
movl %eax, %r8d
movl %ecx, %r9d
movl (%rdx,%rdi), %ecx
movl 0x4(%rdx,%rdi), %eax
cmpl %ecx, %r9d
cmoval %r9d, %ecx
cmpl %eax, %r8d
cmoval %r8d, %eax
addq $0x20, %rdi
cmpq %rdi, %rsi
jne 0xcd60
addl $0x8, %ecx
addl $0x8, %eax
jmp 0xcd96
movl $0x8, %eax
movl $0x8, %ecx
movq %rbp, 0x138(%rsp)
cmpl $0x41, %ecx
movl $0x40, %ebx
cmovael %ecx, %ebx
movl $0x80, %ecx
cmpl %ecx, %ebx
cmovael %ecx, %ebx
cmpl $0x19, %eax
movl $0x18, %ecx
cmovael %eax, %ecx
cmpl $0x30, %ecx
movl $0x30, %r12d
cmovbl %ecx, %r12d
leaq 0xe0(%rsp), %rdi
movl %ebx, %esi
movl %r12d, %edx
movl $0x1, %ecx
movl $0x3, %r8d
callq 0xe57e
movq %rbx, 0x38(%rsp)
leal -0x1(%rbx), %ebp
leal -0x1(%r12), %r13d
leaq 0xe0(%rsp), %rdi
movl 0x8(%rdi), %eax
decl %eax
leaq 0x10(%rsp), %r10
movss 0x644a1(%rip), %xmm0    # 0x712b0
xorl %esi, %esi
xorl %edx, %edx
xorl %ecx, %ecx
movl %ebp, %r8d
movl %r13d, %r9d
pushq %r10
pushq %rax
callq 0x1e262
addq $0x10, %rsp
leaq 0xe0(%rsp), %rdi
leaq 0x14(%rsp), %r9
movss 0x64474(%rip), %xmm0    # 0x712b0
xorl %esi, %esi
xorl %edx, %edx
movl %ebp, %ecx
xorl %r8d, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leaq 0x14(%rsp), %r9
movss 0x64451(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
xorl %esi, %esi
movl %r13d, %edx
xorl %ecx, %ecx
xorl %r8d, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leaq 0xe0(%rsp), %rdi
leaq 0xc(%rsp), %r9
movss 0x64422(%rip), %xmm0    # 0x712b0
movl %ebp, %esi
xorl %edx, %edx
movl %ebp, %ecx
movl %r13d, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leaq 0xc(%rsp), %r9
movss 0x643ff(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
movl %ebp, %esi
movl %r13d, %edx
xorl %ecx, %ecx
movl %r13d, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leal -0x2(%r12), %r14d
movq 0x38(%rsp), %rax
leal -0x2(%rax), %ebx
leaq 0xe0(%rsp), %rdi
leaq 0x18(%rsp), %r9
movss 0x643c3(%rip), %xmm0    # 0x712b0
movl $0x1, %esi
movl %r14d, %edx
movl %ebx, %ecx
movl %r14d, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leaq 0x18(%rsp), %r9
movss 0x6439c(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
movl %ebx, %esi
movl %r14d, %edx
movl %ebx, %ecx
movl $0x1, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
movl %ebx, 0x1c(%rsp)
leaq 0x80(%rsp), %rdi
movq 0x38(%rsp), %rsi
movl %r12d, %edx
movl $0x1, %ecx
movl $0x3, %r8d
callq 0xe57e
leaq 0x80(%rsp), %rdi
movl 0x8(%rdi), %eax
decl %eax
movss 0x64346(%rip), %xmm0    # 0x712b0
xorl %esi, %esi
xorl %edx, %edx
xorl %ecx, %ecx
movl %ebp, %r8d
movl %r13d, %r9d
leaq 0x10(%rsp), %r10
pushq %r10
pushq %rax
callq 0x1e262
addq $0x10, %rsp
leaq 0x80(%rsp), %rdi
leaq 0xc(%rsp), %r9
movss 0x64314(%rip), %xmm0    # 0x712b0
xorl %esi, %esi
xorl %edx, %edx
movl %ebp, %ecx
xorl %r8d, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leaq 0xc(%rsp), %r9
movss 0x642f1(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
movl %ebp, %esi
xorl %edx, %edx
movl %ebp, %ecx
movl %r13d, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leaq 0x80(%rsp), %rdi
leaq 0xc(%rsp), %r9
movss 0x642c3(%rip), %xmm0    # 0x712b0
movl %ebp, %esi
movl %r13d, %edx
xorl %ecx, %ecx
movl %r13d, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leaq 0xc(%rsp), %r9
movss 0x6429f(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
xorl %esi, %esi
movl %r13d, %edx
xorl %ecx, %ecx
xorl %r8d, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leaq 0x80(%rsp), %rdi
leaq 0x14(%rsp), %r9
movss 0x64270(%rip), %xmm0    # 0x712b0
movl $0x1, %esi
movl $0x1, %edx
movl 0x1c(%rsp), %ecx
movl $0x1, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leaq 0x14(%rsp), %r9
movss 0x64242(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
movl $0x1, %esi
movl %r14d, %edx
movl $0x1, %ecx
movl $0x1, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leaq 0x80(%rsp), %rdi
leaq 0xc(%rsp), %r9
movss 0x6420a(%rip), %xmm0    # 0x712b0
movl 0x1c(%rsp), %ecx
movl %ecx, %esi
movl $0x1, %edx
movl %r14d, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leaq 0xc(%rsp), %r9
movss 0x641e2(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
movl 0x1c(%rsp), %esi
movl %r14d, %edx
movl $0x1, %ecx
movl %r14d, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leal -0x3(%r12), %edx
movq 0x38(%rsp), %rax
leal -0x3(%rax), %ecx
leaq 0x80(%rsp), %rdi
leaq 0x18(%rsp), %r9
movss 0x641a1(%rip), %xmm0    # 0x712b0
movl $0x2, %esi
movl %ecx, 0x60(%rsp)
movl %edx, 0x68(%rsp)
movl %edx, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leaq 0x18(%rsp), %r9
movss 0x64177(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
movl 0x60(%rsp), %ecx
movl %ecx, %esi
movl 0x68(%rsp), %edx
movl $0x2, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
movq 0x38(%rsp), %rax
leal -0x5(%rax), %ebx
leaq 0x80(%rsp), %rdi
leaq 0xc(%rsp), %r9
movss 0x6413a(%rip), %xmm0    # 0x712b0
movl $0x4, %esi
movl $0x4, %edx
movl %ebx, %ecx
movl $0x4, %r8d
pushq $0x1
pushq $-0x55555556            # imm = 0xAAAAAAAA
callq 0xe6e2
addq $0x10, %rsp
leal -0x5(%r12), %r15d
leaq 0xc(%rsp), %r9
movss 0x64106(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
movl %ebx, %esi
movl $0x4, %edx
movl %ebx, %ecx
movl %r15d, %r8d
pushq $0x0
pushq $-0x55555556            # imm = 0xAAAAAAAA
callq 0xe6e2
addq $0x10, %rsp
leaq 0x80(%rsp), %rdi
leaq 0xc(%rsp), %r9
movss 0x640d2(%rip), %xmm0    # 0x712b0
movl %ebx, %esi
movl %r15d, %edx
movl $0x4, %ecx
movl %r15d, %r8d
pushq $0x0
pushq $-0x55555556            # imm = 0xAAAAAAAA
callq 0xe6e2
addq $0x10, %rsp
leaq 0xc(%rsp), %r9
movss 0x640a8(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
movl $0x4, %esi
movl %r15d, %edx
movl $0x4, %ecx
movl $0x4, %r8d
pushq $0x0
pushq $-0x55555556            # imm = 0xAAAAAAAA
callq 0xe6e2
addq $0x10, %rsp
leaq 0x100(%rsp), %rdi
movq 0x38(%rsp), %rsi
movl %r12d, %edx
movl $0x1, %ecx
movl $0x3, %r8d
callq 0xe57e
leaq 0x100(%rsp), %rdi
movl 0x8(%rdi), %eax
decl %eax
movss 0x6404d(%rip), %xmm0    # 0x712b0
xorl %esi, %esi
xorl %edx, %edx
xorl %ecx, %ecx
movl %ebp, %r8d
movl %r13d, %r9d
leaq 0xc(%rsp), %r10
pushq %r10
pushq %rax
callq 0x1e262
addq $0x10, %rsp
movl 0x8(%rax), %r10d
decl %r10d
movss 0x64021(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
movl $0x1, %esi
movl $0x1, %edx
xorl %ecx, %ecx
movl 0x1c(%rsp), %r8d
movl %r14d, %r9d
leaq 0x18(%rsp), %rax
pushq %rax
pushq %r10
callq 0x1e262
addq $0x10, %rsp
movl 0x8(%rax), %r10d
decl %r10d
movss 0x63fea(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
movl $0x2, %esi
movl $0x2, %edx
xorl %ecx, %ecx
movl 0x60(%rsp), %r8d
movl 0x68(%rsp), %r9d
leaq 0x10(%rsp), %rax
pushq %rax
pushq %r10
callq 0x1e262
addq $0x10, %rsp
leaq 0x100(%rsp), %rdi
leaq 0xc(%rsp), %r9
movss 0x63fab(%rip), %xmm0    # 0x712b0
movl $0x4, %esi
movl $0x4, %edx
movl %ebx, %ecx
movl $0x4, %r8d
pushq $0x1
pushq $-0x55555556            # imm = 0xAAAAAAAA
callq 0xe6e2
addq $0x10, %rsp
leaq 0xc(%rsp), %r9
movss 0x63f7c(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
movl %ebx, %esi
movl $0x4, %edx
movl %ebx, %ecx
movl %r15d, %r8d
pushq $0x0
pushq $-0x55555556            # imm = 0xAAAAAAAA
callq 0xe6e2
addq $0x10, %rsp
leaq 0x100(%rsp), %rdi
leaq 0xc(%rsp), %r9
movss 0x63f48(%rip), %xmm0    # 0x712b0
movl %ebx, %esi
movl %r15d, %edx
movl $0x4, %ecx
movl %r15d, %r8d
pushq $0x0
pushq $-0x55555556            # imm = 0xAAAAAAAA
callq 0xe6e2
addq $0x10, %rsp
leaq 0xc(%rsp), %r9
movss 0x63f1e(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
movl $0x4, %esi
movl %r15d, %edx
movl $0x4, %ecx
movl $0x4, %r8d
pushq $0x0
pushq $-0x55555556            # imm = 0xAAAAAAAA
callq 0xe6e2
addq $0x10, %rsp
cmpl $0x0, 0x20(%rsp)
movq 0x38(%rsp), %r15
jle 0xd585
xorl %r14d, %r14d
leaq 0x140(%rsp), %rbx
xorl %r13d, %r13d
movq %rbx, %rdi
leaq 0x100(%rsp), %rsi
callq 0xecec
movq 0x28(%rsp), %rax
movl %r15d, %esi
subl (%rax,%r14), %esi
leaq (%rax,%r14), %r9
shrl %esi
incl %esi
movl %r12d, %edx
subl 0x4(%rax,%r14), %edx
shrl %edx
incl %edx
movq %rbx, %rdi
xorl %ecx, %ecx
xorl %r8d, %r8d
movss 0x63e9a(%rip), %xmm0    # 0x712b0
callq 0x13afe
movq %rax, %rbp
movl 0xb0(%rsp), %r15d
leaq 0xb0(%rsp), %rdi
movl $0x1, %esi
movl %r15d, %edx
callq 0x11dea
shlq $0x5, %r15
addq 0x8(%rax), %r15
movq %rbp, %rdi
movq %r15, %rsi
callq 0xeea0
cmpb $0x0, 0x150(%rsp)
jne 0xd46a
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xd46a
callq 0x4680
movq %rbx, %rdi
leaq 0x80(%rsp), %rsi
callq 0xecec
movq 0x38(%rsp), %rcx
movq 0x28(%rsp), %rax
leaq (%rax,%r14), %r9
movl %ecx, %esi
subl (%rax,%r14), %esi
shrl %esi
movl %r12d, %edx
subl 0x4(%rax,%r14), %edx
shrl %edx
movq %rbx, %rdi
xorl %ecx, %ecx
xorl %r8d, %r8d
movss 0x63e06(%rip), %xmm0    # 0x712b0
callq 0x13afe
movq %rax, %rbp
movl 0xa0(%rsp), %r15d
leaq 0xa0(%rsp), %rdi
movl $0x1, %esi
movl %r15d, %edx
callq 0x11dea
shlq $0x5, %r15
addq 0x8(%rax), %r15
movq %rbp, %rdi
movq %r15, %rsi
callq 0xeea0
cmpb $0x0, 0x150(%rsp)
jne 0xd4fe
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xd4fe
callq 0x4680
movq %rbx, %rdi
leaq 0xe0(%rsp), %rsi
callq 0xecec
movq 0x38(%rsp), %r15
movq 0x28(%rsp), %rax
leaq (%rax,%r14), %r9
movl %r15d, %esi
subl (%rax,%r14), %esi
shrl %esi
movl %r12d, %edx
subl 0x4(%rax,%r14), %edx
shrl %edx
movq %rbx, %rdi
xorl %ecx, %ecx
xorl %r8d, %r8d
movss 0x63d71(%rip), %xmm0    # 0x712b0
callq 0x13afe
movq 0x28(%rsp), %rsi
addq %r14, %rsi
movq %rax, %rdi
callq 0xeea0
cmpb $0x0, 0x150(%rsp)
jne 0xd570
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xd570
callq 0x4680
incq %r13
movslq 0x20(%rsp), %rax
addq $0x20, %r14
cmpq %rax, %r13
jl 0xd3d6
movq $0x0, 0x58(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0x40(%rsp)
movb $0x0, 0x50(%rsp)
movq 0x70(%rsp), %r10
testq %r10, %r10
je 0xd666
leaq 0x140(%rsp), %rdi
movq $0x0, 0x18(%rdi)
movaps %xmm0, (%rdi)
movb $0x0, 0x10(%rdi)
leaq 0x87e3a(%rip), %rcx     # 0x95401
leaq 0x10(%rsp), %r8
movss 0x63cdc(%rip), %xmm0    # 0x712b0
xorl %esi, %esi
xorl %edx, %edx
xorl %r9d, %r9d
movb $0x1, %al
pushq %r10
pushq $0xd
callq 0xef12
addq $0x10, %rsp
movq %rax, %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0xf018
movq %rax, %rdi
movl $0xc8, %esi
callq 0xf078
subq $0x8, %rsp
xorps %xmm0, %xmm0
xorps %xmm1, %xmm1
xorps %xmm2, %xmm2
xorps %xmm3, %xmm3
movq %rax, %rdi
movl $0xffffff9c, %esi       # imm = 0xFFFFFF9C
movl $0xffffff9c, %edx       # imm = 0xFFFFFF9C
movl $0x1, %ecx
movl $0x3, %r8d
movl $0x1, %r9d
pushq $0x0
callq 0xe344
addq $0x10, %rsp
leaq 0x40(%rsp), %rsi
movq %rax, %rdi
callq 0xeea0
cmpb $0x0, 0x150(%rsp)
jne 0xd666
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xd666
callq 0x4680
movq 0x680(%rsp), %rsi
movl 0x20(%rsp), %ecx
decl %ecx
leal 0xc(%r15), %r13d
imull %r13d, %ecx
movl 0x40(%rsp), %eax
movl (%rsi), %r14d
leal (%r14,%rax), %edx
addl $0x24, %edx
movq %rcx, 0x70(%rsp)
leal (%rcx,%r15), %eax
addl $0x18, %eax
cmpl %eax, %edx
movl %eax, 0x7c(%rsp)
movl %edx, 0x78(%rsp)
cmoval %edx, %eax
movl 0x44(%rsp), %edx
movl 0x4(%rsi), %ecx
cmpl $0xc5, %eax
movl $0xc4, %r15d
cmovael %eax, %r15d
movq %rdx, 0x68(%rsp)
leal (%rdx,%r12), %eax
addl $0x24, %eax
movq %rcx, 0x60(%rsp)
addl %r12d, %ecx
addl $0x24, %ecx
cmpl %ecx, %eax
cmoval %eax, %ecx
cmpl $0x61, %ecx
movl $0x60, %ebx
cmovael %ecx, %ebx
movl %r15d, %eax
subl %r14d, %eax
addl $-0x18, %eax
shrl %eax
addl $0xc, %eax
leal -0xc(%rbx), %ebp
movl %ebp, 0x1c(%rsp)
subl %r12d, %ebp
cmpq $0x0, 0x58(%rsp)
movl $0xc, %r12d
cmovel %eax, %r12d
je 0xd866
leaq 0x140(%rsp), %rdi
movl %r15d, %esi
movl %ebx, %edx
movl $0x1, %ecx
movl $0x3, %r8d
callq 0xe57e
decl %r15d
decl %ebx
leaq 0x140(%rsp), %rdi
movl 0x8(%rdi), %eax
decl %eax
movss 0x63b6b(%rip), %xmm0    # 0x712b0
xorl %esi, %esi
xorl %edx, %edx
xorl %ecx, %ecx
movl %r15d, %r8d
movl %ebx, %r9d
leaq 0x10(%rsp), %r10
pushq %r10
pushq %rax
callq 0x1e262
addq $0x10, %rsp
leaq 0x14(%rsp), %r9
movss 0x63b41(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
xorl %esi, %esi
xorl %edx, %edx
movl %r15d, %ecx
xorl %r8d, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leaq 0x14(%rsp), %r9
movss 0x63b1a(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
xorl %esi, %esi
movl %ebx, %edx
xorl %ecx, %ecx
xorl %r8d, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leaq 0xc(%rsp), %r9
movss 0x63af4(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
movl %r15d, %esi
xorl %edx, %edx
movl %r15d, %ecx
movl %ebx, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leaq 0xc(%rsp), %r9
movss 0x63acc(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
movl %r15d, %esi
movl %ebx, %edx
xorl %ecx, %ecx
movl %ebx, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
movl %ebp, %edx
subl 0x68(%rsp), %edx
shrl %edx
leal (%r14,%r12), %esi
addl $0xc, %esi
leaq 0x40(%rsp), %r9
movss 0x63a96(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
xorl %ecx, %ecx
xorl %r8d, %r8d
callq 0x13afe
movq 0x18(%rax), %rsi
movl (%rax), %edx
movl 0x4(%rax), %ecx
movl 0x8(%rax), %r8d
movl 0xc(%rax), %r9d
leaq 0x40(%rsp), %rdi
callq 0x14354
cmpb $0x0, 0x150(%rsp)
jne 0xd98d
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xd98d
jmp 0xd988
leaq 0x140(%rsp), %rdi
movl %r15d, %esi
movl %ebx, %edx
movl $0x1, %ecx
movl $0x3, %r8d
callq 0xe57e
decl %r15d
decl %ebx
leaq 0x140(%rsp), %rdi
movl 0x8(%rdi), %eax
decl %eax
movss 0x63a13(%rip), %xmm0    # 0x712b0
xorl %esi, %esi
xorl %edx, %edx
xorl %ecx, %ecx
movl %r15d, %r8d
movl %ebx, %r9d
leaq 0x10(%rsp), %r10
pushq %r10
pushq %rax
callq 0x1e262
addq $0x10, %rsp
leaq 0x14(%rsp), %r9
movss 0x639e9(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
xorl %esi, %esi
xorl %edx, %edx
movl %r15d, %ecx
xorl %r8d, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leaq 0x14(%rsp), %r9
movss 0x639c2(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
xorl %esi, %esi
movl %ebx, %edx
xorl %ecx, %ecx
xorl %r8d, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leaq 0xc(%rsp), %r9
movss 0x6399c(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
movl %r15d, %esi
xorl %edx, %edx
movl %r15d, %ecx
movl %ebx, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
leaq 0xc(%rsp), %r9
movss 0x63974(%rip), %xmm0    # 0x712b0
movq %rax, %rdi
movl %r15d, %esi
movl %ebx, %edx
xorl %ecx, %ecx
movl %ebx, %r8d
pushq $0x1
pushq $-0x1
callq 0xe6e2
addq $0x10, %rsp
movq 0x18(%rax), %rsi
movl (%rax), %edx
movl 0x4(%rax), %ecx
movl 0x8(%rax), %r8d
movl 0xc(%rax), %r9d
leaq 0x40(%rsp), %rdi
callq 0x14354
cmpb $0x0, 0x150(%rsp)
jne 0xd98d
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xd98d
callq 0x4680
movq 0x680(%rsp), %r9
cmpq $0x0, 0x18(%r9)
je 0xd9be
movl %ebp, %edx
subl 0x60(%rsp), %edx
shrl %edx
leaq 0x40(%rsp), %rdi
movss 0x638ff(%rip), %xmm0    # 0x712b0
movl %r12d, %esi
xorl %ecx, %ecx
xorl %r8d, %r8d
callq 0x13afe
xorps %xmm0, %xmm0
movaps %xmm0, 0x120(%rsp)
movq $0x0, 0x130(%rsp)
cmpl $0x0, 0x20(%rsp)
jle 0xda48
movl 0x7c(%rsp), %eax
movl 0x78(%rsp), %ecx
cmpl %eax, %ecx
cmoval %ecx, %eax
cmpl $0xc5, %eax
movl $0xc4, %ebx
cmovael %eax, %ebx
subl 0x70(%rsp), %ebx
subl 0x38(%rsp), %ebx
shrl %ebx
xorl %r14d, %r14d
leaq 0x40(%rsp), %r15
xorl %r12d, %r12d
movl %ebx, 0x120(%rsp,%r12,4)
movq 0x28(%rsp), %r9
addq %r14, %r9
movq %r15, %rdi
movl %ebx, %esi
movl %ebp, %edx
xorl %ecx, %ecx
xorl %r8d, %r8d
movss 0x63881(%rip), %xmm0    # 0x712b0
callq 0x13afe
incq %r12
movslq 0x20(%rsp), %rax
addl %r13d, %ebx
addq $0x20, %r14
cmpq %rax, %r12
jl 0xda0b
movb 0x688(%rsp), %bl
movq 0x138(%rsp), %rax
testq %rax, %rax
leaq 0x88ab1(%rip), %rdx     # 0x96512
cmovneq %rax, %rdx
movzbl %bl, %r9d
leaq 0x140(%rsp), %rdi
leaq 0x40(%rsp), %rsi
xorl %ecx, %ecx
xorl %r8d, %r8d
callq 0xf0d2
testb %bl, %bl
je 0xdabd
callq 0xf224
movl %eax, %ebx
movl 0x158(%rsp), %r14d
callq 0xf32a
subl %r14d, %ebx
movl %ebx, %esi
shrl $0x1f, %esi
addl %ebx, %esi
sarl %esi
leaq 0x140(%rsp), %rdi
subl 0x1c(%rdi), %eax
movl %eax, %edx
shrl $0x1f, %edx
addl %eax, %edx
sarl %edx
callq 0xf134
movl $0xffffffff, %r15d      # imm = 0xFFFFFFFF
cmpb $0x0, 0x5a0(%rsp)
jne 0xdd6b
movl $0xffffffff, %ebx       # imm = 0xFFFFFFFF
xorl %r14d, %r14d
movl $0xffffffff, %r15d      # imm = 0xFFFFFFFF
xorl %r12d, %r12d
testb $0x1, %r14b
je 0xdbef
testl %ebx, %ebx
js 0xdb64
leaq 0xc0(%rsp), %r14
movq %r14, %rdi
leaq 0x40(%rsp), %rsi
callq 0xecec
movl %ebx, %r9d
movl 0x120(%rsp,%r9,4), %esi
shlq $0x5, %r9
addq 0xb8(%rsp), %r9
movq %r14, %rdi
movl %ebp, %edx
xorl %ecx, %ecx
xorl %r8d, %r8d
movss 0x63782(%rip), %xmm0    # 0x712b0
callq 0x13afe
leaq 0x140(%rsp), %rdi
movq %rax, %rsi
callq 0x37096
cmpb $0x0, 0xd0(%rsp)
jne 0xdbec
movq 0xd8(%rsp), %rdi
testq %rdi, %rdi
je 0xdbec
jmp 0xdbd3
testl %r15d, %r15d
js 0xdbda
leaq 0xc0(%rsp), %r14
movq %r14, %rdi
leaq 0x40(%rsp), %rsi
callq 0xecec
movl %r15d, %r9d
movl 0x120(%rsp,%r9,4), %esi
shlq $0x5, %r9
addq 0xa8(%rsp), %r9
movq %r14, %rdi
movl %ebp, %edx
xorl %ecx, %ecx
xorl %r8d, %r8d
movss 0x63709(%rip), %xmm0    # 0x712b0
callq 0x13afe
leaq 0x140(%rsp), %rdi
movq %rax, %rsi
callq 0x37096
cmpb $0x0, 0xd0(%rsp)
jne 0xdbec
movq 0xd8(%rsp), %rdi
testq %rdi, %rdi
je 0xdbec
callq 0x4680
jmp 0xdbec
leaq 0x140(%rsp), %rdi
leaq 0x40(%rsp), %rsi
callq 0x37096
xorl %r14d, %r14d
leaq 0x140(%rsp), %rdi
movl $0xf, %esi
callq 0xf430
movb 0x5a1(%rsp), %al
cmpb $0x1, %al
jne 0xdc29
movl 0x158(%rsp), %esi
movl 0x15c(%rsp), %edx
leaq 0x140(%rsp), %rdi
xorl %ecx, %ecx
callq 0x37170
testl $0x1, 0x188(%rsp)
jne 0xdc47
testl %ebx, %ebx
movzbl %r12b, %r12d
movl $0x1, %eax
cmovnsl %eax, %r12d
jmp 0xdcb2
movslq 0x20(%rsp), %rcx
movl $0xffffffff, %eax       # imm = 0xFFFFFFFF
testq %rcx, %rcx
jle 0xdca1
xorl %edx, %edx
movl 0x598(%rsp), %esi
cmpl %ebp, %esi
jl 0xdc99
movl 0x598(%rsp), %esi
cmpl 0x1c(%rsp), %esi
jge 0xdc99
movl 0x594(%rsp), %edi
movl 0x120(%rsp,%rdx,4), %esi
cmpl %esi, %edi
jl 0xdc99
movl 0x594(%rsp), %edi
addl 0x38(%rsp), %esi
cmpl %esi, %edi
jge 0xdc99
movb $0x1, %r14b
movl %edx, %r15d
movl %edx, %eax
incq %rdx
cmpq %rdx, %rcx
jne 0xdc58
cmpl %ebx, %eax
movzbl %r14b, %r14d
movl $0x1, %ecx
cmovnel %ecx, %r14d
movl %eax, %ebx
cmpl $0x0, 0x18c(%rsp)
je 0xdd57
movl 0x18c(%rsp), %eax
cmpl $0xff50, %eax           # imm = 0xFF50
jle 0xdce8
leal -0xff51(%rax), %ecx
cmpl $0x2, %ecx
jb 0xdd14
addl $0xffff00ad, %eax       # imm = 0xFFFF00AD
cmpl $0x2, %eax
jb 0xdd08
movl %r15d, %r13d
jmp 0xdd37
cmpl $0xff09, %eax           # imm = 0xFF09
je 0xdd08
cmpl $0xff0d, %eax           # imm = 0xFF0D
je 0xdd27
movl %r15d, %r13d
cmpl $0xff1b, %eax           # imm = 0xFF1B
jne 0xdd37
movl $0xffffffff, %r13d      # imm = 0xFFFFFFFF
jmp 0xdd34
leal 0x1(%r15), %eax
xorl %edx, %edx
divl 0x20(%rsp)
jmp 0xdd22
movl 0x20(%rsp), %ecx
leal (%r15,%rcx), %eax
decl %eax
xorl %edx, %edx
divl %ecx
movl %edx, %r13d
jmp 0xdd37
testl %r15d, %r15d
movl $0x0, %r13d
cmovgl %r15d, %r13d
movb $0x1, %r12b
leaq 0x140(%rsp), %rdi
callq 0xf4f8
cmpl %r15d, %r13d
movzbl %r14b, %r14d
movl $0x1, %eax
cmovnel %eax, %r14d
movl %r13d, %r15d
cmpb $0x0, 0x5a0(%rsp)
jne 0xdd6b
testb $0x1, %r12b
je 0xdae2
leaq 0x140(%rsp), %rdi
movl 0x18(%rdi), %r14d
movl 0x1c(%rdi), %ebp
callq 0x1e50e
cmpb $0x0, 0x50(%rsp)
jne 0xdd95
movq 0x58(%rsp), %rdi
testq %rdi, %rdi
je 0xdd95
callq 0x4680
cmpb $0x0, 0x110(%rsp)
jne 0xddb1
movq 0x118(%rsp), %rdi
testq %rdi, %rdi
je 0xddb1
callq 0x4680
cmpb $0x0, 0x90(%rsp)
jne 0xddcd
movq 0x98(%rsp), %rdi
testq %rdi, %rdi
je 0xddcd
callq 0x4680
cmpb $0x0, 0xf0(%rsp)
jne 0xdde9
movq 0xf8(%rsp), %rdi
testq %rdi, %rdi
je 0xdde9
callq 0x4680
xorl %ebx, %ebx
cmpl $0x1, %r14d
movl $0x0, %eax
sbbl %eax, %eax
cmpl $0x1, %ebp
sbbl %ebx, %ebx
orl %r15d, %ebx
orl %eax, %ebx
leaq 0xa0(%rsp), %rdi
callq 0xf9a4
leaq 0xb0(%rsp), %rdi
callq 0xf9a4
leaq 0x20(%rsp), %rdi
callq 0xf9a4
movl %ebx, %eax
addq $0x638, %rsp            # imm = 0x638
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movl $0x4008, %edi           # imm = 0x4008
callq 0x4210
movq %rax, %r14
leaq 0x669fd(%rip), %rsi     # 0x74849
movq %rax, %rdi
xorl %eax, %eax
callq 0xc196
leaq 0x9edc3(%rip), %rsi     # 0xacc20
movq 0x9f16c(%rip), %rdx     # 0xacfd0
movq %r14, %rdi
callq 0x4900
movq %rax, %rbx
cmpb $0x0, 0x150(%rsp)
jne 0xe14d
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xe14d
jmp 0xe148
movq %rax, %rbx
cmpb $0x0, 0x150(%rsp)
jne 0xe14d
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xe14d
jmp 0xe148
jmp 0xe06a
movq %rax, %rbx
cmpb $0x0, 0x150(%rsp)
jne 0xe14d
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xe14d
jmp 0xe148
jmp 0xe06f
movq %rax, %rbx
movq %r14, %rdi
callq 0x43b0
jmp 0xe14d
jmp 0xe06a
jmp 0xe06a
movq %rax, %rbx
cmpb $0x0, 0x150(%rsp)
jne 0xe14d
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xe14d
jmp 0xe148
jmp 0xe09a
jmp 0xe06a
jmp 0xe056
jmp 0xe02d
jmp 0xe06f
movq %rax, %rbx
cmpb $0x0, 0x150(%rsp)
jne 0xe14d
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xe14d
jmp 0xe148
jmp 0xe077
jmp 0xe077
movq %rax, %rbx
cmpb $0x0, 0x150(%rsp)
jne 0xe087
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xe087
jmp 0xe022
movq %rax, %rbx
cmpb $0x0, 0x150(%rsp)
jne 0xe14d
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xe14d
jmp 0xe148
movq %rax, %rbx
cmpb $0x0, 0x150(%rsp)
jne 0xe087
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xe087
jmp 0xe022
movq %rax, %rbx
cmpb $0x0, 0xd0(%rsp)
jne 0xe07a
movq 0xd8(%rsp), %rdi
testq %rdi, %rdi
je 0xe07a
jmp 0xe04f
movq %rax, %rbx
cmpb $0x0, 0x150(%rsp)
jne 0xe087
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xe087
callq 0x4680
jmp 0xe087
jmp 0xe077
jmp 0xe062
movq %rax, %rbx
jmp 0xe131
movq %rax, %rbx
cmpb $0x0, 0xd0(%rsp)
jne 0xe07a
movq 0xd8(%rsp), %rdi
testq %rdi, %rdi
je 0xe07a
callq 0x4680
jmp 0xe07a
movq %rax, %rbx
jmp 0xe115
jmp 0xe062
jmp 0xe062
movq %rax, %rbx
jmp 0xe0f9
movq %rax, %rbx
jmp 0xe087
movq %rax, %rbx
jmp 0xe14d
movq %rax, %rbx
leaq 0x140(%rsp), %rdi
callq 0x1e50e
cmpb $0x0, 0x50(%rsp)
jne 0xe0f9
movq 0x58(%rsp), %rdi
testq %rdi, %rdi
je 0xe0f9
jmp 0xe0f4
movq %rax, %rdi
callq 0xa08f
movq %rax, %rbx
cmpb $0x0, 0x150(%rsp)
jne 0xe0f9
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xe0f9
jmp 0xe0f4
movq %rax, %rbx
cmpb $0x0, 0x150(%rsp)
jne 0xe0f9
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xe0f9
jmp 0xe0f4
movq %rax, %rbx
cmpb $0x0, 0x150(%rsp)
jne 0xe0f9
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0xe0f9
callq 0x4680
cmpb $0x0, 0x110(%rsp)
jne 0xe115
movq 0x118(%rsp), %rdi
testq %rdi, %rdi
je 0xe115
callq 0x4680
cmpb $0x0, 0x90(%rsp)
jne 0xe131
movq 0x98(%rsp), %rdi
testq %rdi, %rdi
je 0xe131
callq 0x4680
cmpb $0x0, 0xf0(%rsp)
jne 0xe14d
movq 0xf8(%rsp), %rdi
testq %rdi, %rdi
je 0xe14d
callq 0x4680
leaq 0xa0(%rsp), %rdi
callq 0xf9a4
leaq 0xb0(%rsp), %rdi
callq 0xf9a4
leaq 0x20(%rsp), %rdi
callq 0xf9a4
movq %rbx, %rdi
callq 0x4950
nop