// File: manikandan5[P]Image-Matching-Stitching-Warping/./CImg.h
// Function: cimg_library::CImgDisplay::set_key(unsigned int, bool)
CImgDisplay& set_key(const unsigned int keycode, const bool is_pressed=true) {
#define _cimg_set_key(k) if (keycode==cimg::key##k) _is_key##k = is_pressed;
      _cimg_set_key(ESC); _cimg_set_key(F1); _cimg_set_key(F2); _cimg_set_key(F3);
      _cimg_set_key(F4); _cimg_set_key(F5); _cimg_set_key(F6); _cimg_set_key(F7);
      _cimg_set_key(F8); _cimg_set_key(F9); _cimg_set_key(F10); _cimg_set_key(F11);
      _cimg_set_key(F12); _cimg_set_key(PAUSE); _cimg_set_key(1); _cimg_set_key(2);
      _cimg_set_key(3); _cimg_set_key(4); _cimg_set_key(5); _cimg_set_key(6);
      _cimg_set_key(7); _cimg_set_key(8); _cimg_set_key(9); _cimg_set_key(0);
      _cimg_set_key(BACKSPACE); _cimg_set_key(INSERT); _cimg_set_key(HOME);
      _cimg_set_key(PAGEUP); _cimg_set_key(TAB); _cimg_set_key(Q); _cimg_set_key(W);
      _cimg_set_key(E); _cimg_set_key(R); _cimg_set_key(T); _cimg_set_key(Y);
      _cimg_set_key(U); _cimg_set_key(I); _cimg_set_key(O); _cimg_set_key(P);
      _cimg_set_key(DELETE); _cimg_set_key(END); _cimg_set_key(PAGEDOWN);
      _cimg_set_key(CAPSLOCK); _cimg_set_key(A); _cimg_set_key(S); _cimg_set_key(D);
      _cimg_set_key(F); _cimg_set_key(G); _cimg_set_key(H); _cimg_set_key(J);
      _cimg_set_key(K); _cimg_set_key(L); _cimg_set_key(ENTER);
      _cimg_set_key(SHIFTLEFT); _cimg_set_key(Z); _cimg_set_key(X); _cimg_set_key(C);
      _cimg_set_key(V); _cimg_set_key(B); _cimg_set_key(N); _cimg_set_key(M);
      _cimg_set_key(SHIFTRIGHT); _cimg_set_key(ARROWUP); _cimg_set_key(CTRLLEFT);
      _cimg_set_key(APPLEFT); _cimg_set_key(ALT); _cimg_set_key(SPACE); _cimg_set_key(ALTGR);
      _cimg_set_key(APPRIGHT); _cimg_set_key(MENU); _cimg_set_key(CTRLRIGHT);
      _cimg_set_key(ARROWLEFT); _cimg_set_key(ARROWDOWN); _cimg_set_key(ARROWRIGHT);
      _cimg_set_key(PAD0); _cimg_set_key(PAD1); _cimg_set_key(PAD2);
      _cimg_set_key(PAD3); _cimg_set_key(PAD4); _cimg_set_key(PAD5);
      _cimg_set_key(PAD6); _cimg_set_key(PAD7); _cimg_set_key(PAD8);
      _cimg_set_key(PAD9); _cimg_set_key(PADADD); _cimg_set_key(PADSUB);
      _cimg_set_key(PADMUL); _cimg_set_key(PADDIV);
      if (is_pressed) {
        if (*_keys)
          std::memmove((void*)(_keys+1),(void*)_keys,sizeof(_keys) - sizeof(unsigned int));
        *_keys = keycode;
        if (*_released_keys) {
          std::memmove((void*)(_released_keys+1),(void*)_released_keys,sizeof(_released_keys) - sizeof(unsigned int));
          *_released_keys = 0;
        }
      } else {
        if (*_keys) {
          std::memmove((void*)(_keys+1),(void*)_keys,sizeof(_keys) - sizeof(unsigned int));
          *_keys = 0;
        }
        if (*_released_keys)
          std::memmove((void*)(_released_keys+1),(void*)_released_keys,sizeof(_released_keys) - sizeof(unsigned int));
        *_released_keys = keycode;
      }
      _is_event = keycode?true:false;
      if (keycode) {
#if cimg_display==1
        pthread_cond_broadcast(&cimg::X11_attr().wait_event);
#elif cimg_display==2
        SetEvent(cimg::Win32_attr().wait_event);
#endif
      }
      return *this;
    }

// Assembly:
subq $0x18, %rsp
movb %dl, %al
movq %rdi, 0x10(%rsp)
movl %esi, 0xc(%rsp)
andb $0x1, %al
movb %al, 0xb(%rsp)
movq 0x10(%rsp), %rax
movq %rax, (%rsp)
cmpl $0xff1b, 0xc(%rsp)      # imm = 0xFF1B
jne 0x3c8d9
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x464(%rax)
cmpl $0xffbe, 0xc(%rsp)      # imm = 0xFFBE
jne 0x3c8f4
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x465(%rax)
cmpl $0xffbf, 0xc(%rsp)      # imm = 0xFFBF
jne 0x3c90f
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x466(%rax)
cmpl $0xffc0, 0xc(%rsp)      # imm = 0xFFC0
jne 0x3c92a
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x467(%rax)
cmpl $0xffc1, 0xc(%rsp)      # imm = 0xFFC1
jne 0x3c945
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x468(%rax)
cmpl $0xffc2, 0xc(%rsp)      # imm = 0xFFC2
jne 0x3c960
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x469(%rax)
cmpl $0xffc3, 0xc(%rsp)      # imm = 0xFFC3
jne 0x3c97b
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x46a(%rax)
cmpl $0xffc4, 0xc(%rsp)      # imm = 0xFFC4
jne 0x3c996
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x46b(%rax)
cmpl $0xffc5, 0xc(%rsp)      # imm = 0xFFC5
jne 0x3c9b1
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x46c(%rax)
cmpl $0xffc6, 0xc(%rsp)      # imm = 0xFFC6
jne 0x3c9cc
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x46d(%rax)
cmpl $0xffc7, 0xc(%rsp)      # imm = 0xFFC7
jne 0x3c9e7
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x46e(%rax)
cmpl $0xffc8, 0xc(%rsp)      # imm = 0xFFC8
jne 0x3ca02
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x46f(%rax)
cmpl $0xffc9, 0xc(%rsp)      # imm = 0xFFC9
jne 0x3ca1d
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x470(%rax)
cmpl $0xff13, 0xc(%rsp)      # imm = 0xFF13
jne 0x3ca38
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x471(%rax)
cmpl $0x31, 0xc(%rsp)
jne 0x3ca50
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x472(%rax)
cmpl $0x32, 0xc(%rsp)
jne 0x3ca68
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x473(%rax)
cmpl $0x33, 0xc(%rsp)
jne 0x3ca80
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x474(%rax)
cmpl $0x34, 0xc(%rsp)
jne 0x3ca98
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x475(%rax)
cmpl $0x35, 0xc(%rsp)
jne 0x3cab0
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x476(%rax)
cmpl $0x36, 0xc(%rsp)
jne 0x3cac8
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x477(%rax)
cmpl $0x37, 0xc(%rsp)
jne 0x3cae0
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x478(%rax)
cmpl $0x38, 0xc(%rsp)
jne 0x3caf8
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x479(%rax)
cmpl $0x39, 0xc(%rsp)
jne 0x3cb10
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x47a(%rax)
cmpl $0x30, 0xc(%rsp)
jne 0x3cb28
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x47b(%rax)
cmpl $0xff08, 0xc(%rsp)      # imm = 0xFF08
jne 0x3cb43
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x47c(%rax)
cmpl $0xff63, 0xc(%rsp)      # imm = 0xFF63
jne 0x3cb5e
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x47d(%rax)
cmpl $0xff50, 0xc(%rsp)      # imm = 0xFF50
jne 0x3cb79
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x47e(%rax)
cmpl $0xff55, 0xc(%rsp)      # imm = 0xFF55
jne 0x3cb94
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x47f(%rax)
cmpl $0xff09, 0xc(%rsp)      # imm = 0xFF09
jne 0x3cbaf
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x480(%rax)
cmpl $0x71, 0xc(%rsp)
jne 0x3cbc7
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x481(%rax)
cmpl $0x77, 0xc(%rsp)
jne 0x3cbdf
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x482(%rax)
cmpl $0x65, 0xc(%rsp)
jne 0x3cbf7
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x483(%rax)
cmpl $0x72, 0xc(%rsp)
jne 0x3cc0f
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x484(%rax)
cmpl $0x74, 0xc(%rsp)
jne 0x3cc27
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x485(%rax)
cmpl $0x79, 0xc(%rsp)
jne 0x3cc3f
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x486(%rax)
cmpl $0x75, 0xc(%rsp)
jne 0x3cc57
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x487(%rax)
cmpl $0x69, 0xc(%rsp)
jne 0x3cc6f
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x488(%rax)
cmpl $0x6f, 0xc(%rsp)
jne 0x3cc87
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x489(%rax)
cmpl $0x70, 0xc(%rsp)
jne 0x3cc9f
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x48a(%rax)
cmpl $0xffff, 0xc(%rsp)      # imm = 0xFFFF
jne 0x3ccba
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x48b(%rax)
cmpl $0xff57, 0xc(%rsp)      # imm = 0xFF57
jne 0x3ccd5
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x48c(%rax)
cmpl $0xff56, 0xc(%rsp)      # imm = 0xFF56
jne 0x3ccf0
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x48d(%rax)
cmpl $0xffe5, 0xc(%rsp)      # imm = 0xFFE5
jne 0x3cd0b
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x48e(%rax)
cmpl $0x61, 0xc(%rsp)
jne 0x3cd23
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x48f(%rax)
cmpl $0x73, 0xc(%rsp)
jne 0x3cd3b
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x490(%rax)
cmpl $0x64, 0xc(%rsp)
jne 0x3cd53
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x491(%rax)
cmpl $0x66, 0xc(%rsp)
jne 0x3cd6b
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x492(%rax)
cmpl $0x67, 0xc(%rsp)
jne 0x3cd83
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x493(%rax)
cmpl $0x68, 0xc(%rsp)
jne 0x3cd9b
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x494(%rax)
cmpl $0x6a, 0xc(%rsp)
jne 0x3cdb3
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x495(%rax)
cmpl $0x6b, 0xc(%rsp)
jne 0x3cdcb
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x496(%rax)
cmpl $0x6c, 0xc(%rsp)
jne 0x3cde3
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x497(%rax)
cmpl $0xff0d, 0xc(%rsp)      # imm = 0xFF0D
jne 0x3cdfe
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x498(%rax)
cmpl $0xffe1, 0xc(%rsp)      # imm = 0xFFE1
jne 0x3ce19
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x499(%rax)
cmpl $0x7a, 0xc(%rsp)
jne 0x3ce31
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x49a(%rax)
cmpl $0x78, 0xc(%rsp)
jne 0x3ce49
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x49b(%rax)
cmpl $0x63, 0xc(%rsp)
jne 0x3ce61
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x49c(%rax)
cmpl $0x76, 0xc(%rsp)
jne 0x3ce79
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x49d(%rax)
cmpl $0x62, 0xc(%rsp)
jne 0x3ce91
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x49e(%rax)
cmpl $0x6e, 0xc(%rsp)
jne 0x3cea9
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x49f(%rax)
cmpl $0x6d, 0xc(%rsp)
jne 0x3cec1
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4a0(%rax)
cmpl $0xffe2, 0xc(%rsp)      # imm = 0xFFE2
jne 0x3cedc
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4a1(%rax)
cmpl $0xff52, 0xc(%rsp)      # imm = 0xFF52
jne 0x3cef7
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4a2(%rax)
cmpl $0xffe3, 0xc(%rsp)      # imm = 0xFFE3
jne 0x3cf12
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4a3(%rax)
cmpl $0xffeb, 0xc(%rsp)      # imm = 0xFFEB
jne 0x3cf2d
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4a4(%rax)
cmpl $0xffe9, 0xc(%rsp)      # imm = 0xFFE9
jne 0x3cf48
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4a5(%rax)
cmpl $0x20, 0xc(%rsp)
jne 0x3cf60
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4a6(%rax)
cmpl $0xffea, 0xc(%rsp)      # imm = 0xFFEA
jne 0x3cf7b
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4a7(%rax)
cmpl $0xffec, 0xc(%rsp)      # imm = 0xFFEC
jne 0x3cf96
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4a8(%rax)
cmpl $0xff67, 0xc(%rsp)      # imm = 0xFF67
jne 0x3cfb1
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4a9(%rax)
cmpl $0xffe4, 0xc(%rsp)      # imm = 0xFFE4
jne 0x3cfcc
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4aa(%rax)
cmpl $0xff51, 0xc(%rsp)      # imm = 0xFF51
jne 0x3cfe7
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4ab(%rax)
cmpl $0xff54, 0xc(%rsp)      # imm = 0xFF54
jne 0x3d002
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4ac(%rax)
cmpl $0xff53, 0xc(%rsp)      # imm = 0xFF53
jne 0x3d01d
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4ad(%rax)
cmpl $0xffb0, 0xc(%rsp)      # imm = 0xFFB0
jne 0x3d038
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4ae(%rax)
cmpl $0xffb1, 0xc(%rsp)      # imm = 0xFFB1
jne 0x3d053
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4af(%rax)
cmpl $0xffb2, 0xc(%rsp)      # imm = 0xFFB2
jne 0x3d06e
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4b0(%rax)
cmpl $0xffb3, 0xc(%rsp)      # imm = 0xFFB3
jne 0x3d089
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4b1(%rax)
cmpl $0xffb4, 0xc(%rsp)      # imm = 0xFFB4
jne 0x3d0a4
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4b2(%rax)
cmpl $0xffb5, 0xc(%rsp)      # imm = 0xFFB5
jne 0x3d0bf
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4b3(%rax)
cmpl $0xffb6, 0xc(%rsp)      # imm = 0xFFB6
jne 0x3d0da
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4b4(%rax)
cmpl $0xffb7, 0xc(%rsp)      # imm = 0xFFB7
jne 0x3d0f5
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4b5(%rax)
cmpl $0xffb8, 0xc(%rsp)      # imm = 0xFFB8
jne 0x3d110
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4b6(%rax)
cmpl $0xffb9, 0xc(%rsp)      # imm = 0xFFB9
jne 0x3d12b
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4b7(%rax)
cmpl $0xffab, 0xc(%rsp)      # imm = 0xFFAB
jne 0x3d146
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4b8(%rax)
cmpl $0xffad, 0xc(%rsp)      # imm = 0xFFAD
jne 0x3d161
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4b9(%rax)
cmpl $0xffaa, 0xc(%rsp)      # imm = 0xFFAA
jne 0x3d17c
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4ba(%rax)
cmpl $0xffaf, 0xc(%rsp)      # imm = 0xFFAF
jne 0x3d197
movq (%rsp), %rax
movb 0xb(%rsp), %cl
andb $0x1, %cl
movb %cl, 0x4bb(%rax)
testb $0x1, 0xb(%rsp)
je 0x3d210
movq (%rsp), %rax
movl 0x4c(%rax), %eax
cmpl $0x0, %eax
je 0x3d1c7
movq (%rsp), %rsi
movq %rsi, %rdi
addq $0x4c, %rdi
addq $0x4, %rdi
addq $0x4c, %rsi
movl $0x1fc, %edx            # imm = 0x1FC
callq 0x58c0
movq (%rsp), %rax
movl 0xc(%rsp), %ecx
movl %ecx, 0x4c(%rax)
movl 0x24c(%rax), %eax
cmpl $0x0, %eax
je 0x3d20e
movq (%rsp), %rsi
movq %rsi, %rdi
addq $0x24c, %rdi            # imm = 0x24C
addq $0x4, %rdi
addq $0x24c, %rsi            # imm = 0x24C
movl $0x1fc, %edx            # imm = 0x1FC
callq 0x58c0
movq (%rsp), %rax
movl $0x0, 0x24c(%rax)
jmp 0x3d284
movq (%rsp), %rax
movl 0x4c(%rax), %eax
cmpl $0x0, %eax
je 0x3d244
movq (%rsp), %rsi
movq %rsi, %rdi
addq $0x4c, %rdi
addq $0x4, %rdi
addq $0x4c, %rsi
movl $0x1fc, %edx            # imm = 0x1FC
callq 0x58c0
movq (%rsp), %rax
movl $0x0, 0x4c(%rax)
movq (%rsp), %rax
movl 0x24c(%rax), %eax
cmpl $0x0, %eax
je 0x3d276
movq (%rsp), %rsi
movq %rsi, %rdi
addq $0x24c, %rdi            # imm = 0x24C
addq $0x4, %rdi
addq $0x24c, %rsi            # imm = 0x24C
movl $0x1fc, %edx            # imm = 0x1FC
callq 0x58c0
movq (%rsp), %rax
movl 0xc(%rsp), %ecx
movl %ecx, 0x24c(%rax)
movq (%rsp), %rax
movl 0xc(%rsp), %edx
xorl %ecx, %ecx
negl %edx
sbbl %ecx, %ecx
andb $0x1, %cl
movb %cl, 0x463(%rax)
cmpl $0x0, 0xc(%rsp)
je 0x3d2b3
callq 0x37200
movq %rax, %rdi
addq $0x10, %rdi
callq 0x51a0
movq (%rsp), %rax
addq $0x18, %rsp
retq
nopl (%rax)