// File: /workspace/github_c_makefile_star2_O0/bhk[P]tooltree/lua/../opensource/lua-5.2.3/src/lvm.c
// Function: luaV_execute
void luaV_execute (lua_State *L) {
  CallInfo *ci = L->ci;
  LClosure *cl;
  TValue *k;
  StkId base;
 newframe:  /* reentry point when frame changes (call/return) */
  lua_assert(ci == L->ci);
  cl = clLvalue(ci->func);
  k = cl->p->k;
  base = ci->u.l.base;
  /* main loop of interpreter */
  for (;;) {
    Instruction i = *(ci->u.l.savedpc++);
    StkId ra;
    if ((L->hookmask & (LUA_MASKLINE | LUA_MASKCOUNT)) &&
        (--L->hookcount == 0 || L->hookmask & LUA_MASKLINE)) {
      Protect(traceexec(L));
    }
    /* WARNING: several calls may realloc the stack and invalidate `ra' */
    ra = RA(i);
    lua_assert(base == ci->u.l.base);
    lua_assert(base <= L->top && L->top < L->stack + L->stacksize);
    vmdispatch (GET_OPCODE(i)) {
      vmcase(OP_MOVE,
        setobjs2s(L, ra, RB(i));
      )
      vmcase(OP_LOADK,
        TValue *rb = k + GETARG_Bx(i);
        setobj2s(L, ra, rb);
      )
      vmcase(OP_LOADKX,
        TValue *rb;
        lua_assert(GET_OPCODE(*ci->u.l.savedpc) == OP_EXTRAARG);
        rb = k + GETARG_Ax(*ci->u.l.savedpc++);
        setobj2s(L, ra, rb);
      )
      vmcase(OP_LOADBOOL,
        setbvalue(ra, GETARG_B(i));
        if (GETARG_C(i)) ci->u.l.savedpc++;  /* skip next instruction (if C) */
      )
      vmcase(OP_LOADNIL,
        int b = GETARG_B(i);
        do {
          setnilvalue(ra++);
        } while (b--);
      )
      vmcase(OP_GETUPVAL,
        int b = GETARG_B(i);
        setobj2s(L, ra, cl->upvals[b]->v);
      )
      vmcase(OP_GETTABUP,
        int b = GETARG_B(i);
        Protect(luaV_gettable(L, cl->upvals[b]->v, RKC(i), ra));
      )
      vmcase(OP_GETTABLE,
        Protect(luaV_gettable(L, RB(i), RKC(i), ra));
      )
      vmcase(OP_SETTABUP,
        int a = GETARG_A(i);
        Protect(luaV_settable(L, cl->upvals[a]->v, RKB(i), RKC(i)));
      )
      vmcase(OP_SETUPVAL,
        UpVal *uv = cl->upvals[GETARG_B(i)];
        setobj(L, uv->v, ra);
        luaC_barrier(L, uv, ra);
      )
      vmcase(OP_SETTABLE,
        Protect(luaV_settable(L, ra, RKB(i), RKC(i)));
      )
      vmcase(OP_NEWTABLE,
        int b = GETARG_B(i);
        int c = GETARG_C(i);
        Table *t = luaH_new(L);
        sethvalue(L, ra, t);
        if (b != 0 || c != 0)
          luaH_resize(L, t, luaO_fb2int(b), luaO_fb2int(c));
        checkGC(L, ra + 1);
      )
      vmcase(OP_SELF,
        StkId rb = RB(i);
        setobjs2s(L, ra+1, rb);
        Protect(luaV_gettable(L, rb, RKC(i), ra));
      )
      vmcase(OP_ADD,
        arith_op(luai_numadd, TM_ADD);
      )
      vmcase(OP_SUB,
        arith_op(luai_numsub, TM_SUB);
      )
      vmcase(OP_MUL,
        arith_op(luai_nummul, TM_MUL);
      )
      vmcase(OP_DIV,
        arith_op(luai_numdiv, TM_DIV);
      )
      vmcase(OP_MOD,
        arith_op(luai_nummod, TM_MOD);
      )
      vmcase(OP_POW,
        arith_op(luai_numpow, TM_POW);
      )
      vmcase(OP_UNM,
        TValue *rb = RB(i);
        if (ttisnumber(rb)) {
          lua_Number nb = nvalue(rb);
          setnvalue(ra, luai_numunm(L, nb));
        }
        else {
          Protect(luaV_arith(L, ra, rb, rb, TM_UNM));
        }
      )
      vmcase(OP_NOT,
        TValue *rb = RB(i);
        int res = l_isfalse(rb);  /* next assignment may change this value */
        setbvalue(ra, res);
      )
      vmcase(OP_LEN,
        Protect(luaV_objlen(L, ra, RB(i)));
      )
      vmcase(OP_CONCAT,
        int b = GETARG_B(i);
        int c = GETARG_C(i);
        StkId rb;
        L->top = base + c + 1;  /* mark the end of concat operands */
        Protect(luaV_concat(L, c - b + 1));
        ra = RA(i);  /* 'luav_concat' may invoke TMs and move the stack */
        rb = b + base;
        setobjs2s(L, ra, rb);
        checkGC(L, (ra >= rb ? ra + 1 : rb));
        L->top = ci->top;  /* restore top */
      )
      vmcase(OP_JMP,
        dojump(ci, i, 0);
      )
      vmcase(OP_EQ,
        TValue *rb = RKB(i);
        TValue *rc = RKC(i);
        Protect(
          if (cast_int(equalobj(L, rb, rc)) != GETARG_A(i))
            ci->u.l.savedpc++;
          else
            donextjump(ci);
        )
      )
      vmcase(OP_LT,
        Protect(
          if (luaV_lessthan(L, RKB(i), RKC(i)) != GETARG_A(i))
            ci->u.l.savedpc++;
          else
            donextjump(ci);
        )
      )
      vmcase(OP_LE,
        Protect(
          if (luaV_lessequal(L, RKB(i), RKC(i)) != GETARG_A(i))
            ci->u.l.savedpc++;
          else
            donextjump(ci);
        )
      )
      vmcase(OP_TEST,
        if (GETARG_C(i) ? l_isfalse(ra) : !l_isfalse(ra))
            ci->u.l.savedpc++;
          else
          donextjump(ci);
      )
      vmcase(OP_TESTSET,
        TValue *rb = RB(i);
        if (GETARG_C(i) ? l_isfalse(rb) : !l_isfalse(rb))
          ci->u.l.savedpc++;
        else {
          setobjs2s(L, ra, rb);
          donextjump(ci);
        }
      )
      vmcase(OP_CALL,
        int b = GETARG_B(i);
        int nresults = GETARG_C(i) - 1;
        if (b != 0) L->top = ra+b;  /* else previous instruction set top */
        if (luaD_precall(L, ra, nresults)) {  /* C function? */
          if (nresults >= 0) L->top = ci->top;  /* adjust results */
          base = ci->u.l.base;
        }
        else {  /* Lua function */
          ci = L->ci;
          ci->callstatus |= CIST_REENTRY;
          goto newframe;  /* restart luaV_execute over new Lua function */
        }
      )
      vmcase(OP_TAILCALL,
        int b = GETARG_B(i);
        if (b != 0) L->top = ra+b;  /* else previous instruction set top */
        lua_assert(GETARG_C(i) - 1 == LUA_MULTRET);
        if (luaD_precall(L, ra, LUA_MULTRET))  /* C function? */
          base = ci->u.l.base;
        else {
          /* tail call: put called frame (n) in place of caller one (o) */
          CallInfo *nci = L->ci;  /* called frame */
          CallInfo *oci = nci->previous;  /* caller frame */
          StkId nfunc = nci->func;  /* called function */
          StkId ofunc = oci->func;  /* caller function */
          /* last stack slot filled by 'precall' */
          StkId lim = nci->u.l.base + getproto(nfunc)->numparams;
          int aux;
          /* close all upvalues from previous call */
          if (cl->p->sizep > 0) luaF_close(L, oci->u.l.base);
          /* move new frame into old one */
          for (aux = 0; nfunc + aux < lim; aux++)
            setobjs2s(L, ofunc + aux, nfunc + aux);
          oci->u.l.base = ofunc + (nci->u.l.base - nfunc);  /* correct base */
          oci->top = L->top = ofunc + (L->top - nfunc);  /* correct top */
          oci->u.l.savedpc = nci->u.l.savedpc;
          oci->callstatus |= CIST_TAIL;  /* function was tail called */
          ci = L->ci = oci;  /* remove new frame */
          lua_assert(L->top == oci->u.l.base + getproto(ofunc)->maxstacksize);
          goto newframe;  /* restart luaV_execute over new Lua function */
        }
      )
      vmcasenb(OP_RETURN,
        int b = GETARG_B(i);
        if (b != 0) L->top = ra+b-1;
        if (cl->p->sizep > 0) luaF_close(L, base);
        b = luaD_poscall(L, ra);
        if (!(ci->callstatus & CIST_REENTRY))  /* 'ci' still the called one */
          return;  /* external invocation: return */
        else {  /* invocation via reentry: continue execution */
          ci = L->ci;
          if (b) L->top = ci->top;
          lua_assert(isLua(ci));
          lua_assert(GET_OPCODE(*((ci)->u.l.savedpc - 1)) == OP_CALL);
          goto newframe;  /* restart luaV_execute over new Lua function */
        }
      )
      vmcase(OP_FORLOOP,
        lua_Number step = nvalue(ra+2);
        lua_Number idx = luai_numadd(L, nvalue(ra), step); /* increment index */
        lua_Number limit = nvalue(ra+1);
        if (luai_numlt(L, 0, step) ? luai_numle(L, idx, limit)
                                   : luai_numle(L, limit, idx)) {
          ci->u.l.savedpc += GETARG_sBx(i);  /* jump back */
          setnvalue(ra, idx);  /* update internal index... */
          setnvalue(ra+3, idx);  /* ...and external index */
        }
      )
      vmcase(OP_FORPREP,
        const TValue *init = ra;
        const TValue *plimit = ra+1;
        const TValue *pstep = ra+2;
        if (!tonumber(init, ra))
          luaG_runerror(L, LUA_QL("for") " initial value must be a number");
        else if (!tonumber(plimit, ra+1))
          luaG_runerror(L, LUA_QL("for") " limit must be a number");
        else if (!tonumber(pstep, ra+2))
          luaG_runerror(L, LUA_QL("for") " step must be a number");
        setnvalue(ra, luai_numsub(L, nvalue(ra), nvalue(pstep)));
        ci->u.l.savedpc += GETARG_sBx(i);
      )
      vmcasenb(OP_TFORCALL,
        StkId cb = ra + 3;  /* call base */
        setobjs2s(L, cb+2, ra+2);
        setobjs2s(L, cb+1, ra+1);
        setobjs2s(L, cb, ra);
        L->top = cb + 3;  /* func. + 2 args (state and index) */
        Protect(luaD_call(L, cb, GETARG_C(i), 1));
        L->top = ci->top;
        i = *(ci->u.l.savedpc++);  /* go to next instruction */
        ra = RA(i);
        lua_assert(GET_OPCODE(i) == OP_TFORLOOP);
        goto l_tforloop;
      )
      vmcase(OP_TFORLOOP,
        l_tforloop:
        if (!ttisnil(ra + 1)) {  /* continue loop? */
          setobjs2s(L, ra, ra + 1);  /* save control variable */
           ci->u.l.savedpc += GETARG_sBx(i);  /* jump back */
        }
      )
      vmcase(OP_SETLIST,
        int n = GETARG_B(i);
        int c = GETARG_C(i);
        int last;
        Table *h;
        if (n == 0) n = cast_int(L->top - ra) - 1;
        if (c == 0) {
          lua_assert(GET_OPCODE(*ci->u.l.savedpc) == OP_EXTRAARG);
          c = GETARG_Ax(*ci->u.l.savedpc++);
        }
        luai_runtimecheck(L, ttistable(ra));
        h = hvalue(ra);
        last = ((c-1)*LFIELDS_PER_FLUSH) + n;
        if (last > h->sizearray)  /* needs more space? */
          luaH_resizearray(L, h, last);  /* pre-allocate it at once */
        for (; n > 0; n--) {
          TValue *val = ra+n;
          luaH_setint(L, h, last--, val);
          luaC_barrierback(L, obj2gco(h), val);
        }
        L->top = ci->top;  /* correct top (in case of previous open call) */
      )
      vmcase(OP_CLOSURE,
        Proto *p = cl->p->p[GETARG_Bx(i)];
        Closure *ncl = getcached(p, cl->upvals, base);  /* cached closure */
        if (ncl == NULL)  /* no match? */
          pushclosure(L, p, cl->upvals, base, ra);  /* create a new one */
        else
          setclLvalue(L, ra, ncl);  /* push cashed closure */
        checkGC(L, ra + 1);
      )
      vmcase(OP_VARARG,
        int b = GETARG_B(i) - 1;
        int j;
        int n = cast_int(base - ci->func) - cl->p->numparams - 1;
        if (b < 0) {  /* B == 0? */
          b = n;  /* get all var. arguments */
          Protect(luaD_checkstack(L, n));
          ra = RA(i);  /* previous call may change the stack */
          L->top = ra + n;
        }
        for (j = 0; j < b; j++) {
          if (j < n) {
            setobjs2s(L, ra + j, base - n + j);
          }
          else {
            setnilvalue(ra + j);
          }
        }
      )
      vmcase(OP_EXTRAARG,
        lua_assert(0);
      )
    }
  }
}

// Assembly:
subq $0x538, %rsp            # imm = 0x538
movq %rdi, 0x530(%rsp)
movq 0x530(%rsp), %rax
movq 0x20(%rax), %rax
movq %rax, 0x528(%rsp)
movq 0x528(%rsp), %rax
movq (%rax), %rax
movq (%rax), %rax
movq %rax, 0x520(%rsp)
movq 0x520(%rsp), %rax
movq 0x18(%rax), %rax
movq 0x10(%rax), %rax
movq %rax, 0x518(%rsp)
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
movq 0x528(%rsp), %rcx
movq 0x38(%rcx), %rax
movq %rax, %rdx
addq $0x4, %rdx
movq %rdx, 0x38(%rcx)
movl (%rax), %eax
movl %eax, 0x50c(%rsp)
movq 0x530(%rsp), %rax
movzbl 0x48(%rax), %eax
andl $0xc, %eax
cmpl $0x0, %eax
je 0x28d44
movq 0x530(%rsp), %rcx
movl 0x50(%rcx), %eax
addl $-0x1, %eax
movl %eax, 0x50(%rcx)
cmpl $0x0, %eax
je 0x28d23
movq 0x530(%rsp), %rax
movzbl 0x48(%rax), %eax
andl $0x4, %eax
cmpl $0x0, %eax
je 0x28d44
movq 0x530(%rsp), %rdi
callq 0x2bef0
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x2, %ecx
andl $0xff0, %ecx            # imm = 0xFF0
addq %rcx, %rax
movq %rax, 0x500(%rsp)
movl 0x50c(%rsp), %eax
andl $0x3f, %eax
movl %eax, %ecx
movq %rcx, 0x188(%rsp)
subl $0x27, %eax
ja 0x2bee4
movq 0x188(%rsp), %rax
leaq 0xe379(%rip), %rcx      # 0x3710c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x4f8(%rsp)
movq 0x500(%rsp), %rax
movq %rax, 0x4f0(%rsp)
movq 0x4f0(%rsp), %rax
movq 0x4f8(%rsp), %rcx
movq (%rcx), %rcx
movq %rcx, (%rax)
movq 0x4f8(%rsp), %rax
movl 0x8(%rax), %ecx
movq 0x4f0(%rsp), %rax
movl %ecx, 0x8(%rax)
jmp 0x2bee4
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x3ffff, %ecx          # imm = 0x3FFFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x4e8(%rsp)
movq 0x4e8(%rsp), %rax
movq %rax, 0x4e0(%rsp)
movq 0x500(%rsp), %rax
movq %rax, 0x4d8(%rsp)
movq 0x4d8(%rsp), %rax
movq 0x4e0(%rsp), %rcx
movq (%rcx), %rcx
movq %rcx, (%rax)
movq 0x4e0(%rsp), %rax
movl 0x8(%rax), %ecx
movq 0x4d8(%rsp), %rax
movl %ecx, 0x8(%rax)
jmp 0x2bee4
movq 0x518(%rsp), %rax
movq 0x528(%rsp), %rdx
movq 0x38(%rdx), %rcx
movq %rcx, %rsi
addq $0x4, %rsi
movq %rsi, 0x38(%rdx)
movl (%rcx), %ecx
shrl $0x6, %ecx
andl $0x3ffffff, %ecx        # imm = 0x3FFFFFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x4d0(%rsp)
movq 0x4d0(%rsp), %rax
movq %rax, 0x4c8(%rsp)
movq 0x500(%rsp), %rax
movq %rax, 0x4c0(%rsp)
movq 0x4c0(%rsp), %rax
movq 0x4c8(%rsp), %rcx
movq (%rcx), %rcx
movq %rcx, (%rax)
movq 0x4c8(%rsp), %rax
movl 0x8(%rax), %ecx
movq 0x4c0(%rsp), %rax
movl %ecx, 0x8(%rax)
jmp 0x2bee4
movq 0x500(%rsp), %rax
movq %rax, 0x4b8(%rsp)
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movq 0x4b8(%rsp), %rax
movl %ecx, (%rax)
movq 0x4b8(%rsp), %rax
movl $0x1, 0x8(%rax)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
cmpl $0x0, %eax
je 0x28f70
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rcx
addq $0x4, %rcx
movq %rcx, 0x38(%rax)
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
movl %eax, 0x4b4(%rsp)
movq 0x500(%rsp), %rax
movq %rax, %rcx
addq $0x10, %rcx
movq %rcx, 0x500(%rsp)
movl $0x0, 0x8(%rax)
movl 0x4b4(%rsp), %eax
movl %eax, %ecx
addl $-0x1, %ecx
movl %ecx, 0x4b4(%rsp)
cmpl $0x0, %eax
jne 0x28f8b
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
movl %eax, 0x4b0(%rsp)
movq 0x520(%rsp), %rax
movslq 0x4b0(%rsp), %rcx
movq 0x20(%rax,%rcx,8), %rax
movq 0x10(%rax), %rax
movq %rax, 0x4a8(%rsp)
movq 0x500(%rsp), %rax
movq %rax, 0x4a0(%rsp)
movq 0x4a0(%rsp), %rax
movq 0x4a8(%rsp), %rcx
movq (%rcx), %rcx
movq %rcx, (%rax)
movq 0x4a8(%rsp), %rax
movl 0x8(%rax), %ecx
movq 0x4a0(%rsp), %rax
movl %ecx, 0x8(%rax)
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
movl %eax, 0x49c(%rsp)
movq 0x530(%rsp), %rax
movq %rax, 0x178(%rsp)
movq 0x520(%rsp), %rax
movslq 0x49c(%rsp), %rcx
movq 0x20(%rax,%rcx,8), %rax
movq 0x10(%rax), %rax
movq %rax, 0x180(%rsp)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x290d0
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x170(%rsp)
jmp 0x290fa
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x170(%rsp)
movq 0x180(%rsp), %rsi
movq 0x178(%rsp), %rdi
movq 0x170(%rsp), %rdx
movq 0x500(%rsp), %rcx
callq 0x27470
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2bee4
movq 0x530(%rsp), %rax
movq %rax, 0x160(%rsp)
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x168(%rsp)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x291bd
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x158(%rsp)
jmp 0x291e7
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x158(%rsp)
movq 0x168(%rsp), %rsi
movq 0x160(%rsp), %rdi
movq 0x158(%rsp), %rdx
movq 0x500(%rsp), %rcx
callq 0x27470
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0x6, %eax
andl $0xff, %eax
movl %eax, 0x498(%rsp)
movq 0x530(%rsp), %rax
movq %rax, 0x148(%rsp)
movq 0x520(%rsp), %rax
movslq 0x498(%rsp), %rcx
movq 0x20(%rax,%rcx,8), %rax
movq 0x10(%rax), %rax
movq %rax, 0x150(%rsp)
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x292b7
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x140(%rsp)
jmp 0x292e1
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x140(%rsp)
movq 0x140(%rsp), %rax
movq %rax, 0x138(%rsp)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x2933c
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x130(%rsp)
jmp 0x29366
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x130(%rsp)
movq 0x138(%rsp), %rdx
movq 0x150(%rsp), %rsi
movq 0x148(%rsp), %rdi
movq 0x130(%rsp), %rcx
callq 0x27830
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2bee4
movq 0x520(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
movq 0x20(%rax,%rcx,8), %rax
movq %rax, 0x490(%rsp)
movq 0x500(%rsp), %rax
movq %rax, 0x488(%rsp)
movq 0x490(%rsp), %rax
movq 0x10(%rax), %rax
movq %rax, 0x480(%rsp)
movq 0x480(%rsp), %rax
movq 0x488(%rsp), %rcx
movq (%rcx), %rcx
movq %rcx, (%rax)
movq 0x488(%rsp), %rax
movl 0x8(%rax), %ecx
movq 0x480(%rsp), %rax
movl %ecx, 0x8(%rax)
movq 0x500(%rsp), %rax
movl 0x8(%rax), %eax
andl $0x40, %eax
cmpl $0x0, %eax
je 0x2947a
movq 0x500(%rsp), %rax
movq (%rax), %rax
movzbl 0x9(%rax), %eax
andl $0x3, %eax
cmpl $0x0, %eax
je 0x2947a
movq 0x490(%rsp), %rax
movzbl 0x9(%rax), %eax
andl $0x4, %eax
cmpl $0x0, %eax
je 0x2947a
movq 0x530(%rsp), %rdi
movq 0x490(%rsp), %rsi
movq 0x500(%rsp), %rax
movq (%rax), %rdx
callq 0x12aa0
jmp 0x2bee4
movq 0x530(%rsp), %rax
movq %rax, 0x120(%rsp)
movq 0x500(%rsp), %rax
movq %rax, 0x128(%rsp)
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x294ea
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x118(%rsp)
jmp 0x29514
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x118(%rsp)
movq 0x118(%rsp), %rax
movq %rax, 0x110(%rsp)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x2956f
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x108(%rsp)
jmp 0x29599
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x108(%rsp)
movq 0x110(%rsp), %rdx
movq 0x128(%rsp), %rsi
movq 0x120(%rsp), %rdi
movq 0x108(%rsp), %rcx
callq 0x27830
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
movl %eax, 0x47c(%rsp)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
movl %eax, 0x478(%rsp)
movq 0x530(%rsp), %rdi
callq 0x24970
movq %rax, 0x470(%rsp)
movq 0x500(%rsp), %rax
movq %rax, 0x468(%rsp)
movq 0x470(%rsp), %rcx
movq 0x468(%rsp), %rax
movq %rcx, (%rax)
movq 0x468(%rsp), %rax
movl $0x45, 0x8(%rax)
cmpl $0x0, 0x47c(%rsp)
jne 0x2965e
cmpl $0x0, 0x478(%rsp)
je 0x296bb
movq 0x530(%rsp), %rax
movq %rax, 0xf0(%rsp)
movq 0x470(%rsp), %rax
movq %rax, 0xf8(%rsp)
movl 0x47c(%rsp), %edi
callq 0x19640
movl %eax, 0x104(%rsp)
movl 0x478(%rsp), %edi
callq 0x19640
movq 0xf0(%rsp), %rdi
movq 0xf8(%rsp), %rsi
movl 0x104(%rsp), %edx
movl %eax, %ecx
callq 0x243b0
movq 0x530(%rsp), %rax
movq 0x18(%rax), %rax
cmpq $0x0, 0x18(%rax)
jle 0x2970b
movq 0x500(%rsp), %rcx
addq $0x10, %rcx
movq 0x530(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x530(%rsp), %rdi
callq 0x13f90
movq 0x528(%rsp), %rax
movq 0x8(%rax), %rcx
movq 0x530(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2bee4
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x460(%rsp)
movq 0x460(%rsp), %rax
movq %rax, 0x458(%rsp)
movq 0x500(%rsp), %rax
addq $0x10, %rax
movq %rax, 0x450(%rsp)
movq 0x450(%rsp), %rax
movq 0x458(%rsp), %rcx
movq (%rcx), %rcx
movq %rcx, (%rax)
movq 0x458(%rsp), %rax
movl 0x8(%rax), %ecx
movq 0x450(%rsp), %rax
movl %ecx, 0x8(%rax)
movq 0x530(%rsp), %rax
movq %rax, 0xe0(%rsp)
movq 0x460(%rsp), %rax
movq %rax, 0xe8(%rsp)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x29809
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0xd8(%rsp)
jmp 0x29833
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0xd8(%rsp)
movq 0xe8(%rsp), %rsi
movq 0xe0(%rsp), %rdi
movq 0xd8(%rsp), %rdx
movq 0x500(%rsp), %rcx
callq 0x27470
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x298bc
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0xd0(%rsp)
jmp 0x298e6
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0xd0(%rsp)
movq 0xd0(%rsp), %rax
movq %rax, 0x448(%rsp)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x29941
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0xc8(%rsp)
jmp 0x2996b
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0xc8(%rsp)
movq 0xc8(%rsp), %rax
movq %rax, 0x440(%rsp)
movq 0x448(%rsp), %rax
cmpl $0x3, 0x8(%rax)
jne 0x29a00
movq 0x440(%rsp), %rax
cmpl $0x3, 0x8(%rax)
jne 0x29a00
movq 0x448(%rsp), %rax
movsd (%rax), %xmm0
movsd %xmm0, 0x438(%rsp)
movq 0x440(%rsp), %rax
movsd (%rax), %xmm0
movsd %xmm0, 0x430(%rsp)
movq 0x500(%rsp), %rax
movq %rax, 0x428(%rsp)
movsd 0x438(%rsp), %xmm0
addsd 0x430(%rsp), %xmm0
movq 0x428(%rsp), %rax
movsd %xmm0, (%rax)
movq 0x428(%rsp), %rax
movl $0x3, 0x8(%rax)
jmp 0x29a3f
movq 0x530(%rsp), %rdi
movq 0x500(%rsp), %rsi
movq 0x448(%rsp), %rdx
movq 0x440(%rsp), %rcx
movl $0x6, %r8d
callq 0x28880
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x29a8f
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0xc0(%rsp)
jmp 0x29ab9
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0xc0(%rsp)
movq 0xc0(%rsp), %rax
movq %rax, 0x420(%rsp)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x29b14
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0xb8(%rsp)
jmp 0x29b3e
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0xb8(%rsp)
movq 0xb8(%rsp), %rax
movq %rax, 0x418(%rsp)
movq 0x420(%rsp), %rax
cmpl $0x3, 0x8(%rax)
jne 0x29bd3
movq 0x418(%rsp), %rax
cmpl $0x3, 0x8(%rax)
jne 0x29bd3
movq 0x420(%rsp), %rax
movsd (%rax), %xmm0
movsd %xmm0, 0x410(%rsp)
movq 0x418(%rsp), %rax
movsd (%rax), %xmm0
movsd %xmm0, 0x408(%rsp)
movq 0x500(%rsp), %rax
movq %rax, 0x400(%rsp)
movsd 0x410(%rsp), %xmm0
subsd 0x408(%rsp), %xmm0
movq 0x400(%rsp), %rax
movsd %xmm0, (%rax)
movq 0x400(%rsp), %rax
movl $0x3, 0x8(%rax)
jmp 0x29c12
movq 0x530(%rsp), %rdi
movq 0x500(%rsp), %rsi
movq 0x420(%rsp), %rdx
movq 0x418(%rsp), %rcx
movl $0x7, %r8d
callq 0x28880
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x29c62
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0xb0(%rsp)
jmp 0x29c8c
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0xb0(%rsp)
movq 0xb0(%rsp), %rax
movq %rax, 0x3f8(%rsp)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x29ce7
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0xa8(%rsp)
jmp 0x29d11
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0xa8(%rsp)
movq 0xa8(%rsp), %rax
movq %rax, 0x3f0(%rsp)
movq 0x3f8(%rsp), %rax
cmpl $0x3, 0x8(%rax)
jne 0x29da6
movq 0x3f0(%rsp), %rax
cmpl $0x3, 0x8(%rax)
jne 0x29da6
movq 0x3f8(%rsp), %rax
movsd (%rax), %xmm0
movsd %xmm0, 0x3e8(%rsp)
movq 0x3f0(%rsp), %rax
movsd (%rax), %xmm0
movsd %xmm0, 0x3e0(%rsp)
movq 0x500(%rsp), %rax
movq %rax, 0x3d8(%rsp)
movsd 0x3e8(%rsp), %xmm0
mulsd 0x3e0(%rsp), %xmm0
movq 0x3d8(%rsp), %rax
movsd %xmm0, (%rax)
movq 0x3d8(%rsp), %rax
movl $0x3, 0x8(%rax)
jmp 0x29de5
movq 0x530(%rsp), %rdi
movq 0x500(%rsp), %rsi
movq 0x3f8(%rsp), %rdx
movq 0x3f0(%rsp), %rcx
movl $0x8, %r8d
callq 0x28880
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x29e35
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0xa0(%rsp)
jmp 0x29e5f
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0xa0(%rsp)
movq 0xa0(%rsp), %rax
movq %rax, 0x3d0(%rsp)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x29eba
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x98(%rsp)
jmp 0x29ee4
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x98(%rsp)
movq 0x98(%rsp), %rax
movq %rax, 0x3c8(%rsp)
movq 0x3d0(%rsp), %rax
cmpl $0x3, 0x8(%rax)
jne 0x29f79
movq 0x3c8(%rsp), %rax
cmpl $0x3, 0x8(%rax)
jne 0x29f79
movq 0x3d0(%rsp), %rax
movsd (%rax), %xmm0
movsd %xmm0, 0x3c0(%rsp)
movq 0x3c8(%rsp), %rax
movsd (%rax), %xmm0
movsd %xmm0, 0x3b8(%rsp)
movq 0x500(%rsp), %rax
movq %rax, 0x3b0(%rsp)
movsd 0x3c0(%rsp), %xmm0
divsd 0x3b8(%rsp), %xmm0
movq 0x3b0(%rsp), %rax
movsd %xmm0, (%rax)
movq 0x3b0(%rsp), %rax
movl $0x3, 0x8(%rax)
jmp 0x29fb8
movq 0x530(%rsp), %rdi
movq 0x500(%rsp), %rsi
movq 0x3d0(%rsp), %rdx
movq 0x3c8(%rsp), %rcx
movl $0x9, %r8d
callq 0x28880
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x2a008
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x90(%rsp)
jmp 0x2a032
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x90(%rsp)
movq 0x90(%rsp), %rax
movq %rax, 0x3a8(%rsp)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x2a08d
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x88(%rsp)
jmp 0x2a0b7
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x88(%rsp)
movq 0x88(%rsp), %rax
movq %rax, 0x3a0(%rsp)
movq 0x3a8(%rsp), %rax
cmpl $0x3, 0x8(%rax)
jne 0x2a19c
movq 0x3a0(%rsp), %rax
cmpl $0x3, 0x8(%rax)
jne 0x2a19c
movq 0x3a8(%rsp), %rax
movsd (%rax), %xmm0
movsd %xmm0, 0x398(%rsp)
movq 0x3a0(%rsp), %rax
movsd (%rax), %xmm0
movsd %xmm0, 0x390(%rsp)
movq 0x500(%rsp), %rax
movq %rax, 0x388(%rsp)
movsd 0x398(%rsp), %xmm0
movsd %xmm0, 0x80(%rsp)
movsd 0x398(%rsp), %xmm0
divsd 0x390(%rsp), %xmm0
callq 0x74e0
movsd 0x80(%rsp), %xmm1
movsd 0x390(%rsp), %xmm2
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
movq 0x388(%rsp), %rax
movsd %xmm0, (%rax)
movq 0x388(%rsp), %rax
movl $0x3, 0x8(%rax)
jmp 0x2a1db
movq 0x530(%rsp), %rdi
movq 0x500(%rsp), %rsi
movq 0x3a8(%rsp), %rdx
movq 0x3a0(%rsp), %rcx
movl $0xa, %r8d
callq 0x28880
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x2a228
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x78(%rsp)
jmp 0x2a24f
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x78(%rsp)
movq 0x78(%rsp), %rax
movq %rax, 0x380(%rsp)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x2a2a4
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x70(%rsp)
jmp 0x2a2cb
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x70(%rsp)
movq 0x70(%rsp), %rax
movq %rax, 0x378(%rsp)
movq 0x380(%rsp), %rax
cmpl $0x3, 0x8(%rax)
jne 0x2a362
movq 0x378(%rsp), %rax
cmpl $0x3, 0x8(%rax)
jne 0x2a362
movq 0x380(%rsp), %rax
movsd (%rax), %xmm0
movsd %xmm0, 0x370(%rsp)
movq 0x378(%rsp), %rax
movsd (%rax), %xmm0
movsd %xmm0, 0x368(%rsp)
movq 0x500(%rsp), %rax
movq %rax, 0x360(%rsp)
movsd 0x370(%rsp), %xmm0
movsd 0x368(%rsp), %xmm1
callq 0x7140
movq 0x360(%rsp), %rax
movsd %xmm0, (%rax)
movq 0x360(%rsp), %rax
movl $0x3, 0x8(%rax)
jmp 0x2a3a1
movq 0x530(%rsp), %rdi
movq 0x500(%rsp), %rsi
movq 0x380(%rsp), %rdx
movq 0x378(%rsp), %rcx
movl $0xb, %r8d
callq 0x28880
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2bee4
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x358(%rsp)
movq 0x358(%rsp), %rax
cmpl $0x3, 0x8(%rax)
jne 0x2a440
movq 0x358(%rsp), %rax
movsd (%rax), %xmm0
movsd %xmm0, 0x350(%rsp)
movq 0x500(%rsp), %rax
movq %rax, 0x348(%rsp)
movsd 0x350(%rsp), %xmm0
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
movq 0x348(%rsp), %rax
movsd %xmm0, (%rax)
movq 0x348(%rsp), %rax
movl $0x3, 0x8(%rax)
jmp 0x2a47f
movq 0x530(%rsp), %rdi
movq 0x500(%rsp), %rsi
movq 0x358(%rsp), %rdx
movq 0x358(%rsp), %rcx
movl $0xc, %r8d
callq 0x28880
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2bee4
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x340(%rsp)
movq 0x340(%rsp), %rcx
movb $0x1, %al
cmpl $0x0, 0x8(%rcx)
movb %al, 0x6f(%rsp)
je 0x2a4f0
movq 0x340(%rsp), %rcx
xorl %eax, %eax
cmpl $0x1, 0x8(%rcx)
movb %al, 0x6e(%rsp)
jne 0x2a4e8
movq 0x340(%rsp), %rax
cmpl $0x0, (%rax)
sete %al
movb %al, 0x6e(%rsp)
movb 0x6e(%rsp), %al
movb %al, 0x6f(%rsp)
movb 0x6f(%rsp), %al
andb $0x1, %al
movzbl %al, %eax
movl %eax, 0x33c(%rsp)
movq 0x500(%rsp), %rax
movq %rax, 0x330(%rsp)
movl 0x33c(%rsp), %ecx
movq 0x330(%rsp), %rax
movl %ecx, (%rax)
movq 0x330(%rsp), %rax
movl $0x1, 0x8(%rax)
jmp 0x2bee4
movq 0x530(%rsp), %rdi
movq 0x500(%rsp), %rsi
movq 0x510(%rsp), %rdx
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
cltq
shlq $0x4, %rax
addq %rax, %rdx
callq 0x286d0
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
movl %eax, 0x32c(%rsp)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
movl %eax, 0x328(%rsp)
movq 0x510(%rsp), %rcx
movslq 0x328(%rsp), %rax
shlq $0x4, %rax
addq %rax, %rcx
addq $0x10, %rcx
movq 0x530(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x530(%rsp), %rdi
movl 0x328(%rsp), %esi
subl 0x32c(%rsp), %esi
addl $0x1, %esi
callq 0x28280
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x6, %ecx
andl $0xff, %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x500(%rsp)
movl 0x32c(%rsp), %ecx
movq 0x510(%rsp), %rax
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x320(%rsp)
movq 0x320(%rsp), %rax
movq %rax, 0x318(%rsp)
movq 0x500(%rsp), %rax
movq %rax, 0x310(%rsp)
movq 0x310(%rsp), %rax
movq 0x318(%rsp), %rcx
movq (%rcx), %rcx
movq %rcx, (%rax)
movq 0x318(%rsp), %rax
movl 0x8(%rax), %ecx
movq 0x310(%rsp), %rax
movl %ecx, 0x8(%rax)
movq 0x530(%rsp), %rax
movq 0x18(%rax), %rax
cmpq $0x0, 0x18(%rax)
jle 0x2a71a
movq 0x500(%rsp), %rax
cmpq 0x320(%rsp), %rax
jb 0x2a6d7
movq 0x500(%rsp), %rax
addq $0x10, %rax
movq %rax, 0x60(%rsp)
jmp 0x2a6e4
movq 0x320(%rsp), %rax
movq %rax, 0x60(%rsp)
movq 0x60(%rsp), %rcx
movq 0x530(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x530(%rsp), %rdi
callq 0x13f90
movq 0x528(%rsp), %rax
movq 0x8(%rax), %rcx
movq 0x530(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
movq 0x528(%rsp), %rax
movq 0x8(%rax), %rcx
movq 0x530(%rsp), %rax
movq %rcx, 0x10(%rax)
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0x6, %eax
andl $0xff, %eax
movl %eax, 0x30c(%rsp)
cmpl $0x0, 0x30c(%rsp)
jle 0x2a797
movq 0x530(%rsp), %rdi
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rsi
movslq 0x30c(%rsp), %rax
shlq $0x4, %rax
addq %rax, %rsi
addq $-0x10, %rsi
callq 0x12660
movl 0x50c(%rsp), %edx
shrl $0xe, %edx
andl $0x3ffff, %edx          # imm = 0x3FFFF
subl $0x1ffff, %edx          # imm = 0x1FFFF
addl $0x0, %edx
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rcx
movslq %edx, %rdx
shlq $0x2, %rdx
addq %rdx, %rcx
movq %rcx, 0x38(%rax)
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x2a817
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x58(%rsp)
jmp 0x2a83e
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x58(%rsp)
movq 0x58(%rsp), %rax
movq %rax, 0x300(%rsp)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x2a893
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x50(%rsp)
jmp 0x2a8ba
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x50(%rsp)
movq 0x50(%rsp), %rax
movq %rax, 0x2f8(%rsp)
movq 0x300(%rsp), %rax
movl 0x8(%rax), %ecx
movq 0x2f8(%rsp), %rdx
xorl %eax, %eax
cmpl 0x8(%rdx), %ecx
movb %al, 0x4f(%rsp)
jne 0x2a90c
movq 0x530(%rsp), %rdi
movq 0x300(%rsp), %rsi
movq 0x2f8(%rsp), %rdx
callq 0x27e50
cmpl $0x0, %eax
setne %al
movb %al, 0x4f(%rsp)
movb 0x4f(%rsp), %al
andb $0x1, %al
movzbl %al, %eax
movl 0x50c(%rsp), %ecx
shrl $0x6, %ecx
andl $0xff, %ecx
cmpl %ecx, %eax
je 0x2a942
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rcx
addq $0x4, %rcx
movq %rcx, 0x38(%rax)
jmp 0x2a9d6
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rax
movl (%rax), %eax
movl %eax, 0x50c(%rsp)
movl 0x50c(%rsp), %eax
shrl $0x6, %eax
andl $0xff, %eax
movl %eax, 0x2f4(%rsp)
cmpl $0x0, 0x2f4(%rsp)
jle 0x2a9a3
movq 0x530(%rsp), %rdi
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rsi
movslq 0x2f4(%rsp), %rax
shlq $0x4, %rax
addq %rax, %rsi
addq $-0x10, %rsi
callq 0x12660
movl 0x50c(%rsp), %edx
shrl $0xe, %edx
andl $0x3ffff, %edx          # imm = 0x3FFFF
subl $0x1ffff, %edx          # imm = 0x1FFFF
addl $0x1, %edx
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rcx
movslq %edx, %rdx
shlq $0x2, %rdx
addq %rdx, %rcx
movq %rcx, 0x38(%rax)
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2bee4
movq 0x530(%rsp), %rax
movq %rax, 0x40(%rsp)
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x2aa44
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x38(%rsp)
jmp 0x2aa6b
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x38(%rsp)
movq 0x38(%rsp), %rax
movq %rax, 0x30(%rsp)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x2aabd
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x28(%rsp)
jmp 0x2aae4
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x28(%rsp)
movq 0x30(%rsp), %rsi
movq 0x40(%rsp), %rdi
movq 0x28(%rsp), %rdx
callq 0x27a70
movl 0x50c(%rsp), %ecx
shrl $0x6, %ecx
andl $0xff, %ecx
cmpl %ecx, %eax
je 0x2ab25
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rcx
addq $0x4, %rcx
movq %rcx, 0x38(%rax)
jmp 0x2abb9
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rax
movl (%rax), %eax
movl %eax, 0x50c(%rsp)
movl 0x50c(%rsp), %eax
shrl $0x6, %eax
andl $0xff, %eax
movl %eax, 0x2f0(%rsp)
cmpl $0x0, 0x2f0(%rsp)
jle 0x2ab86
movq 0x530(%rsp), %rdi
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rsi
movslq 0x2f0(%rsp), %rax
shlq $0x4, %rax
addq %rax, %rsi
addq $-0x10, %rsi
callq 0x12660
movl 0x50c(%rsp), %edx
shrl $0xe, %edx
andl $0x3ffff, %edx          # imm = 0x3FFFF
subl $0x1ffff, %edx          # imm = 0x1FFFF
addl $0x1, %edx
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rcx
movslq %edx, %rdx
shlq $0x2, %rdx
addq %rdx, %rcx
movq %rcx, 0x38(%rax)
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2bee4
movq 0x530(%rsp), %rax
movq %rax, 0x20(%rsp)
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x2ac27
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x18(%rsp)
jmp 0x2ac4e
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x18(%rsp)
movq 0x18(%rsp), %rax
movq %rax, 0x10(%rsp)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x2aca0
movq 0x518(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
andl $0xfffffeff, %ecx       # imm = 0xFFFFFEFF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x8(%rsp)
jmp 0x2acc7
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x8(%rsp)
movq 0x10(%rsp), %rsi
movq 0x20(%rsp), %rdi
movq 0x8(%rsp), %rdx
callq 0x27d30
movl 0x50c(%rsp), %ecx
shrl $0x6, %ecx
andl $0xff, %ecx
cmpl %ecx, %eax
je 0x2ad08
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rcx
addq $0x4, %rcx
movq %rcx, 0x38(%rax)
jmp 0x2ad9c
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rax
movl (%rax), %eax
movl %eax, 0x50c(%rsp)
movl 0x50c(%rsp), %eax
shrl $0x6, %eax
andl $0xff, %eax
movl %eax, 0x2ec(%rsp)
cmpl $0x0, 0x2ec(%rsp)
jle 0x2ad69
movq 0x530(%rsp), %rdi
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rsi
movslq 0x2ec(%rsp), %rax
shlq $0x4, %rax
addq %rax, %rsi
addq $-0x10, %rsi
callq 0x12660
movl 0x50c(%rsp), %edx
shrl $0xe, %edx
andl $0x3ffff, %edx          # imm = 0x3FFFF
subl $0x1ffff, %edx          # imm = 0x1FFFF
addl $0x1, %edx
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rcx
movslq %edx, %rdx
shlq $0x2, %rdx
addq %rdx, %rcx
movq %rcx, 0x38(%rax)
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
cmpl $0x0, %eax
je 0x2adf4
movq 0x500(%rsp), %rax
cmpl $0x0, 0x8(%rax)
je 0x2ae1d
movq 0x500(%rsp), %rax
cmpl $0x1, 0x8(%rax)
jne 0x2ae36
movq 0x500(%rsp), %rax
cmpl $0x0, (%rax)
je 0x2ae1d
jmp 0x2ae36
movq 0x500(%rsp), %rax
cmpl $0x0, 0x8(%rax)
je 0x2ae36
movq 0x500(%rsp), %rax
cmpl $0x1, 0x8(%rax)
jne 0x2ae1d
movq 0x500(%rsp), %rax
cmpl $0x0, (%rax)
je 0x2ae36
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rcx
addq $0x4, %rcx
movq %rcx, 0x38(%rax)
jmp 0x2aeca
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rax
movl (%rax), %eax
movl %eax, 0x50c(%rsp)
movl 0x50c(%rsp), %eax
shrl $0x6, %eax
andl $0xff, %eax
movl %eax, 0x2e8(%rsp)
cmpl $0x0, 0x2e8(%rsp)
jle 0x2ae97
movq 0x530(%rsp), %rdi
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rsi
movslq 0x2e8(%rsp), %rax
shlq $0x4, %rax
addq %rax, %rsi
addq $-0x10, %rsi
callq 0x12660
movl 0x50c(%rsp), %edx
shrl $0xe, %edx
andl $0x3ffff, %edx          # imm = 0x3FFFF
subl $0x1ffff, %edx          # imm = 0x1FFFF
addl $0x1, %edx
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rcx
movslq %edx, %rdx
shlq $0x2, %rdx
addq %rdx, %rcx
movq %rcx, 0x38(%rax)
jmp 0x2bee4
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x17, %ecx
andl $0x1ff, %ecx            # imm = 0x1FF
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x2e0(%rsp)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
cmpl $0x0, %eax
je 0x2af38
movq 0x2e0(%rsp), %rax
cmpl $0x0, 0x8(%rax)
je 0x2af61
movq 0x2e0(%rsp), %rax
cmpl $0x1, 0x8(%rax)
jne 0x2af7a
movq 0x2e0(%rsp), %rax
cmpl $0x0, (%rax)
je 0x2af61
jmp 0x2af7a
movq 0x2e0(%rsp), %rax
cmpl $0x0, 0x8(%rax)
je 0x2af7a
movq 0x2e0(%rsp), %rax
cmpl $0x1, 0x8(%rax)
jne 0x2af61
movq 0x2e0(%rsp), %rax
cmpl $0x0, (%rax)
je 0x2af7a
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rcx
addq $0x4, %rcx
movq %rcx, 0x38(%rax)
jmp 0x2b05a
movq 0x2e0(%rsp), %rax
movq %rax, 0x2d8(%rsp)
movq 0x500(%rsp), %rax
movq %rax, 0x2d0(%rsp)
movq 0x2d0(%rsp), %rax
movq 0x2d8(%rsp), %rcx
movq (%rcx), %rcx
movq %rcx, (%rax)
movq 0x2d8(%rsp), %rax
movl 0x8(%rax), %ecx
movq 0x2d0(%rsp), %rax
movl %ecx, 0x8(%rax)
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rax
movl (%rax), %eax
movl %eax, 0x50c(%rsp)
movl 0x50c(%rsp), %eax
shrl $0x6, %eax
andl $0xff, %eax
movl %eax, 0x2cc(%rsp)
cmpl $0x0, 0x2cc(%rsp)
jle 0x2b027
movq 0x530(%rsp), %rdi
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rsi
movslq 0x2cc(%rsp), %rax
shlq $0x4, %rax
addq %rax, %rsi
addq $-0x10, %rsi
callq 0x12660
movl 0x50c(%rsp), %edx
shrl $0xe, %edx
andl $0x3ffff, %edx          # imm = 0x3FFFF
subl $0x1ffff, %edx          # imm = 0x1FFFF
addl $0x1, %edx
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rcx
movslq %edx, %rdx
shlq $0x2, %rdx
addq %rdx, %rcx
movq %rcx, 0x38(%rax)
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
movl %eax, 0x2c8(%rsp)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
subl $0x1, %eax
movl %eax, 0x2c4(%rsp)
cmpl $0x0, 0x2c8(%rsp)
je 0x2b0bb
movq 0x500(%rsp), %rcx
movslq 0x2c8(%rsp), %rax
shlq $0x4, %rax
addq %rax, %rcx
movq 0x530(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x530(%rsp), %rdi
movq 0x500(%rsp), %rsi
movl 0x2c4(%rsp), %edx
callq 0x105e0
cmpl $0x0, %eax
je 0x2b114
cmpl $0x0, 0x2c4(%rsp)
jl 0x2b0fe
movq 0x528(%rsp), %rax
movq 0x8(%rax), %rcx
movq 0x530(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2b13f
movq 0x530(%rsp), %rax
movq 0x20(%rax), %rax
movq %rax, 0x528(%rsp)
movq 0x528(%rsp), %rax
movzbl 0x22(%rax), %ecx
orl $0x4, %ecx
movb %cl, 0x22(%rax)
jmp 0x28c83
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
movl %eax, 0x2c0(%rsp)
cmpl $0x0, 0x2c0(%rsp)
je 0x2b187
movq 0x500(%rsp), %rcx
movslq 0x2c0(%rsp), %rax
shlq $0x4, %rax
addq %rax, %rcx
movq 0x530(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x530(%rsp), %rdi
movq 0x500(%rsp), %rsi
movl $0xffffffff, %edx       # imm = 0xFFFFFFFF
callq 0x105e0
cmpl $0x0, %eax
je 0x2b1bf
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2b3dc
movq 0x530(%rsp), %rax
movq 0x20(%rax), %rax
movq %rax, 0x2b8(%rsp)
movq 0x2b8(%rsp), %rax
movq 0x10(%rax), %rax
movq %rax, 0x2b0(%rsp)
movq 0x2b8(%rsp), %rax
movq (%rax), %rax
movq %rax, 0x2a8(%rsp)
movq 0x2b0(%rsp), %rax
movq (%rax), %rax
movq %rax, 0x2a0(%rsp)
movq 0x2b8(%rsp), %rax
movq 0x30(%rax), %rax
movq 0x2a8(%rsp), %rcx
movq (%rcx), %rcx
movq 0x18(%rcx), %rcx
movzbl 0x78(%rcx), %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x298(%rsp)
movq 0x520(%rsp), %rax
movq 0x18(%rax), %rax
cmpl $0x0, 0x60(%rax)
jle 0x2b269
movq 0x530(%rsp), %rdi
movq 0x2b0(%rsp), %rax
movq 0x30(%rax), %rsi
callq 0x12660
movl $0x0, 0x294(%rsp)
movq 0x2a8(%rsp), %rax
movslq 0x294(%rsp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
cmpq 0x298(%rsp), %rax
jae 0x2b319
movq 0x2a8(%rsp), %rax
movslq 0x294(%rsp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x288(%rsp)
movq 0x2a0(%rsp), %rax
movslq 0x294(%rsp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x280(%rsp)
movq 0x280(%rsp), %rax
movq 0x288(%rsp), %rcx
movq (%rcx), %rcx
movq %rcx, (%rax)
movq 0x288(%rsp), %rax
movl 0x8(%rax), %ecx
movq 0x280(%rsp), %rax
movl %ecx, 0x8(%rax)
movl 0x294(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x294(%rsp)
jmp 0x2b274
movq 0x2a0(%rsp), %rcx
movq 0x2b8(%rsp), %rax
movq 0x30(%rax), %rax
movq 0x2a8(%rsp), %rdx
subq %rdx, %rax
sarq $0x4, %rax
shlq $0x4, %rax
addq %rax, %rcx
movq 0x2b0(%rsp), %rax
movq %rcx, 0x30(%rax)
movq 0x2a0(%rsp), %rcx
movq 0x530(%rsp), %rax
movq 0x10(%rax), %rax
movq 0x2a8(%rsp), %rdx
subq %rdx, %rax
sarq $0x4, %rax
shlq $0x4, %rax
addq %rax, %rcx
movq 0x530(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x2b0(%rsp), %rax
movq %rcx, 0x8(%rax)
movq 0x2b8(%rsp), %rax
movq 0x38(%rax), %rcx
movq 0x2b0(%rsp), %rax
movq %rcx, 0x38(%rax)
movq 0x2b0(%rsp), %rax
movzbl 0x22(%rax), %ecx
orl $0x40, %ecx
movb %cl, 0x22(%rax)
movq 0x2b0(%rsp), %rax
movq 0x530(%rsp), %rcx
movq %rax, 0x20(%rcx)
movq %rax, 0x528(%rsp)
jmp 0x28c83
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
movl %eax, 0x27c(%rsp)
cmpl $0x0, 0x27c(%rsp)
je 0x2b428
movq 0x500(%rsp), %rcx
movslq 0x27c(%rsp), %rax
shlq $0x4, %rax
addq %rax, %rcx
addq $-0x10, %rcx
movq 0x530(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x520(%rsp), %rax
movq 0x18(%rax), %rax
cmpl $0x0, 0x60(%rax)
jle 0x2b44f
movq 0x530(%rsp), %rdi
movq 0x510(%rsp), %rsi
callq 0x12660
movq 0x530(%rsp), %rdi
movq 0x500(%rsp), %rsi
callq 0x109d0
movl %eax, 0x27c(%rsp)
movq 0x528(%rsp), %rax
movzbl 0x22(%rax), %eax
andl $0x4, %eax
cmpl $0x0, %eax
jne 0x2b487
addq $0x538, %rsp            # imm = 0x538
retq
movq 0x530(%rsp), %rax
movq 0x20(%rax), %rax
movq %rax, 0x528(%rsp)
cmpl $0x0, 0x27c(%rsp)
je 0x2b4bd
movq 0x528(%rsp), %rax
movq 0x8(%rax), %rcx
movq 0x530(%rsp), %rax
movq %rcx, 0x10(%rax)
jmp 0x28c83
movq 0x500(%rsp), %rax
movsd 0x20(%rax), %xmm0
movsd %xmm0, 0x270(%rsp)
movq 0x500(%rsp), %rax
movsd (%rax), %xmm0
addsd 0x270(%rsp), %xmm0
movsd %xmm0, 0x268(%rsp)
movq 0x500(%rsp), %rax
movsd 0x10(%rax), %xmm0
movsd %xmm0, 0x260(%rsp)
movsd 0x270(%rsp), %xmm0
xorps %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jbe 0x2b53b
movsd 0x268(%rsp), %xmm1
movsd 0x260(%rsp), %xmm0
ucomisd %xmm1, %xmm0
jae 0x2b557
jmp 0x2b5f3
movsd 0x260(%rsp), %xmm1
movsd 0x268(%rsp), %xmm0
ucomisd %xmm1, %xmm0
jb 0x2b5f3
movl 0x50c(%rsp), %edx
shrl $0xe, %edx
andl $0x3ffff, %edx          # imm = 0x3FFFF
subl $0x1ffff, %edx          # imm = 0x1FFFF
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rcx
movslq %edx, %rdx
shlq $0x2, %rdx
addq %rdx, %rcx
movq %rcx, 0x38(%rax)
movq 0x500(%rsp), %rax
movq %rax, 0x258(%rsp)
movsd 0x268(%rsp), %xmm0
movq 0x258(%rsp), %rax
movsd %xmm0, (%rax)
movq 0x258(%rsp), %rax
movl $0x3, 0x8(%rax)
movq 0x500(%rsp), %rax
addq $0x30, %rax
movq %rax, 0x250(%rsp)
movsd 0x268(%rsp), %xmm0
movq 0x250(%rsp), %rax
movsd %xmm0, (%rax)
movq 0x250(%rsp), %rax
movl $0x3, 0x8(%rax)
jmp 0x2bee4
movq 0x500(%rsp), %rax
movq %rax, 0x248(%rsp)
movq 0x500(%rsp), %rax
addq $0x10, %rax
movq %rax, 0x240(%rsp)
movq 0x500(%rsp), %rax
addq $0x20, %rax
movq %rax, 0x238(%rsp)
movq 0x248(%rsp), %rax
cmpl $0x3, 0x8(%rax)
je 0x2b677
movq 0x248(%rsp), %rdi
movq 0x500(%rsp), %rsi
callq 0x27320
movq %rax, 0x248(%rsp)
cmpq $0x0, %rax
jne 0x2b677
movq 0x530(%rsp), %rdi
leaq 0xbb83(%rip), %rsi      # 0x371f3
movb $0x0, %al
callq 0xf360
movq 0x240(%rsp), %rax
cmpl $0x3, 0x8(%rax)
je 0x2b6c2
movq 0x240(%rsp), %rdi
movq 0x500(%rsp), %rsi
addq $0x10, %rsi
callq 0x27320
movq %rax, 0x240(%rsp)
cmpq $0x0, %rax
jne 0x2b6c2
movq 0x530(%rsp), %rdi
leaq 0xbb5d(%rip), %rsi      # 0x37218
movb $0x0, %al
callq 0xf360
movq 0x238(%rsp), %rax
cmpl $0x3, 0x8(%rax)
je 0x2b70d
movq 0x238(%rsp), %rdi
movq 0x500(%rsp), %rsi
addq $0x20, %rsi
callq 0x27320
movq %rax, 0x238(%rsp)
cmpq $0x0, %rax
jne 0x2b70d
movq 0x530(%rsp), %rdi
leaq 0xbb2f(%rip), %rsi      # 0x37235
movb $0x0, %al
callq 0xf360
jmp 0x2b70f
jmp 0x2b711
movq 0x500(%rsp), %rax
movq %rax, 0x230(%rsp)
movq 0x500(%rsp), %rax
movsd (%rax), %xmm0
movq 0x238(%rsp), %rax
subsd (%rax), %xmm0
movq 0x230(%rsp), %rax
movsd %xmm0, (%rax)
movq 0x230(%rsp), %rax
movl $0x3, 0x8(%rax)
movl 0x50c(%rsp), %edx
shrl $0xe, %edx
andl $0x3ffff, %edx          # imm = 0x3FFFF
subl $0x1ffff, %edx          # imm = 0x1FFFF
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rcx
movslq %edx, %rdx
shlq $0x2, %rdx
addq %rdx, %rcx
movq %rcx, 0x38(%rax)
jmp 0x2bee4
movq 0x500(%rsp), %rax
addq $0x30, %rax
movq %rax, 0x228(%rsp)
movq 0x500(%rsp), %rax
addq $0x20, %rax
movq %rax, 0x220(%rsp)
movq 0x228(%rsp), %rax
addq $0x20, %rax
movq %rax, 0x218(%rsp)
movq 0x218(%rsp), %rax
movq 0x220(%rsp), %rcx
movq (%rcx), %rcx
movq %rcx, (%rax)
movq 0x220(%rsp), %rax
movl 0x8(%rax), %ecx
movq 0x218(%rsp), %rax
movl %ecx, 0x8(%rax)
movq 0x500(%rsp), %rax
addq $0x10, %rax
movq %rax, 0x210(%rsp)
movq 0x228(%rsp), %rax
addq $0x10, %rax
movq %rax, 0x208(%rsp)
movq 0x208(%rsp), %rax
movq 0x210(%rsp), %rcx
movq (%rcx), %rcx
movq %rcx, (%rax)
movq 0x210(%rsp), %rax
movl 0x8(%rax), %ecx
movq 0x208(%rsp), %rax
movl %ecx, 0x8(%rax)
movq 0x500(%rsp), %rax
movq %rax, 0x200(%rsp)
movq 0x228(%rsp), %rax
movq %rax, 0x1f8(%rsp)
movq 0x1f8(%rsp), %rax
movq 0x200(%rsp), %rcx
movq (%rcx), %rcx
movq %rcx, (%rax)
movq 0x200(%rsp), %rax
movl 0x8(%rax), %ecx
movq 0x1f8(%rsp), %rax
movl %ecx, 0x8(%rax)
movq 0x228(%rsp), %rcx
addq $0x30, %rcx
movq 0x530(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x530(%rsp), %rdi
movq 0x228(%rsp), %rsi
movl 0x50c(%rsp), %edx
shrl $0xe, %edx
andl $0x1ff, %edx            # imm = 0x1FF
movl $0x1, %ecx
callq 0x10e90
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
movq 0x528(%rsp), %rax
movq 0x8(%rax), %rcx
movq 0x530(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x528(%rsp), %rcx
movq 0x38(%rcx), %rax
movq %rax, %rdx
addq $0x4, %rdx
movq %rdx, 0x38(%rcx)
movl (%rax), %eax
movl %eax, 0x50c(%rsp)
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x6, %ecx
andl $0xff, %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x500(%rsp)
jmp 0x2b94d
jmp 0x2b94d
movq 0x500(%rsp), %rax
cmpl $0x0, 0x18(%rax)
je 0x2b9df
movq 0x500(%rsp), %rax
addq $0x10, %rax
movq %rax, 0x1f0(%rsp)
movq 0x500(%rsp), %rax
movq %rax, 0x1e8(%rsp)
movq 0x1e8(%rsp), %rax
movq 0x1f0(%rsp), %rcx
movq (%rcx), %rcx
movq %rcx, (%rax)
movq 0x1f0(%rsp), %rax
movl 0x8(%rax), %ecx
movq 0x1e8(%rsp), %rax
movl %ecx, 0x8(%rax)
movl 0x50c(%rsp), %edx
shrl $0xe, %edx
andl $0x3ffff, %edx          # imm = 0x3FFFF
subl $0x1ffff, %edx          # imm = 0x1FFFF
movq 0x528(%rsp), %rax
movq 0x38(%rax), %rcx
movslq %edx, %rdx
shlq $0x2, %rdx
addq %rdx, %rcx
movq %rcx, 0x38(%rax)
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
movl %eax, 0x1e4(%rsp)
movl 0x50c(%rsp), %eax
shrl $0xe, %eax
andl $0x1ff, %eax            # imm = 0x1FF
movl %eax, 0x1e0(%rsp)
cmpl $0x0, 0x1e4(%rsp)
jne 0x2ba3f
movq 0x530(%rsp), %rax
movq 0x10(%rax), %rax
movq 0x500(%rsp), %rcx
subq %rcx, %rax
sarq $0x4, %rax
subl $0x1, %eax
movl %eax, 0x1e4(%rsp)
cmpl $0x0, 0x1e0(%rsp)
jne 0x2ba71
movq 0x528(%rsp), %rcx
movq 0x38(%rcx), %rax
movq %rax, %rdx
addq $0x4, %rdx
movq %rdx, 0x38(%rcx)
movl (%rax), %eax
shrl $0x6, %eax
andl $0x3ffffff, %eax        # imm = 0x3FFFFFF
movl %eax, 0x1e0(%rsp)
movq 0x500(%rsp), %rax
movq (%rax), %rax
movq %rax, 0x1d0(%rsp)
movl 0x1e0(%rsp), %eax
subl $0x1, %eax
imull $0x32, %eax, %eax
addl 0x1e4(%rsp), %eax
movl %eax, 0x1dc(%rsp)
movl 0x1dc(%rsp), %eax
movq 0x1d0(%rsp), %rcx
cmpl 0x38(%rcx), %eax
jle 0x2bacf
movq 0x530(%rsp), %rdi
movq 0x1d0(%rsp), %rsi
movl 0x1dc(%rsp), %edx
callq 0x24900
jmp 0x2bad1
cmpl $0x0, 0x1e4(%rsp)
jle 0x2bb99
movq 0x500(%rsp), %rax
movslq 0x1e4(%rsp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x1c8(%rsp)
movq 0x530(%rsp), %rdi
movq 0x1d0(%rsp), %rsi
movl 0x1dc(%rsp), %edx
movl %edx, %eax
addl $-0x1, %eax
movl %eax, 0x1dc(%rsp)
movq 0x1c8(%rsp), %rcx
callq 0x247d0
movq 0x1c8(%rsp), %rax
movl 0x8(%rax), %eax
andl $0x40, %eax
cmpl $0x0, %eax
je 0x2bb81
movq 0x1c8(%rsp), %rax
movq (%rax), %rax
movzbl 0x9(%rax), %eax
andl $0x3, %eax
cmpl $0x0, %eax
je 0x2bb81
movq 0x1d0(%rsp), %rax
movzbl 0x9(%rax), %eax
andl $0x4, %eax
cmpl $0x0, %eax
je 0x2bb81
movq 0x530(%rsp), %rdi
movq 0x1d0(%rsp), %rsi
callq 0x12d70
jmp 0x2bb83
movl 0x1e4(%rsp), %eax
addl $-0x1, %eax
movl %eax, 0x1e4(%rsp)
jmp 0x2bad1
movq 0x528(%rsp), %rax
movq 0x8(%rax), %rcx
movq 0x530(%rsp), %rax
movq %rcx, 0x10(%rax)
jmp 0x2bee4
movq 0x520(%rsp), %rax
movq 0x18(%rax), %rax
movq 0x20(%rax), %rax
movl 0x50c(%rsp), %ecx
shrl $0xe, %ecx
andl $0x3ffff, %ecx          # imm = 0x3FFFF
movslq %ecx, %rcx
movq (%rax,%rcx,8), %rax
movq %rax, 0x1c0(%rsp)
movq 0x1c0(%rsp), %rdi
movq 0x520(%rsp), %rsi
addq $0x20, %rsi
movq 0x510(%rsp), %rdx
callq 0x2c120
movq %rax, 0x1b8(%rsp)
cmpq $0x0, 0x1b8(%rsp)
jne 0x2bc4c
movq 0x530(%rsp), %rdi
movq 0x1c0(%rsp), %rsi
movq 0x520(%rsp), %rdx
addq $0x20, %rdx
movq 0x510(%rsp), %rcx
movq 0x500(%rsp), %r8
callq 0x2c240
jmp 0x2bc7e
movq 0x500(%rsp), %rax
movq %rax, 0x1b0(%rsp)
movq 0x1b8(%rsp), %rcx
movq 0x1b0(%rsp), %rax
movq %rcx, (%rax)
movq 0x1b0(%rsp), %rax
movl $0x46, 0x8(%rax)
movq 0x530(%rsp), %rax
movq 0x18(%rax), %rax
cmpq $0x0, 0x18(%rax)
jle 0x2bcce
movq 0x500(%rsp), %rcx
addq $0x10, %rcx
movq 0x530(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x530(%rsp), %rdi
callq 0x13f90
movq 0x528(%rsp), %rax
movq 0x8(%rax), %rcx
movq 0x530(%rsp), %rax
movq %rcx, 0x10(%rax)
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
jmp 0x2bee4
movl 0x50c(%rsp), %eax
shrl $0x17, %eax
andl $0x1ff, %eax            # imm = 0x1FF
subl $0x1, %eax
movl %eax, 0x1ac(%rsp)
movq 0x510(%rsp), %rax
movq 0x528(%rsp), %rcx
movq (%rcx), %rcx
subq %rcx, %rax
sarq $0x4, %rax
movq 0x520(%rsp), %rcx
movq 0x18(%rcx), %rcx
movzbl 0x78(%rcx), %ecx
subl %ecx, %eax
subl $0x1, %eax
movl %eax, 0x1a4(%rsp)
cmpl $0x0, 0x1ac(%rsp)
jge 0x2bdf7
movl 0x1a4(%rsp), %eax
movl %eax, 0x1ac(%rsp)
movq 0x530(%rsp), %rax
movq 0x30(%rax), %rax
movq 0x530(%rsp), %rcx
movq 0x10(%rcx), %rcx
subq %rcx, %rax
sarq $0x4, %rax
movslq 0x1a4(%rsp), %rcx
cmpq %rcx, %rax
jg 0x2bd94
movq 0x530(%rsp), %rdi
movl 0x1a4(%rsp), %esi
callq 0x10250
jmp 0x2bd96
jmp 0x2bd96
movq 0x528(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x510(%rsp)
movq 0x510(%rsp), %rax
movl 0x50c(%rsp), %ecx
shrl $0x6, %ecx
andl $0xff, %ecx
movslq %ecx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x500(%rsp)
movq 0x500(%rsp), %rcx
movslq 0x1a4(%rsp), %rax
shlq $0x4, %rax
addq %rax, %rcx
movq 0x530(%rsp), %rax
movq %rcx, 0x10(%rax)
movl $0x0, 0x1a8(%rsp)
movl 0x1a8(%rsp), %eax
cmpl 0x1ac(%rsp), %eax
jge 0x2bee0
movl 0x1a8(%rsp), %eax
cmpl 0x1a4(%rsp), %eax
jge 0x2beaa
movq 0x510(%rsp), %rax
movslq 0x1a4(%rsp), %rdx
xorl %ecx, %ecx
subq %rdx, %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movslq 0x1a8(%rsp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x198(%rsp)
movq 0x500(%rsp), %rax
movslq 0x1a8(%rsp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, 0x190(%rsp)
movq 0x190(%rsp), %rax
movq 0x198(%rsp), %rcx
movq (%rcx), %rcx
movq %rcx, (%rax)
movq 0x198(%rsp), %rax
movl 0x8(%rax), %ecx
movq 0x190(%rsp), %rax
movl %ecx, 0x8(%rax)
jmp 0x2bec8
movq 0x500(%rsp), %rax
movslq 0x1a8(%rsp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movl $0x0, 0x8(%rax)
jmp 0x2beca
movl 0x1a8(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x1a8(%rsp)
jmp 0x2be02
jmp 0x2bee4
jmp 0x2bee4
jmp 0x28cc5
nopl (%rax)