// File: ehw-fit[P]py-paretoarchive/src/paretoarchive/core.cpp
// Function: _pyx_pf_13paretoarchive_4core_17PyBspTreeArchive7_8process(__pyx_obj_13paretoarchive_4core_PyBspTreeArchive7*, _object*, _object*, _object*)
static PyObject *__pyx_pf_13paretoarchive_4core_17PyBspTreeArchive7_8process(struct __pyx_obj_13paretoarchive_4core_PyBspTreeArchive7 *__pyx_v_self, PyObject *__pyx_v_item, PyObject *__pyx_v_customId, PyObject *__pyx_v_returnId) {
  ObjVec<7>  __pyx_v_data;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  Py_ssize_t __pyx_t_1;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_t_3;
  int __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  double __pyx_t_7;
  int __pyx_t_8;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("process", 0);
  __Pyx_INCREF(__pyx_v_customId);

  /* "paretoarchive/core.pyx":494
 * 
 *   def process(self, item, customId=None, returnId=False):
 *     assert len(item) == 7             # <<<<<<<<<<<<<<
 *     cdef ObjVec[myInt7] data
 *     cdef int i
 */
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(__pyx_assertions_enabled())) {
    __pyx_t_1 = PyObject_Length(__pyx_v_item); if (unlikely(__pyx_t_1 == ((Py_ssize_t)-1))) __PYX_ERR(0, 494, __pyx_L1_error)
    if (unlikely(!((__pyx_t_1 == 7) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 494, __pyx_L1_error)
    }
  }
  #endif

  /* "paretoarchive/core.pyx":497
 *     cdef ObjVec[myInt7] data
 *     cdef int i
 *     if customId == None:             # <<<<<<<<<<<<<<
 *         customId = self._id
 *         self._id += 1
 */
  __pyx_t_2 = PyObject_RichCompare(__pyx_v_customId, Py_None, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 497, __pyx_L1_error)
  __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 497, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (__pyx_t_3) {

    /* "paretoarchive/core.pyx":498
 *     cdef int i
 *     if customId == None:
 *         customId = self._id             # <<<<<<<<<<<<<<
 *         self._id += 1
 *     data.setId(customId)
 */
    __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_self->_id); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 498, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_2);
    __Pyx_DECREF_SET(__pyx_v_customId, __pyx_t_2);
    __pyx_t_2 = 0;

    /* "paretoarchive/core.pyx":499
 *     if customId == None:
 *         customId = self._id
 *         self._id += 1             # <<<<<<<<<<<<<<
 *     data.setId(customId)
 *     data[0] = self._sign[0]*item[0]
 */
    __pyx_v_self->_id = (__pyx_v_self->_id + 1);

    /* "paretoarchive/core.pyx":497
 *     cdef ObjVec[myInt7] data
 *     cdef int i
 *     if customId == None:             # <<<<<<<<<<<<<<
 *         customId = self._id
 *         self._id += 1
 */
  }

  /* "paretoarchive/core.pyx":500
 *         customId = self._id
 *         self._id += 1
 *     data.setId(customId)             # <<<<<<<<<<<<<<
 *     data[0] = self._sign[0]*item[0]
 *     data[1] = self._sign[1]*item[1]
 */
  __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_v_customId); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 500, __pyx_L1_error)
  __pyx_v_data.setId(__pyx_t_4);

  /* "paretoarchive/core.pyx":501
 *         self._id += 1
 *     data.setId(customId)
 *     data[0] = self._sign[0]*item[0]             # <<<<<<<<<<<<<<
 *     data[1] = self._sign[1]*item[1]
 *     data[2] = self._sign[2]*item[2]
 */
  __pyx_t_2 = __Pyx_PyInt_From_int((__pyx_v_self->_sign[0])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 501, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_item, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 501, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_6 = PyNumber_Multiply(__pyx_t_2, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 501, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_7 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_7 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 501, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  (__pyx_v_data[0]) = __pyx_t_7;

  /* "paretoarchive/core.pyx":502
 *     data.setId(customId)
 *     data[0] = self._sign[0]*item[0]
 *     data[1] = self._sign[1]*item[1]             # <<<<<<<<<<<<<<
 *     data[2] = self._sign[2]*item[2]
 *     data[3] = self._sign[3]*item[3]
 */
  __pyx_t_6 = __Pyx_PyInt_From_int((__pyx_v_self->_sign[1])); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 502, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_item, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 502, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_2 = PyNumber_Multiply(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 502, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_7 = __pyx_PyFloat_AsDouble(__pyx_t_2); if (unlikely((__pyx_t_7 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 502, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  (__pyx_v_data[1]) = __pyx_t_7;

  /* "paretoarchive/core.pyx":503
 *     data[0] = self._sign[0]*item[0]
 *     data[1] = self._sign[1]*item[1]
 *     data[2] = self._sign[2]*item[2]             # <<<<<<<<<<<<<<
 *     data[3] = self._sign[3]*item[3]
 *     data[4] = self._sign[4]*item[4]
 */
  __pyx_t_2 = __Pyx_PyInt_From_int((__pyx_v_self->_sign[2])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 503, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_item, 2, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 503, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_6 = PyNumber_Multiply(__pyx_t_2, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 503, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_7 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_7 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 503, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  (__pyx_v_data[2]) = __pyx_t_7;

  /* "paretoarchive/core.pyx":504
 *     data[1] = self._sign[1]*item[1]
 *     data[2] = self._sign[2]*item[2]
 *     data[3] = self._sign[3]*item[3]             # <<<<<<<<<<<<<<
 *     data[4] = self._sign[4]*item[4]
 *     data[5] = self._sign[5]*item[5]
 */
  __pyx_t_6 = __Pyx_PyInt_From_int((__pyx_v_self->_sign[3])); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 504, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_item, 3, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 504, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_2 = PyNumber_Multiply(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 504, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_7 = __pyx_PyFloat_AsDouble(__pyx_t_2); if (unlikely((__pyx_t_7 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 504, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  (__pyx_v_data[3]) = __pyx_t_7;

  /* "paretoarchive/core.pyx":505
 *     data[2] = self._sign[2]*item[2]
 *     data[3] = self._sign[3]*item[3]
 *     data[4] = self._sign[4]*item[4]             # <<<<<<<<<<<<<<
 *     data[5] = self._sign[5]*item[5]
 *     data[6] = self._sign[6]*item[6]
 */
  __pyx_t_2 = __Pyx_PyInt_From_int((__pyx_v_self->_sign[4])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 505, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_item, 4, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 505, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_6 = PyNumber_Multiply(__pyx_t_2, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 505, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_7 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_7 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 505, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  (__pyx_v_data[4]) = __pyx_t_7;

  /* "paretoarchive/core.pyx":506
 *     data[3] = self._sign[3]*item[3]
 *     data[4] = self._sign[4]*item[4]
 *     data[5] = self._sign[5]*item[5]             # <<<<<<<<<<<<<<
 *     data[6] = self._sign[6]*item[6]
 *     if not returnId:
 */
  __pyx_t_6 = __Pyx_PyInt_From_int((__pyx_v_self->_sign[5])); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 506, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_item, 5, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 506, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_2 = PyNumber_Multiply(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 506, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_7 = __pyx_PyFloat_AsDouble(__pyx_t_2); if (unlikely((__pyx_t_7 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 506, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  (__pyx_v_data[5]) = __pyx_t_7;

  /* "paretoarchive/core.pyx":507
 *     data[4] = self._sign[4]*item[4]
 *     data[5] = self._sign[5]*item[5]
 *     data[6] = self._sign[6]*item[6]             # <<<<<<<<<<<<<<
 *     if not returnId:
 *           return self._front.process(data)
 */
  __pyx_t_2 = __Pyx_PyInt_From_int((__pyx_v_self->_sign[6])); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 507, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_item, 6, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 507, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_6 = PyNumber_Multiply(__pyx_t_2, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 507, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_7 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_7 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 507, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
  (__pyx_v_data[6]) = __pyx_t_7;

  /* "paretoarchive/core.pyx":508
 *     data[5] = self._sign[5]*item[5]
 *     data[6] = self._sign[6]*item[6]
 *     if not returnId:             # <<<<<<<<<<<<<<
 *           return self._front.process(data)
 *     return (self._front.process(data), customId)
 */
  __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_returnId); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 508, __pyx_L1_error)
  __pyx_t_8 = ((!__pyx_t_3) != 0);
  if (__pyx_t_8) {

    /* "paretoarchive/core.pyx":509
 *     data[6] = self._sign[6]*item[6]
 *     if not returnId:
 *           return self._front.process(data)             # <<<<<<<<<<<<<<
 *     return (self._front.process(data), customId)
 * 
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_t_6 = __Pyx_PyBool_FromLong(__pyx_v_self->_front->process(__pyx_v_data)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 509, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_6);
    __pyx_r = __pyx_t_6;
    __pyx_t_6 = 0;
    goto __pyx_L0;

    /* "paretoarchive/core.pyx":508
 *     data[5] = self._sign[5]*item[5]
 *     data[6] = self._sign[6]*item[6]
 *     if not returnId:             # <<<<<<<<<<<<<<
 *           return self._front.process(data)
 *     return (self._front.process(data), customId)
 */
  }

  /* "paretoarchive/core.pyx":510
 *     if not returnId:
 *           return self._front.process(data)
 *     return (self._front.process(data), customId)             # <<<<<<<<<<<<<<
 * 
 *   def clear(self):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_6 = __Pyx_PyBool_FromLong(__pyx_v_self->_front->process(__pyx_v_data)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 510, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_6);
  __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 510, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_GIVEREF(__pyx_t_6);
  PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6);
  __Pyx_INCREF(__pyx_v_customId);
  __Pyx_GIVEREF(__pyx_v_customId);
  PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_customId);
  __pyx_t_6 = 0;
  __pyx_r = __pyx_t_5;
  __pyx_t_5 = 0;
  goto __pyx_L0;

  /* "paretoarchive/core.pyx":493
 *     self._front = NULL
 * 
 *   def process(self, item, customId=None, returnId=False):             # <<<<<<<<<<<<<<
 *     assert len(item) == 7
 *     cdef ObjVec[myInt7] data
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_AddTraceback("paretoarchive.core.PyBspTreeArchive7.process", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF(__pyx_v_customId);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x180, %rsp            # imm = 0x180
movq %fs:0x28, %rax
movq %rax, -0x8(%rbp)
movq %rdi, -0x50(%rbp)
movq %rsi, -0x58(%rbp)
movq %rdx, -0x60(%rbp)
movq %rcx, -0x68(%rbp)
leaq -0x48(%rbp), %rdi
xorl %esi, %esi
callq 0x77f00
movq $0x0, -0x70(%rbp)
movq $0x0, -0x80(%rbp)
movq $0x0, -0x90(%rbp)
movq $0x0, -0x98(%rbp)
movl $0x0, -0xa8(%rbp)
movq $0x0, -0xb0(%rbp)
movl $0x0, -0xb4(%rbp)
movq -0x60(%rbp), %rdi
callq 0x2a7c0
cmpl $0x0, 0x6df50(%rip)     # 0xac568
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3e628
jmp 0x3e6c5
movq -0x58(%rbp), %rdi
callq 0x29520
movq %rax, -0x78(%rbp)
cmpq $-0x1, -0x78(%rbp)
sete %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3e647
jmp 0x3e66e
movq 0x68e12(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1ee, -0xa8(%rbp)     # imm = 0x1EE
movl $0x24c7, -0xb4(%rbp)    # imm = 0x24C7
jmp 0x3f952
cmpq $0x7, -0x78(%rbp)
sete %al
andb $0x1, %al
movzbl %al, %eax
cmpl $0x0, %eax
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3e68d
jmp 0x3e6c3
movq 0x68864(%rip), %rax     # 0xa6ef8
movq (%rax), %rdi
callq 0x29550
movq 0x68dbd(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1ee, -0xa8(%rbp)     # imm = 0x1EE
movl $0x24ca, -0xb4(%rbp)    # imm = 0x24CA
jmp 0x3f952
jmp 0x3e6c5
movq -0x60(%rbp), %rdi
movq 0x68718(%rip), %rsi     # 0xa6de8
movl $0x2, %edx
callq 0x29680
movq %rax, -0x80(%rbp)
cmpq $0x0, -0x80(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3e6f2
jmp 0x3e719
movq 0x68d67(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f1, -0xa8(%rbp)     # imm = 0x1F1
movl $0x24d6, -0xb4(%rbp)    # imm = 0x24D6
jmp 0x3f952
movq -0x80(%rbp), %rdi
callq 0x2f230
movl %eax, -0x84(%rbp)
cmpl $0x0, -0x84(%rbp)
setl %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3e73c
jmp 0x3e763
movq 0x68d1d(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f1, -0xa8(%rbp)     # imm = 0x1F1
movl $0x24d7, -0xb4(%rbp)    # imm = 0x24D7
jmp 0x3f952
movq -0x80(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x80(%rbp)
cmpl $0x0, -0x84(%rbp)
je 0x3e806
movq -0x50(%rbp), %rax
movl 0x34(%rax), %edi
callq 0x2ec60
movq %rax, -0x80(%rbp)
cmpq $0x0, -0x80(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3e7a5
jmp 0x3e7cc
movq 0x68cb4(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f2, -0xa8(%rbp)     # imm = 0x1F2
movl $0x24e2, -0xb4(%rbp)    # imm = 0x24E2
jmp 0x3f952
jmp 0x3e7ce
movq -0x60(%rbp), %rax
movq %rax, -0xc0(%rbp)
movq -0x80(%rbp), %rax
movq %rax, -0x60(%rbp)
movq -0xc0(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x80(%rbp)
movq -0x50(%rbp), %rax
movl 0x34(%rax), %ecx
addl $0x1, %ecx
movq -0x50(%rbp), %rax
movl %ecx, 0x34(%rax)
movq -0x60(%rbp), %rdi
callq 0x2fe40
movl %eax, -0x88(%rbp)
xorl %eax, %eax
cmpl $-0x1, -0x88(%rbp)
movb %al, -0xc1(%rbp)
jne 0x3e838
callq 0x295f0
cmpq $0x0, %rax
setne %al
movb %al, -0xc1(%rbp)
movb -0xc1(%rbp), %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3e848
jmp 0x3e86f
movq 0x68c11(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f4, -0xa8(%rbp)     # imm = 0x1F4
movl $0x2500, -0xb4(%rbp)    # imm = 0x2500
jmp 0x3f952
movl -0x88(%rbp), %esi
leaq -0x48(%rbp), %rdi
callq 0x77f30
movq -0x50(%rbp), %rax
movl 0x18(%rax), %edi
callq 0x2ec60
movq %rax, -0x80(%rbp)
cmpq $0x0, -0x80(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3e8a2
jmp 0x3e8c9
movq 0x68bb7(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f5, -0xa8(%rbp)     # imm = 0x1F5
movl $0x250a, -0xb4(%rbp)    # imm = 0x250A
jmp 0x3f952
movq -0x58(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
xorl %ecx, %ecx
movl $0x1, %r8d
movl %ecx, %edx
callq 0x2ef90
movq %rax, -0x90(%rbp)
cmpq $0x0, -0x90(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3e8fe
jmp 0x3e925
movq 0x68b5b(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f5, -0xa8(%rbp)     # imm = 0x1F5
movl $0x250c, -0xb4(%rbp)    # imm = 0x250C
jmp 0x3f952
movq -0x80(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x29410
movq %rax, -0x98(%rbp)
cmpq $0x0, -0x98(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3e953
jmp 0x3e97a
movq 0x68b06(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f5, -0xa8(%rbp)     # imm = 0x1F5
movl $0x250e, -0xb4(%rbp)    # imm = 0x250E
jmp 0x3f952
movq -0x80(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x80(%rbp)
movq -0x90(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq 0x685e8(%rip), %rsi     # 0xa6f98
callq 0x2c410
cmpl $0x0, %eax
je 0x3e9d0
movq -0x98(%rbp), %rax
movsd 0x10(%rax), %xmm0
movsd %xmm0, -0xd0(%rbp)
jmp 0x3e9e4
movq -0x98(%rbp), %rdi
callq 0x29310
movsd %xmm0, -0xd0(%rbp)
movsd -0xd0(%rbp), %xmm0
movsd %xmm0, -0xa0(%rbp)
movsd -0xa0(%rbp), %xmm0
xorl %eax, %eax
movsd 0x4fcb2(%rip), %xmm1    # 0x8e6b8
ucomisd %xmm1, %xmm0
movb %al, -0xd1(%rbp)
jne 0x3ea26
jp 0x3ea26
callq 0x295f0
cmpq $0x0, %rax
setne %al
movb %al, -0xd1(%rbp)
movb -0xd1(%rbp), %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3ea36
jmp 0x3ea5d
movq 0x68a23(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f5, -0xa8(%rbp)     # imm = 0x1F5
movl $0x2512, -0xb4(%rbp)    # imm = 0x2512
jmp 0x3f952
movq -0x98(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x98(%rbp)
movsd -0xa0(%rbp), %xmm0
movsd %xmm0, -0xe0(%rbp)
leaq -0x48(%rbp), %rdi
xorl %esi, %esi
callq 0x77f50
movsd -0xe0(%rbp), %xmm0
movsd %xmm0, (%rax)
movq -0x50(%rbp), %rax
movl 0x1c(%rax), %edi
callq 0x2ec60
movq %rax, -0x98(%rbp)
cmpq $0x0, -0x98(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3eac5
jmp 0x3eaec
movq 0x68994(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f6, -0xa8(%rbp)     # imm = 0x1F6
movl $0x251d, -0xb4(%rbp)    # imm = 0x251D
jmp 0x3f952
movq -0x58(%rbp), %rdi
movl $0x1, %esi
xorl %ecx, %ecx
movl $0x1, %r8d
movl %ecx, %edx
callq 0x2ef90
movq %rax, -0x90(%rbp)
cmpq $0x0, -0x90(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3eb22
jmp 0x3eb49
movq 0x68937(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f6, -0xa8(%rbp)     # imm = 0x1F6
movl $0x251f, -0xb4(%rbp)    # imm = 0x251F
jmp 0x3f952
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x29410
movq %rax, -0x80(%rbp)
cmpq $0x0, -0x80(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3eb74
jmp 0x3eb9b
movq 0x688e5(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f6, -0xa8(%rbp)     # imm = 0x1F6
movl $0x2521, -0xb4(%rbp)    # imm = 0x2521
jmp 0x3f952
movq -0x98(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x98(%rbp)
movq -0x90(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x90(%rbp)
movq -0x80(%rbp), %rdi
movq 0x683c4(%rip), %rsi     # 0xa6f98
callq 0x2c410
cmpl $0x0, %eax
je 0x3ebf1
movq -0x80(%rbp), %rax
movsd 0x10(%rax), %xmm0
movsd %xmm0, -0xe8(%rbp)
jmp 0x3ec02
movq -0x80(%rbp), %rdi
callq 0x29310
movsd %xmm0, -0xe8(%rbp)
movsd -0xe8(%rbp), %xmm0
movsd %xmm0, -0xa0(%rbp)
movsd -0xa0(%rbp), %xmm0
xorl %eax, %eax
movsd 0x4fa94(%rip), %xmm1    # 0x8e6b8
ucomisd %xmm1, %xmm0
movb %al, -0xe9(%rbp)
jne 0x3ec44
jp 0x3ec44
callq 0x295f0
cmpq $0x0, %rax
setne %al
movb %al, -0xe9(%rbp)
movb -0xe9(%rbp), %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3ec54
jmp 0x3ec7b
movq 0x68805(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f6, -0xa8(%rbp)     # imm = 0x1F6
movl $0x2525, -0xb4(%rbp)    # imm = 0x2525
jmp 0x3f952
movq -0x80(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x80(%rbp)
movsd -0xa0(%rbp), %xmm0
movsd %xmm0, -0xf8(%rbp)
leaq -0x48(%rbp), %rdi
movl $0x1, %esi
callq 0x77f50
movsd -0xf8(%rbp), %xmm0
movsd %xmm0, (%rax)
movq -0x50(%rbp), %rax
movl 0x20(%rax), %edi
callq 0x2ec60
movq %rax, -0x80(%rbp)
cmpq $0x0, -0x80(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3ecda
jmp 0x3ed01
movq 0x6877f(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f7, -0xa8(%rbp)     # imm = 0x1F7
movl $0x2530, -0xb4(%rbp)    # imm = 0x2530
jmp 0x3f952
movq -0x58(%rbp), %rdi
movl $0x2, %esi
xorl %ecx, %ecx
movl $0x1, %r8d
movl %ecx, %edx
callq 0x2ef90
movq %rax, -0x90(%rbp)
cmpq $0x0, -0x90(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3ed37
jmp 0x3ed5e
movq 0x68722(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f7, -0xa8(%rbp)     # imm = 0x1F7
movl $0x2532, -0xb4(%rbp)    # imm = 0x2532
jmp 0x3f952
movq -0x80(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x29410
movq %rax, -0x98(%rbp)
cmpq $0x0, -0x98(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3ed8c
jmp 0x3edb3
movq 0x686cd(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f7, -0xa8(%rbp)     # imm = 0x1F7
movl $0x2534, -0xb4(%rbp)    # imm = 0x2534
jmp 0x3f952
movq -0x80(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x80(%rbp)
movq -0x90(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq 0x681af(%rip), %rsi     # 0xa6f98
callq 0x2c410
cmpl $0x0, %eax
je 0x3ee09
movq -0x98(%rbp), %rax
movsd 0x10(%rax), %xmm0
movsd %xmm0, -0x100(%rbp)
jmp 0x3ee1d
movq -0x98(%rbp), %rdi
callq 0x29310
movsd %xmm0, -0x100(%rbp)
movsd -0x100(%rbp), %xmm0
movsd %xmm0, -0xa0(%rbp)
movsd -0xa0(%rbp), %xmm0
xorl %eax, %eax
movsd 0x4f879(%rip), %xmm1    # 0x8e6b8
ucomisd %xmm1, %xmm0
movb %al, -0x101(%rbp)
jne 0x3ee5f
jp 0x3ee5f
callq 0x295f0
cmpq $0x0, %rax
setne %al
movb %al, -0x101(%rbp)
movb -0x101(%rbp), %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3ee6f
jmp 0x3ee96
movq 0x685ea(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f7, -0xa8(%rbp)     # imm = 0x1F7
movl $0x2538, -0xb4(%rbp)    # imm = 0x2538
jmp 0x3f952
movq -0x98(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x98(%rbp)
movsd -0xa0(%rbp), %xmm0
movsd %xmm0, -0x110(%rbp)
leaq -0x48(%rbp), %rdi
movl $0x2, %esi
callq 0x77f50
movsd -0x110(%rbp), %xmm0
movsd %xmm0, (%rax)
movq -0x50(%rbp), %rax
movl 0x24(%rax), %edi
callq 0x2ec60
movq %rax, -0x98(%rbp)
cmpq $0x0, -0x98(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3ef01
jmp 0x3ef28
movq 0x68558(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f8, -0xa8(%rbp)     # imm = 0x1F8
movl $0x2543, -0xb4(%rbp)    # imm = 0x2543
jmp 0x3f952
movq -0x58(%rbp), %rdi
movl $0x3, %esi
xorl %ecx, %ecx
movl $0x1, %r8d
movl %ecx, %edx
callq 0x2ef90
movq %rax, -0x90(%rbp)
cmpq $0x0, -0x90(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3ef5e
jmp 0x3ef85
movq 0x684fb(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f8, -0xa8(%rbp)     # imm = 0x1F8
movl $0x2545, -0xb4(%rbp)    # imm = 0x2545
jmp 0x3f952
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x29410
movq %rax, -0x80(%rbp)
cmpq $0x0, -0x80(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3efb0
jmp 0x3efd7
movq 0x684a9(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f8, -0xa8(%rbp)     # imm = 0x1F8
movl $0x2547, -0xb4(%rbp)    # imm = 0x2547
jmp 0x3f952
movq -0x98(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x98(%rbp)
movq -0x90(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x90(%rbp)
movq -0x80(%rbp), %rdi
movq 0x67f88(%rip), %rsi     # 0xa6f98
callq 0x2c410
cmpl $0x0, %eax
je 0x3f02d
movq -0x80(%rbp), %rax
movsd 0x10(%rax), %xmm0
movsd %xmm0, -0x118(%rbp)
jmp 0x3f03e
movq -0x80(%rbp), %rdi
callq 0x29310
movsd %xmm0, -0x118(%rbp)
movsd -0x118(%rbp), %xmm0
movsd %xmm0, -0xa0(%rbp)
movsd -0xa0(%rbp), %xmm0
xorl %eax, %eax
movsd 0x4f658(%rip), %xmm1    # 0x8e6b8
ucomisd %xmm1, %xmm0
movb %al, -0x119(%rbp)
jne 0x3f080
jp 0x3f080
callq 0x295f0
cmpq $0x0, %rax
setne %al
movb %al, -0x119(%rbp)
movb -0x119(%rbp), %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3f090
jmp 0x3f0b7
movq 0x683c9(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f8, -0xa8(%rbp)     # imm = 0x1F8
movl $0x254b, -0xb4(%rbp)    # imm = 0x254B
jmp 0x3f952
movq -0x80(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x80(%rbp)
movsd -0xa0(%rbp), %xmm0
movsd %xmm0, -0x128(%rbp)
leaq -0x48(%rbp), %rdi
movl $0x3, %esi
callq 0x77f50
movsd -0x128(%rbp), %xmm0
movsd %xmm0, (%rax)
movq -0x50(%rbp), %rax
movl 0x28(%rax), %edi
callq 0x2ec60
movq %rax, -0x80(%rbp)
cmpq $0x0, -0x80(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3f116
jmp 0x3f13d
movq 0x68343(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f9, -0xa8(%rbp)     # imm = 0x1F9
movl $0x2556, -0xb4(%rbp)    # imm = 0x2556
jmp 0x3f952
movq -0x58(%rbp), %rdi
movl $0x4, %esi
xorl %ecx, %ecx
movl $0x1, %r8d
movl %ecx, %edx
callq 0x2ef90
movq %rax, -0x90(%rbp)
cmpq $0x0, -0x90(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3f173
jmp 0x3f19a
movq 0x682e6(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f9, -0xa8(%rbp)     # imm = 0x1F9
movl $0x2558, -0xb4(%rbp)    # imm = 0x2558
jmp 0x3f952
movq -0x80(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x29410
movq %rax, -0x98(%rbp)
cmpq $0x0, -0x98(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3f1c8
jmp 0x3f1ef
movq 0x68291(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f9, -0xa8(%rbp)     # imm = 0x1F9
movl $0x255a, -0xb4(%rbp)    # imm = 0x255A
jmp 0x3f952
movq -0x80(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x80(%rbp)
movq -0x90(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq 0x67d73(%rip), %rsi     # 0xa6f98
callq 0x2c410
cmpl $0x0, %eax
je 0x3f245
movq -0x98(%rbp), %rax
movsd 0x10(%rax), %xmm0
movsd %xmm0, -0x130(%rbp)
jmp 0x3f259
movq -0x98(%rbp), %rdi
callq 0x29310
movsd %xmm0, -0x130(%rbp)
movsd -0x130(%rbp), %xmm0
movsd %xmm0, -0xa0(%rbp)
movsd -0xa0(%rbp), %xmm0
xorl %eax, %eax
movsd 0x4f43d(%rip), %xmm1    # 0x8e6b8
ucomisd %xmm1, %xmm0
movb %al, -0x131(%rbp)
jne 0x3f29b
jp 0x3f29b
callq 0x295f0
cmpq $0x0, %rax
setne %al
movb %al, -0x131(%rbp)
movb -0x131(%rbp), %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3f2ab
jmp 0x3f2d2
movq 0x681ae(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1f9, -0xa8(%rbp)     # imm = 0x1F9
movl $0x255e, -0xb4(%rbp)    # imm = 0x255E
jmp 0x3f952
movq -0x98(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x98(%rbp)
movsd -0xa0(%rbp), %xmm0
movsd %xmm0, -0x140(%rbp)
leaq -0x48(%rbp), %rdi
movl $0x4, %esi
callq 0x77f50
movsd -0x140(%rbp), %xmm0
movsd %xmm0, (%rax)
movq -0x50(%rbp), %rax
movl 0x2c(%rax), %edi
callq 0x2ec60
movq %rax, -0x98(%rbp)
cmpq $0x0, -0x98(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3f33d
jmp 0x3f364
movq 0x6811c(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1fa, -0xa8(%rbp)     # imm = 0x1FA
movl $0x2569, -0xb4(%rbp)    # imm = 0x2569
jmp 0x3f952
movq -0x58(%rbp), %rdi
movl $0x5, %esi
xorl %ecx, %ecx
movl $0x1, %r8d
movl %ecx, %edx
callq 0x2ef90
movq %rax, -0x90(%rbp)
cmpq $0x0, -0x90(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3f39a
jmp 0x3f3c1
movq 0x680bf(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1fa, -0xa8(%rbp)     # imm = 0x1FA
movl $0x256b, -0xb4(%rbp)    # imm = 0x256B
jmp 0x3f952
movq -0x98(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x29410
movq %rax, -0x80(%rbp)
cmpq $0x0, -0x80(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3f3ec
jmp 0x3f413
movq 0x6806d(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1fa, -0xa8(%rbp)     # imm = 0x1FA
movl $0x256d, -0xb4(%rbp)    # imm = 0x256D
jmp 0x3f952
movq -0x98(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x98(%rbp)
movq -0x90(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x90(%rbp)
movq -0x80(%rbp), %rdi
movq 0x67b4c(%rip), %rsi     # 0xa6f98
callq 0x2c410
cmpl $0x0, %eax
je 0x3f469
movq -0x80(%rbp), %rax
movsd 0x10(%rax), %xmm0
movsd %xmm0, -0x148(%rbp)
jmp 0x3f47a
movq -0x80(%rbp), %rdi
callq 0x29310
movsd %xmm0, -0x148(%rbp)
movsd -0x148(%rbp), %xmm0
movsd %xmm0, -0xa0(%rbp)
movsd -0xa0(%rbp), %xmm0
xorl %eax, %eax
movsd 0x4f21c(%rip), %xmm1    # 0x8e6b8
ucomisd %xmm1, %xmm0
movb %al, -0x149(%rbp)
jne 0x3f4bc
jp 0x3f4bc
callq 0x295f0
cmpq $0x0, %rax
setne %al
movb %al, -0x149(%rbp)
movb -0x149(%rbp), %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3f4cc
jmp 0x3f4f3
movq 0x67f8d(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1fa, -0xa8(%rbp)     # imm = 0x1FA
movl $0x2571, -0xb4(%rbp)    # imm = 0x2571
jmp 0x3f952
movq -0x80(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x80(%rbp)
movsd -0xa0(%rbp), %xmm0
movsd %xmm0, -0x158(%rbp)
leaq -0x48(%rbp), %rdi
movl $0x5, %esi
callq 0x77f50
movsd -0x158(%rbp), %xmm0
movsd %xmm0, (%rax)
movq -0x50(%rbp), %rax
movl 0x30(%rax), %edi
callq 0x2ec60
movq %rax, -0x80(%rbp)
cmpq $0x0, -0x80(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3f552
jmp 0x3f579
movq 0x67f07(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1fb, -0xa8(%rbp)     # imm = 0x1FB
movl $0x257c, -0xb4(%rbp)    # imm = 0x257C
jmp 0x3f952
movq -0x58(%rbp), %rdi
movl $0x6, %esi
xorl %ecx, %ecx
movl $0x1, %r8d
movl %ecx, %edx
callq 0x2ef90
movq %rax, -0x90(%rbp)
cmpq $0x0, -0x90(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3f5af
jmp 0x3f5d6
movq 0x67eaa(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1fb, -0xa8(%rbp)     # imm = 0x1FB
movl $0x257e, -0xb4(%rbp)    # imm = 0x257E
jmp 0x3f952
movq -0x80(%rbp), %rdi
movq -0x90(%rbp), %rsi
callq 0x29410
movq %rax, -0x98(%rbp)
cmpq $0x0, -0x98(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3f604
jmp 0x3f62b
movq 0x67e55(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1fb, -0xa8(%rbp)     # imm = 0x1FB
movl $0x2580, -0xb4(%rbp)    # imm = 0x2580
jmp 0x3f952
movq -0x80(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x80(%rbp)
movq -0x90(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x90(%rbp)
movq -0x98(%rbp), %rdi
movq 0x67937(%rip), %rsi     # 0xa6f98
callq 0x2c410
cmpl $0x0, %eax
je 0x3f681
movq -0x98(%rbp), %rax
movsd 0x10(%rax), %xmm0
movsd %xmm0, -0x160(%rbp)
jmp 0x3f695
movq -0x98(%rbp), %rdi
callq 0x29310
movsd %xmm0, -0x160(%rbp)
movsd -0x160(%rbp), %xmm0
movsd %xmm0, -0xa0(%rbp)
movsd -0xa0(%rbp), %xmm0
xorl %eax, %eax
movsd 0x4f001(%rip), %xmm1    # 0x8e6b8
ucomisd %xmm1, %xmm0
movb %al, -0x161(%rbp)
jne 0x3f6d7
jp 0x3f6d7
callq 0x295f0
cmpq $0x0, %rax
setne %al
movb %al, -0x161(%rbp)
movb -0x161(%rbp), %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3f6e7
jmp 0x3f70e
movq 0x67d72(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1fb, -0xa8(%rbp)     # imm = 0x1FB
movl $0x2584, -0xb4(%rbp)    # imm = 0x2584
jmp 0x3f952
movq -0x98(%rbp), %rdi
callq 0x2a7e0
movq $0x0, -0x98(%rbp)
movsd -0xa0(%rbp), %xmm0
movsd %xmm0, -0x170(%rbp)
leaq -0x48(%rbp), %rdi
movl $0x6, %esi
callq 0x77f50
movsd -0x170(%rbp), %xmm0
movsd %xmm0, (%rax)
movq -0x68(%rbp), %rdi
callq 0x2f230
movl %eax, -0x84(%rbp)
cmpl $0x0, -0x84(%rbp)
setl %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3f772
jmp 0x3f799
movq 0x67ce7(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1fc, -0xa8(%rbp)     # imm = 0x1FC
movl $0x258f, -0xb4(%rbp)    # imm = 0x258F
jmp 0x3f952
cmpl $0x0, -0x84(%rbp)
setne %al
xorb $-0x1, %al
andb $0x1, %al
movzbl %al, %eax
cmpl $0x0, %eax
setne %al
andb $0x1, %al
movzbl %al, %eax
movl %eax, -0xa4(%rbp)
cmpl $0x0, -0xa4(%rbp)
je 0x3f84e
movq -0x70(%rbp), %rdi
callq 0x2a8d0
movq -0x50(%rbp), %rax
movq 0x10(%rax), %rdi
leaq -0x48(%rbp), %rsi
callq 0x77f70
andb $0x1, %al
movzbl %al, %eax
movl %eax, %edi
callq 0x30080
movq %rax, -0x98(%rbp)
cmpq $0x0, -0x98(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3f80c
jmp 0x3f833
movq 0x67c4d(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1fd, -0xa8(%rbp)     # imm = 0x1FD
movl $0x259b, -0xb4(%rbp)    # imm = 0x259B
jmp 0x3f952
movq -0x98(%rbp), %rax
movq %rax, -0x70(%rbp)
movq $0x0, -0x98(%rbp)
jmp 0x3f99a
movq -0x70(%rbp), %rdi
callq 0x2a8d0
movq -0x50(%rbp), %rax
movq 0x10(%rax), %rdi
leaq -0x48(%rbp), %rsi
callq 0x77f70
andb $0x1, %al
movzbl %al, %eax
movl %eax, %edi
callq 0x30080
movq %rax, -0x98(%rbp)
cmpq $0x0, -0x98(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3f892
jmp 0x3f8b9
movq 0x67bc7(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1fe, -0xa8(%rbp)     # imm = 0x1FE
movl $0x25b2, -0xb4(%rbp)    # imm = 0x25B2
jmp 0x3f952
movl $0x2, %edi
callq 0x29200
movq %rax, -0x90(%rbp)
cmpq $0x0, -0x90(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x3f8e1
jmp 0x3f905
movq 0x67b78(%rip), %rax     # 0xa7460
movq %rax, -0xb0(%rbp)
movl $0x1fe, -0xa8(%rbp)     # imm = 0x1FE
movl $0x25b4, -0xb4(%rbp)    # imm = 0x25B4
jmp 0x3f952
movq -0x98(%rbp), %rcx
movq -0x90(%rbp), %rax
movq %rcx, 0x18(%rax)
movq -0x60(%rbp), %rdi
callq 0x2a7c0
movq -0x60(%rbp), %rcx
movq -0x90(%rbp), %rax
movq %rcx, 0x20(%rax)
movq $0x0, -0x98(%rbp)
movq -0x90(%rbp), %rax
movq %rax, -0x70(%rbp)
movq $0x0, -0x90(%rbp)
jmp 0x3f99a
movq -0x80(%rbp), %rdi
callq 0x2a8d0
movq -0x90(%rbp), %rdi
callq 0x2a8d0
movq -0x98(%rbp), %rdi
callq 0x2a8d0
movl -0xb4(%rbp), %esi
movl -0xa8(%rbp), %edx
movq -0xb0(%rbp), %rcx
leaq 0x4fccf(%rip), %rdi     # 0x8f65c
callq 0x2c5a0
movq $0x0, -0x70(%rbp)
movq -0x60(%rbp), %rdi
callq 0x2a8d0
movq -0x70(%rbp), %rax
movq %rax, -0x178(%rbp)
movq %fs:0x28, %rax
movq -0x8(%rbp), %rcx
cmpq %rcx, %rax
jne 0x3f9d0
movq -0x178(%rbp), %rax
addq $0x180, %rsp            # imm = 0x180
popq %rbp
retq
callq 0x29420
nopw %cs:(%rax,%rax)