
/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

mp_limb_t __gmpn_mul(mp_ptr prodp,mp_srcptr up,mp_size_t un,mp_srcptr vp,mp_size_t vn)

{
  uint *puVar1;
  int iVar2;
  int iVar3;
  code *pcVar4;
  int iVar5;
  mp_ptr pmVar6;
  mp_srcptr pmVar7;
  uint uVar8;
  uint uVar9;
  void *pvVar10;
  mp_srcptr pmVar11;
  mp_limb_t mVar12;
  uint *puVar13;
  uint *puVar14;
  undefined1 *puVar15;
  undefined1 *puVar16;
  int in_GS_OFFSET;
  mp_size_t amStackY_8010 [8133];
  undefined1 auStack_dc [8];
  int local_d4;
  mp_limb_t local_d0;
  uint local_cc;
  uint *local_c8;
  mp_ptr local_c4;
  void *local_c0;
  uint local_bc;
  uint *local_b8;
  mp_srcptr local_b4;
  mp_srcptr local_b0;
  mp_srcptr local_ac;
  mp_srcptr local_a8;
  uint *local_a4;
  mp_srcptr local_a0;
  tmp_reentrant_t *__tmp_marker;
  mp_limb_t tp [29];
  
  puVar15 = auStack_dc;
  puVar16 = auStack_dc;
  local_a4 = vp;
  iVar3 = *(int *)(in_GS_OFFSET + 0x14);
  if (un == vn) {
    local_a0 = (mp_srcptr)(un * 2);
    if (up == vp) {
      __gmpn_sqr(prodp,up,un);
      puVar16 = auStack_dc;
    }
    else {
      __gmpn_mul_n(prodp,up,vp,un);
      puVar16 = auStack_dc;
    }
    goto LAB_000471aa;
  }
  if (*(int *)PTR___gmpn_cpuvec_initialized_0009dd58 == 0) {
    local_a8 = up;
    local_ac = (mp_srcptr)PTR___gmpn_cpuvec_initialized_0009dd58;
    __gmpn_cpuvec_init();
    local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;
    up = local_a8;
    if (*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94) <= vn) {
      if (*local_ac == 0) {
        __gmpn_cpuvec_init();
        up = local_a8;
      }
      goto LAB_000470c0;
    }
  }
  else {
    local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;
    if (*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94) <= vn) {
LAB_000470c0:
      if (vn < (int)local_a0[0x26]) {
        local_a8 = (mp_srcptr)(vn * 8);
        local_c4 = (mp_ptr)(vn * 4);
        local_d0 = vn * 5;
        iVar2 = -(((vn * 9) / 2) * 4 + 0x11bU & 0xfffffff0);
        local_c0 = (void *)((int)&local_d0 + iVar2);
        local_b8 = (uint *)(vn * 2);
        local_c8 = (uint *)(vn * 3);
        if (un < (int)(vn * 3)) {
          local_a0 = (mp_srcptr)(un + vn);
          if (un * 4 < vn * 5) {
            *(void **)(&stack0xffffff18 + iVar2) = local_c0;
            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;
            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;
            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;
            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;
            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;
            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47aaa;
            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),
                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),
                              *(mp_size_t *)(&stack0xffffff0c + iVar2),
                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),
                              *(mp_size_t *)(&stack0xffffff14 + iVar2),
                              *(mp_ptr *)(&stack0xffffff18 + iVar2));
            puVar16 = auStack_dc + iVar2;
          }
          else if (un * 4 < vn * 7) {
            *(void **)(&stack0xffffff18 + iVar2) = local_c0;
            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;
            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;
            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;
            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;
            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;
            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a;
            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),
                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),
                              *(mp_size_t *)(&stack0xffffff0c + iVar2),
                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),
                              *(mp_size_t *)(&stack0xffffff14 + iVar2),
                              *(mp_ptr *)(&stack0xffffff18 + iVar2));
            puVar16 = auStack_dc + iVar2;
          }
          else {
            *(void **)(&stack0xffffff18 + iVar2) = local_c0;
            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;
            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;
            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;
            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;
            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;
            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;
            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),
                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),
                              *(mp_size_t *)(&stack0xffffff0c + iVar2),
                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),
                              *(mp_size_t *)(&stack0xffffff14 + iVar2),
                              *(mp_ptr *)(&stack0xffffff18 + iVar2));
            puVar16 = auStack_dc + iVar2;
          }
        }
        else {
          local_b4 = up;
          iVar5 = -(vn * 0x10 + 0x10);
          *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;
          *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;
          *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;
          *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = local_b8;
          *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = up;
          *(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = prodp;
          local_b0 = (mp_srcptr)((int)&local_d0 + iVar5 + iVar2);
          *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x4783a;
          __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),
                            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),
                            *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),
                            *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),
                            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),
                            *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));
          puVar13 = local_b8;
          prodp = (mp_ptr)((int)prodp + (int)local_a8);
          local_ac = (mp_srcptr)(un - (int)local_b8);
          local_b4 = (mp_srcptr)((int)local_b4 + (int)local_a8);
          local_cc = (int)local_b0 + (int)local_c4;
          if ((int)local_c8 <= (int)(un - (int)local_b8)) {
            do {
              *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;
              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;
              *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;
              *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;
              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;
              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;
              *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;
              __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),
                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),
                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),
                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),
                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),
                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));
              pmVar7 = local_a0;
              pmVar11 = local_a8;
              *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;
              local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);
              *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;
              local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);
              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;
              *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;
              pcVar4 = (code *)*pmVar7;
              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;
              local_bc = (*pcVar4)();
              pmVar11 = local_a0;
              puVar14 = (uint *)((int)prodp + (int)local_c4);
              *(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;
              local_b8 = puVar14;
              *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;
              *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;
              pcVar4 = (code *)pmVar11[10];
              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;
              (*pcVar4)();
              uVar9 = *local_b8;
              *local_b8 = *local_b8 + local_bc;
              puVar14 = local_b8;
              if (CARRY4(uVar9,local_bc)) {
                do {
                  puVar1 = puVar14 + 1;
                  uVar9 = *puVar1;
                  *puVar1 = *puVar1 + 1;
                  puVar14 = puVar14 + 1;
                } while (0xfffffffe < uVar9);
              }
              prodp = (mp_ptr)((int)prodp + (int)local_a8);
            } while ((int)local_c8 <= (int)local_ac);
          }
          pmVar11 = local_ac;
          if ((int)local_ac * 4 < (int)local_d0) {
            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;
            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;
            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;
            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = pmVar11;
            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;
            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;
            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47cd2;
            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),
                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),
                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),
                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),
                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),
                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));
          }
          else if ((int)local_ac * 4 < vn * 7) {
            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;
            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;
            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;
            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;
            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;
            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;
            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;
            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),
                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),
                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),
                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),
                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),
                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));
          }
          else {
            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;
            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;
            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;
            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;
            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;
            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;
            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;
            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),
                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),
                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),
                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),
                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),
                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));
          }
          pmVar11 = local_a0;
          *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;
          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;
          *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;
          *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;
          pcVar4 = (code *)*pmVar11;
          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x4799b;
          local_a4 = (uint *)(*pcVar4)();
          pmVar11 = local_a0;
          puVar13 = (uint *)((int)local_c4 + (int)prodp);
          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_ac;
          *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;
          *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar13;
          pcVar4 = (code *)pmVar11[10];
          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x479c2;
          (*pcVar4)();
          uVar9 = *puVar13;
          *puVar13 = *puVar13 + (int)local_a4;
          if (CARRY4(uVar9,(uint)local_a4)) {
            do {
              puVar14 = puVar13 + 1;
              uVar9 = *puVar14;
              *puVar14 = *puVar14 + 1;
              puVar13 = puVar13 + 1;
            } while (0xfffffffe < uVar9);
          }
          local_a0 = (mp_srcptr)(vn + (int)local_ac);
          puVar16 = auStack_dc + iVar5 + iVar2;
        }
        goto LAB_000471aa;
      }
      local_ac = (mp_srcptr)(un + vn);
      if ((3999 < (int)local_ac) && (local_a8 = (mp_srcptr)(vn * 3), 1999 < (int)local_a8)) {
        uVar9 = vn * 8;
        if (uVar9 - un == 0 || (int)uVar9 < un) {
          __tmp_marker = (tmp_reentrant_t *)0x0;
          local_bc = uVar9;
          local_b0 = up;
          local_ac = (mp_srcptr)__gmp_tmp_reentrant_alloc(&__tmp_marker,(vn * 9 >> 1) << 2);
          amStackY_8010[0x1fc4] = 0x4725a;
          __gmpn_nussbaumer_mul(prodp,local_b0,(mp_size_t)local_a8,local_a4,vn);
          local_c0 = (void *)(vn * 4);
          local_c8 = (uint *)(vn * -3);
          puVar13 = (uint *)((int)local_c8 + un);
          local_b4 = (mp_srcptr)((int)local_a8 * 4);
          prodp = prodp + (int)local_a8;
          local_b0 = local_b0 + (int)local_a8;
          local_cc = local_bc - vn;
          if ((int)puVar13 * 2 < (int)local_cc) {
            local_c4 = local_ac + vn;
          }
          else {
            local_c4 = local_ac + vn;
            local_b8 = puVar13;
            do {
              amStackY_8010[0x1fc4] = 0x47303;
              __gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn);
              puVar13 = (uint *)((int)puVar13 + (int)local_c8);
              local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4);
              local_bc = (*(code *)*local_a0)();
              local_b8 = (uint *)((int)prodp + (int)local_c0);
              (*(code *)local_a0[10])();
              uVar9 = *local_b8;
              *local_b8 = *local_b8 + local_bc;
              puVar14 = local_b8;
              if (CARRY4(uVar9,local_bc)) {
                do {
                  puVar1 = puVar14 + 1;
                  uVar9 = *puVar1;
                  *puVar1 = *puVar1 + 1;
                  puVar14 = puVar14 + 1;
                } while (0xfffffffe < uVar9);
              }
              prodp = (mp_ptr)((int)prodp + (int)local_b4);
            } while (local_cc == (int)puVar13 * 2 ||
                     SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0)
            ;
          }
          local_b8 = puVar13;
          if ((int)local_b8 < vn) {
            amStackY_8010[0x1fc4] = 0x473bd;
            __gmpn_mul(local_ac,local_a4,vn,local_b0,(mp_size_t)local_b8);
          }
          else {
            amStackY_8010[0x1fc4] = 0x47d73;
            __gmpn_mul(local_ac,local_b0,(mp_size_t)local_b8,local_a4,vn);
          }
          local_a8 = (mp_srcptr)(*(code *)*local_a0)();
          local_a4 = (uint *)((int)local_c0 + (int)prodp);
          (*(code *)local_a0[10])();
          uVar9 = *local_a4;
          *local_a4 = *local_a4 + (int)local_a8;
          puVar13 = local_a4;
          if (CARRY4(uVar9,(uint)local_a8)) {
            do {
              puVar14 = puVar13 + 1;
              uVar9 = *puVar14;
              *puVar14 = *puVar14 + 1;
              puVar13 = puVar13 + 1;
            } while (0xfffffffe < uVar9);
          }
          if (__tmp_marker != (tmp_reentrant_t *)0x0) {
            __gmp_tmp_reentrant_free(__tmp_marker);
          }
          local_a0 = (mp_srcptr)(vn + (int)local_b8);
          puVar16 = auStack_dc;
        }
        else {
          amStackY_8010[0x1fc4] = 0x47c6c;
          __gmpn_nussbaumer_mul(prodp,up,un,local_a4,vn);
          local_a0 = local_ac;
        }
        goto LAB_000471aa;
      }
      if (299 < vn) {
        local_a8 = (mp_srcptr)(un * 3 + 0xc);
        if (SBORROW4((int)local_a8,vn * 4) != (int)(local_a8 + -vn) < 0) {
          __tmp_marker = (tmp_reentrant_t *)0x0;
          local_a0 = local_ac;
          if (vn < 0x15e) {
            iVar2 = -(un * 0xc + 0x9bU & 0xfffffff0);
            puVar16 = auStack_dc + iVar2;
            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;
            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;
            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;
            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;
            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;
            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;
            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47da3;
            __gmpn_toom44_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),
                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),
                              *(mp_size_t *)(&stack0xffffff0c + iVar2),
                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),
                              *(mp_size_t *)(&stack0xffffff14 + iVar2),
                              *(mp_ptr *)(&stack0xffffff18 + iVar2));
          }
          else if (vn < 0x1c2) {
            iVar2 = -((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610);
            puVar16 = auStack_dc + iVar2;
            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;
            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;
            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;
            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;
            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;
            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;
            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47e63;
            __gmpn_toom6h_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),
                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),
                              *(mp_size_t *)(&stack0xffffff0c + iVar2),
                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),
                              *(mp_size_t *)(&stack0xffffff14 + iVar2),
                              *(mp_ptr *)(&stack0xffffff18 + iVar2));
          }
          else {
            iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4;
            uVar9 = iVar2 + 0x6dc;
            if (uVar9 < 0x7f01) {
              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);
              puVar15 = auStack_dc + iVar2;
              pvVar10 = (void *)((int)&local_d0 + iVar2);
            }
            else {
              local_a8 = up;
              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);
              up = local_a8;
            }
            *(void **)(puVar15 + -0xc) = pvVar10;
            *(mp_size_t *)(puVar15 + -0x10) = vn;
            *(uint **)(puVar15 + -0x14) = local_a4;
            *(mp_size_t *)(puVar15 + -0x18) = un;
            *(mp_srcptr *)(puVar15 + -0x1c) = up;
            *(mp_ptr *)(puVar15 + -0x20) = prodp;
            *(undefined4 *)(puVar15 + -0x24) = 0x47511;
            __gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),
                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),
                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc));
            puVar16 = puVar15;
          }
          if (__tmp_marker != (tmp_reentrant_t *)0x0) {
            *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;
            *(undefined4 *)(puVar16 + -0x14) = 0x4752b;
            __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));
          }
          goto LAB_000471aa;
        }
      }
      __tmp_marker = (tmp_reentrant_t *)0x0;
      uVar9 = (vn + 8) * 0x10;
      if (uVar9 < 0x7f01) {
        local_b8 = (uint *)((int)&local_d0 + -(uVar9 + 0x10));
        puVar16 = auStack_dc + -(uVar9 + 0x10);
      }
      else {
        local_a8 = up;
        local_b8 = (uint *)__gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);
        up = local_a8;
        puVar16 = auStack_dc;
      }
      local_bc = vn * 5;
      local_a8 = (mp_srcptr)(un * 2);
      local_b0 = (mp_srcptr)(vn * 7);
      if (SBORROW4((int)local_a8,vn * 5) == (int)local_a8 + vn * -5 < 0) {
        uVar9 = ((int)local_b0 >> 1) * 4;
        if (uVar9 < 0x7f01) {
          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);
          local_a8 = (mp_srcptr)((uint)(puVar16 + iVar2 + 0xf) & 0xfffffff0);
          puVar16 = puVar16 + iVar2;
        }
        else {
          local_ac = up;
          *(uint *)(puVar16 + -0xc) = uVar9;
          *(tmp_reentrant_t ***)(puVar16 + -0x10) = &__tmp_marker;
          *(undefined4 *)(puVar16 + -0x14) = 0x47eac;
          local_a8 = (mp_srcptr)
                     __gmp_tmp_reentrant_alloc
                               (*(tmp_reentrant_t ***)(puVar16 + -0x10),*(size_t *)(puVar16 + -0xc))
          ;
          up = local_ac;
        }
        local_c8 = (uint *)(vn * 2);
        if (vn < 0x6e) {
          *(uint **)(puVar16 + -0xc) = local_b8;
          *(mp_size_t *)(puVar16 + -0x10) = vn;
          *(uint **)(puVar16 + -0x14) = local_a4;
          *(uint **)(puVar16 + -0x18) = (uint *)(vn * 2);
          *(mp_srcptr *)(puVar16 + -0x1c) = up;
          *(mp_ptr *)(puVar16 + -0x20) = prodp;
          local_ac = up;
          *(undefined4 *)(puVar16 + -0x24) = 0x475ed;
          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),
                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),
                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));
          puVar13 = local_c8;
          local_b4 = (mp_srcptr)(un - (int)local_c8);
          local_c4 = (mp_ptr)(vn * 8);
          prodp = prodp + vn * 2;
          local_b0 = local_ac + vn * 2;
          local_ac = (mp_srcptr)(vn * 4);
          local_c0 = (void *)((int)local_a8 + vn * 4);
          if (local_bc == (int)local_b4 * 2 ||
              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {
            local_d4 = vn * -4;
            mVar12 = ((int)local_b4 - (int)local_c8) * 2;
            do {
              *(uint **)(puVar16 + -0xc) = local_b8;
              *(mp_size_t *)(puVar16 + -0x10) = vn;
              *(uint **)(puVar16 + -0x14) = local_a4;
              *(uint **)(puVar16 + -0x18) = puVar13;
              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;
              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;
              local_d0 = mVar12;
              *(undefined4 *)(puVar16 + -0x24) = 0x4769a;
              __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),
                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),
                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));
              *(mp_size_t *)(puVar16 + -4) = vn;
              pmVar11 = local_a0;
              pmVar6 = local_c4;
              *(mp_srcptr *)(puVar16 + -8) = local_a8;
              *(mp_ptr *)(puVar16 + -0xc) = prodp;
              *(mp_ptr *)(puVar16 + -0x10) = prodp;
              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);
              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);
              pcVar4 = (code *)*pmVar11;
              *(undefined4 *)(puVar16 + -0x14) = 0x476c2;
              local_cc = (*pcVar4)();
              pmVar11 = local_a0;
              puVar14 = (uint *)((int)prodp + (int)local_ac);
              *(uint **)(puVar16 + -8) = puVar13;
              local_c8 = puVar14;
              *(void **)(puVar16 + -0xc) = local_c0;
              *(uint **)(puVar16 + -0x10) = puVar14;
              pcVar4 = (code *)pmVar11[10];
              *(undefined4 *)(puVar16 + -0x14) = 0x476eb;
              (*pcVar4)();
              uVar9 = *local_c8;
              *local_c8 = *local_c8 + local_cc;
              puVar14 = local_c8;
              if (CARRY4(uVar9,local_cc)) {
                do {
                  puVar1 = puVar14 + 1;
                  uVar9 = *puVar1;
                  *puVar1 = *puVar1 + 1;
                  puVar14 = puVar14 + 1;
                } while (0xfffffffe < uVar9);
              }
              mVar12 = local_d0 + local_d4;
              prodp = (mp_ptr)((int)prodp + (int)local_c4);
            } while ((int)local_bc <= (int)((int)local_ac + mVar12));
          }
        }
        else {
          *(uint **)(puVar16 + -0xc) = local_b8;
          *(mp_size_t *)(puVar16 + -0x10) = vn;
          *(uint **)(puVar16 + -0x14) = local_a4;
          *(uint **)(puVar16 + -0x18) = local_c8;
          *(mp_srcptr *)(puVar16 + -0x1c) = up;
          *(mp_ptr *)(puVar16 + -0x20) = prodp;
          local_ac = up;
          *(undefined4 *)(puVar16 + -0x24) = 0x47adb;
          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),
                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),
                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));
          puVar13 = local_c8;
          local_c4 = (mp_ptr)(vn * 8);
          local_b4 = (mp_srcptr)(un - (int)local_c8);
          prodp = prodp + vn * 2;
          local_b0 = local_ac + vn * 2;
          local_ac = (mp_srcptr)(vn * 4);
          local_c0 = (void *)((int)local_a8 + vn * 4);
          if (local_bc == (int)local_b4 * 2 ||
              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {
            local_d4 = vn * -4;
            mVar12 = ((int)local_b4 - (int)local_c8) * 2;
            do {
              *(uint **)(puVar16 + -0xc) = local_b8;
              *(mp_size_t *)(puVar16 + -0x10) = vn;
              *(uint **)(puVar16 + -0x14) = local_a4;
              *(uint **)(puVar16 + -0x18) = puVar13;
              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;
              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;
              local_d0 = mVar12;
              *(undefined4 *)(puVar16 + -0x24) = 0x47b8a;
              __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),
                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),
                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));
              *(mp_size_t *)(puVar16 + -4) = vn;
              pmVar11 = local_a0;
              pmVar6 = local_c4;
              *(mp_srcptr *)(puVar16 + -8) = local_a8;
              *(mp_ptr *)(puVar16 + -0xc) = prodp;
              *(mp_ptr *)(puVar16 + -0x10) = prodp;
              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);
              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);
              pcVar4 = (code *)*pmVar11;
              *(undefined4 *)(puVar16 + -0x14) = 0x47bb2;
              local_cc = (*pcVar4)();
              pmVar11 = local_a0;
              puVar14 = (uint *)((int)local_ac + (int)prodp);
              *(uint **)(puVar16 + -8) = puVar13;
              local_c8 = puVar14;
              *(void **)(puVar16 + -0xc) = local_c0;
              *(uint **)(puVar16 + -0x10) = puVar14;
              pcVar4 = (code *)pmVar11[10];
              *(undefined4 *)(puVar16 + -0x14) = 0x47bda;
              (*pcVar4)();
              uVar9 = *local_c8;
              *local_c8 = *local_c8 + local_cc;
              puVar14 = local_c8;
              if (CARRY4(uVar9,local_cc)) {
                do {
                  puVar1 = puVar14 + 1;
                  uVar9 = *puVar1;
                  *puVar1 = *puVar1 + 1;
                  puVar14 = puVar14 + 1;
                } while (0xfffffffe < uVar9);
              }
              mVar12 = local_d0 + local_d4;
              prodp = (mp_ptr)((int)prodp + (int)local_c4);
            } while ((int)local_bc <= (int)((int)local_ac + mVar12));
          }
        }
        if ((int)local_b4 < vn) {
          *(mp_srcptr *)(puVar16 + -0x10) = local_b4;
          *(mp_srcptr *)(puVar16 + -0x14) = local_b0;
          *(mp_size_t *)(puVar16 + -0x18) = vn;
          *(uint **)(puVar16 + -0x1c) = local_a4;
          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;
          *(undefined4 *)(puVar16 + -0x24) = 0x4775a;
          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),
                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),
                     *(mp_size_t *)(puVar16 + -0x10));
        }
        else {
          *(mp_size_t *)(puVar16 + -0x10) = vn;
          *(uint **)(puVar16 + -0x14) = local_a4;
          *(mp_srcptr *)(puVar16 + -0x18) = local_b4;
          *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;
          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;
          *(undefined4 *)(puVar16 + -0x24) = 0x47c49;
          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),
                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),
                     *(mp_size_t *)(puVar16 + -0x10));
        }
        pmVar11 = local_a0;
        *(mp_size_t *)(puVar16 + -4) = vn;
        *(mp_srcptr *)(puVar16 + -8) = local_a8;
        *(mp_ptr *)(puVar16 + -0xc) = prodp;
        *(mp_ptr *)(puVar16 + -0x10) = prodp;
        pcVar4 = (code *)*pmVar11;
        *(undefined4 *)(puVar16 + -0x14) = 0x4776e;
        local_a8 = (mp_srcptr)(*pcVar4)();
        pmVar11 = local_a0;
        puVar13 = (uint *)((int)local_ac + (int)prodp);
        *(mp_srcptr *)(puVar16 + -8) = local_b4;
        local_a4 = puVar13;
        *(void **)(puVar16 + -0xc) = local_c0;
        *(uint **)(puVar16 + -0x10) = puVar13;
        pcVar4 = (code *)pmVar11[10];
        *(undefined4 *)(puVar16 + -0x14) = 0x4779b;
        (*pcVar4)();
        uVar9 = *local_a4;
        *local_a4 = *local_a4 + (int)local_a8;
        puVar13 = local_a4;
        if (CARRY4(uVar9,(uint)local_a8)) {
          do {
            puVar14 = puVar13 + 1;
            uVar9 = *puVar14;
            *puVar14 = *puVar14 + 1;
            puVar13 = puVar13 + 1;
          } while (0xfffffffe < uVar9);
        }
        local_ac = (mp_srcptr)(vn + (int)local_b4);
      }
      else if (un * 6 < (int)local_b0) {
        *(uint **)(puVar16 + -0xc) = local_b8;
        *(mp_size_t *)(puVar16 + -0x10) = vn;
        *(uint **)(puVar16 + -0x14) = local_a4;
        *(mp_size_t *)(puVar16 + -0x18) = un;
        *(mp_srcptr *)(puVar16 + -0x1c) = up;
        *(mp_ptr *)(puVar16 + -0x20) = prodp;
        *(undefined4 *)(puVar16 + -0x24) = 0x47d4a;
        __gmpn_toom33_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),
                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),
                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));
      }
      else if (SBORROW4((int)local_a8,vn * 3) == (int)local_a8 + vn * -3 < 0) {
        if (un * 6 < vn * 0xb) {
          if (un * 4 < (int)local_b0) {
            if (vn < 0x6e) goto LAB_00047dab;
          }
          else if (vn < 100) goto LAB_00047e74;
          *(uint **)(puVar16 + -0xc) = local_b8;
          *(mp_size_t *)(puVar16 + -0x10) = vn;
          *(uint **)(puVar16 + -0x14) = local_a4;
          *(mp_size_t *)(puVar16 + -0x18) = un;
          *(mp_srcptr *)(puVar16 + -0x1c) = up;
          *(mp_ptr *)(puVar16 + -0x20) = prodp;
          *(undefined4 *)(puVar16 + -0x24) = 0x47d26;
          __gmpn_toom53_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),
                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),
                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));
        }
        else if (vn < 0x6e) {
LAB_00047e74:
          *(uint **)(puVar16 + -0xc) = local_b8;
          *(mp_size_t *)(puVar16 + -0x10) = vn;
          *(uint **)(puVar16 + -0x14) = local_a4;
          *(mp_size_t *)(puVar16 + -0x18) = un;
          *(mp_srcptr *)(puVar16 + -0x1c) = up;
          *(mp_ptr *)(puVar16 + -0x20) = prodp;
          *(undefined4 *)(puVar16 + -0x24) = 0x47e8e;
          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),
                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),
                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));
        }
        else {
          *(uint **)(puVar16 + -0xc) = local_b8;
          *(mp_size_t *)(puVar16 + -0x10) = vn;
          *(uint **)(puVar16 + -0x14) = local_a4;
          *(mp_size_t *)(puVar16 + -0x18) = un;
          *(mp_srcptr *)(puVar16 + -0x1c) = up;
          *(mp_ptr *)(puVar16 + -0x20) = prodp;
          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;
          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),
                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),
                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));
        }
      }
      else if (vn < 100) {
LAB_00047dab:
        *(uint **)(puVar16 + -0xc) = local_b8;
        *(mp_size_t *)(puVar16 + -0x10) = vn;
        *(uint **)(puVar16 + -0x14) = local_a4;
        *(mp_size_t *)(puVar16 + -0x18) = un;
        *(mp_srcptr *)(puVar16 + -0x1c) = up;
        *(mp_ptr *)(puVar16 + -0x20) = prodp;
        *(undefined4 *)(puVar16 + -0x24) = 0x47dc5;
        __gmpn_toom32_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),
                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),
                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));
      }
      else {
        *(uint **)(puVar16 + -0xc) = local_b8;
        *(mp_size_t *)(puVar16 + -0x10) = vn;
        *(uint **)(puVar16 + -0x14) = local_a4;
        *(mp_size_t *)(puVar16 + -0x18) = un;
        *(mp_srcptr *)(puVar16 + -0x1c) = up;
        *(mp_ptr *)(puVar16 + -0x20) = prodp;
        *(undefined4 *)(puVar16 + -0x24) = 0x47a39;
        __gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),
                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),
                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));
      }
      if (__tmp_marker != (tmp_reentrant_t *)0x0) {
        *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;
        *(undefined4 *)(puVar16 + -0x14) = 0x47e00;
        __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));
      }
      local_a0 = local_ac;
      goto LAB_000471aa;
    }
  }
  local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;
  if ((un < 0x1f5) || (vn == 1)) {
    amStackY_8010[0x1fc4] = 0x47451;
    (**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68))();
    local_a0 = (mp_srcptr)(vn + un);
    puVar16 = auStack_dc;
  }
  else {
    prodp = prodp + 500;
    amStackY_8010[0x1fc4] = 0x46f33;
    local_ac = up;
    (**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68))();
    local_a8 = tp;
    (*(code *)local_a0[10])();
    local_b0 = (mp_srcptr)(vn * 4);
    pmVar11 = (mp_srcptr)(un + -500);
    while (500 < (int)pmVar11) {
      amStackY_8010[0x1fc4] = 0x46fa8;
      local_ac = pmVar11;
      (*(code *)local_a0[0x1a])();
      uVar8 = (*(code *)*local_a0)();
      puVar13 = (uint *)((int)prodp + (int)local_b0);
      uVar9 = *puVar13;
      *puVar13 = *puVar13 + uVar8;
      if (CARRY4(uVar9,uVar8)) {
        do {
          puVar14 = puVar13 + 1;
          uVar9 = *puVar14;
          *puVar14 = *puVar14 + 1;
          puVar13 = puVar13 + 1;
        } while (0xfffffffe < uVar9);
      }
      prodp = prodp + 500;
      (*(code *)local_a0[10])();
      pmVar11 = local_ac + -0x7d;
    }
    if (vn < (int)pmVar11) {
      amStackY_8010[0x1fc4] = 0x47033;
      (*(code *)local_a0[0x1a])();
    }
    else {
      amStackY_8010[0x1fc4] = 0x477f7;
      (*(code *)local_a0[0x1a])();
    }
    uVar8 = (*(code *)*local_a0)();
    puVar13 = (uint *)((int)local_b0 + (int)prodp);
    uVar9 = *puVar13;
    *puVar13 = *puVar13 + uVar8;
    if (CARRY4(uVar9,uVar8)) {
      do {
        puVar14 = puVar13 + 1;
        uVar9 = *puVar14;
        *puVar14 = *puVar14 + 1;
        puVar13 = puVar13 + 1;
      } while (0xfffffffe < uVar9);
    }
    local_a0 = (mp_srcptr)(vn + (int)pmVar11);
    puVar16 = auStack_dc;
  }
LAB_000471aa:
  if (iVar3 == *(int *)(in_GS_OFFSET + 0x14)) {
    return prodp[(int)local_a0 + -1];
  }
                    /* WARNING: Subroutine does not return */
  *(undefined4 *)(puVar16 + -4) = 0x47f0b;
  __stack_chk_fail_local();
}



undefined4 __gmpn_mul(void)

{
  uint *puVar1;
  int iVar2;
  code *pcVar3;
  int iVar4;
  int iVar5;
  undefined4 *puVar6;
  int iVar7;
  uint uVar8;
  uint uVar9;
  undefined4 uVar10;
  undefined1 *puVar11;
  undefined1 *puVar12;
  uint *puVar13;
  int iVar14;
  int unaff_EBX;
  undefined1 *puVar15;
  int iVar16;
  undefined1 *puVar17;
  undefined1 *puVar18;
  undefined1 *puVar19;
  int in_GS_OFFSET;
  uint auStack_8014 [8133];
  undefined1 *apuStack_100 [2];
  int iStack_f8;
  undefined1 *apuStack_f4 [4];
  uint uStack_e4;
  undefined1 auStack_e0 [204];
  undefined4 uStack_14;
  
  puVar17 = &stack0xfffffffc;
  uStack_14 = 0x46e9b;
  entry();
  puVar15 = auStack_e0;
  puVar11 = auStack_e0;
  puVar19 = *(undefined1 **)(puVar17 + 8);
  puVar12 = *(undefined1 **)(puVar17 + 0xc);
  puVar18 = *(undefined1 **)(puVar17 + 0x18);
  *(undefined4 *)(puVar17 + -0xa0) = *(undefined4 *)(puVar17 + 0x14);
  *(undefined4 *)(puVar17 + -0x1c) = *(undefined4 *)(in_GS_OFFSET + 0x14);
  if (*(undefined1 **)(puVar17 + 0x10) == puVar18) {
    *(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2;
    apuStack_f4[1] = puVar19;
    apuStack_f4[2] = puVar12;
    if (puVar12 == *(undefined1 **)(puVar17 + -0xa0)) {
      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);
      apuStack_f4[0] = (undefined1 *)0x477dd;
      __gmpn_sqr();
      puVar11 = auStack_e0;
    }
    else {
      uStack_e4 = *(uint *)(puVar17 + 0x10);
      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);
      apuStack_f4[0] = (undefined1 *)0x471a7;
      __gmpn_mul_n();
      puVar11 = auStack_e0;
    }
    goto LAB_000471aa;
  }
  if (**(int **)(unaff_EBX + 0x56ebd) == 0) {
    *(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd);
    *(undefined1 **)(puVar17 + -0xa4) = puVar12;
    uStack_e4 = 0x47081;
    __gmpn_cpuvec_init();
    puVar12 = *(undefined1 **)(puVar17 + -0xa4);
    iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94);
    *(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9);
    if (iVar2 <= (int)puVar18) {
      if (**(int **)(puVar17 + -0xa8) == 0) {
        *(undefined1 **)(puVar17 + -0xa4) = puVar12;
        uStack_e4 = 0x470b6;
        __gmpn_cpuvec_init();
        puVar12 = *(undefined1 **)(puVar17 + -0xa4);
      }
      goto LAB_000470c0;
    }
  }
  else {
    iVar2 = *(int *)(unaff_EBX + 0x56ef9);
    *(int *)(puVar17 + -0x9c) = iVar2;
    if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {
LAB_000470c0:
      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {
        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;
        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;
        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;
        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);
        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;
        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;
        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;
        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {
          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);
          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {
            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);
            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;
            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);
            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;
            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;
            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;
            __gmpn_toom22_mul();
            puVar11 = auStack_e0 + iVar2;
          }
          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {
            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);
            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;
            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);
            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;
            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;
            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;
            __gmpn_toom32_mul();
            puVar11 = auStack_e0 + iVar2;
          }
          else {
            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);
            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;
            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);
            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;
            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;
            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;
            __gmpn_toom42_mul();
            puVar11 = auStack_e0 + iVar2;
          }
        }
        else {
          *(undefined1 **)(puVar17 + -0xb0) = puVar12;
          iVar4 = -((int)puVar18 * 0x10 + 0x10);
          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);
          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;
          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);
          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;
          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;
          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;
          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;
          __gmpn_toom42_mul();
          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);
          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);
          *(int *)(puVar17 + -0xa8) = iVar14;
          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);
          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);
          if (*(int *)(puVar17 + -0xc4) <= iVar14) {
            *(undefined1 **)(puVar17 + 0x18) = puVar18;
            iVar5 = *(int *)(puVar17 + -0xb4);
            do {
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)
              ;
              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)
              ;
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)
              ;
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;
              __gmpn_toom42_mul();
              puVar6 = *(undefined4 **)(puVar17 + -0x9c);
              iVar14 = *(int *)(puVar17 + -0xa4);
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);
              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);
              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;
              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;
              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;
              pcVar3 = (code *)*puVar6;
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;
              uVar10 = (*pcVar3)();
              iVar14 = *(int *)(puVar17 + -0x9c);
              *(undefined4 *)(puVar17 + -0xb8) = uVar10;
              iVar7 = *(int *)(puVar17 + -0xc0);
              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;
              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);
              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;
              pcVar3 = *(code **)(iVar14 + 0x28);
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;
              (*pcVar3)();
              puVar13 = *(uint **)(puVar17 + -0xb4);
              uVar8 = *(uint *)(puVar17 + -0xb8);
              uVar9 = *puVar13;
              *puVar13 = *puVar13 + uVar8;
              if (CARRY4(uVar9,uVar8)) {
                do {
                  puVar1 = puVar13 + 1;
                  uVar9 = *puVar1;
                  *puVar1 = *puVar1 + 1;
                  puVar13 = puVar13 + 1;
                } while (0xfffffffe < uVar9);
              }
              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);
              iVar14 = *(int *)(puVar17 + -0xa8);
            } while (*(int *)(puVar17 + -0xc4) <= iVar14);
            puVar18 = *(undefined1 **)(puVar17 + 0x18);
          }
          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);
            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;
            __gmpn_toom22_mul();
          }
          else if (iVar14 * 4 < (int)puVar18 * 7) {
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);
            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;
            __gmpn_toom32_mul();
          }
          else {
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);
            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;
            __gmpn_toom42_mul();
          }
          puVar6 = *(undefined4 **)(puVar17 + -0x9c);
          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;
          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);
          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;
          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;
          pcVar3 = (code *)*puVar6;
          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;
          uVar10 = (*pcVar3)();
          *(undefined4 *)(puVar17 + -0xa0) = uVar10;
          iVar14 = *(int *)(puVar17 + -0x9c);
          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));
          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);
          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);
          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;
          pcVar3 = *(code **)(iVar14 + 0x28);
          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;
          (*pcVar3)();
          uVar8 = *(uint *)(puVar17 + -0xa0);
          uVar9 = *puVar13;
          *puVar13 = *puVar13 + uVar8;
          if (CARRY4(uVar9,uVar8)) {
            do {
              puVar1 = puVar13 + 1;
              uVar9 = *puVar1;
              *puVar1 = *puVar1 + 1;
              puVar13 = puVar13 + 1;
            } while (0xfffffffe < uVar9);
          }
          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);
          puVar11 = auStack_e0 + iVar4 + iVar2;
        }
        goto LAB_000471aa;
      }
      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);
      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&
         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {
        iVar2 = (int)puVar18 * 8;
        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {
          *(int *)(puVar17 + -0xb8) = iVar2;
          *(undefined1 **)(puVar17 + -0xac) = puVar12;
          *(undefined4 *)(puVar17 + -0x94) = 0;
          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);
          apuStack_f4[1] = puVar17 + -0x94;
          apuStack_f4[0] = (undefined1 *)0x47238;
          uVar10 = __gmp_tmp_reentrant_alloc();
          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);
          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);
          iStack_f8 = *(int *)(puVar17 + -0xa4);
          apuStack_100[0] = puVar19;
          apuStack_f4[1] = puVar18;
          *(undefined4 *)(puVar17 + -0xa8) = uVar10;
          auStack_8014[0x1fc4] = 0x4725a;
          __gmpn_nussbaumer_mul();
          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;
          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;
          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);
          *(int *)(puVar17 + -0xb4) = iVar14;
          iVar2 = *(int *)(puVar17 + -0xa4) * 4;
          puVar19 = puVar19 + iVar2;
          *(int *)(puVar17 + -0xb0) = iVar2;
          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;
          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;
          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {
            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);
          }
          else {
            *(undefined1 **)(puVar17 + 0x18) = puVar18;
            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);
            do {
              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);
              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);
              iStack_f8 = *(int *)(puVar17 + -0xa4);
              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);
              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);
              auStack_8014[0x1fc4] = 0x47303;
              __gmpn_nussbaumer_mul();
              uStack_e4 = *(uint *)(puVar17 + 0x18);
              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);
              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);
              apuStack_f4[1] = puVar19;
              apuStack_f4[2] = puVar19;
              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);
              apuStack_f4[0] = (undefined1 *)0x4732b;
              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();
              *(undefined4 *)(puVar17 + -0xb8) = uVar10;
              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);
              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);
              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];
              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);
              apuStack_f4[0] = (undefined1 *)0x47359;
              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();
              puVar13 = *(uint **)(puVar17 + -0xb4);
              uVar8 = *(uint *)(puVar17 + -0xb8);
              uVar9 = *puVar13;
              *puVar13 = *puVar13 + uVar8;
              if (CARRY4(uVar9,uVar8)) {
                do {
                  puVar1 = puVar13 + 1;
                  uVar9 = *puVar1;
                  *puVar1 = *puVar1 + 1;
                  puVar13 = puVar13 + 1;
                } while (0xfffffffe < uVar9);
              }
              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);
              iVar2 = *(int *)(puVar17 + -200);
            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);
            *(int *)(puVar17 + -0xb4) = iVar14;
            puVar18 = *(undefined1 **)(puVar17 + 0x18);
          }
          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);
          if ((int)apuStack_f4[1] < (int)puVar18) {
            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);
            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);
            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);
            auStack_8014[0x1fc4] = 0x473bd;
            iStack_f8 = (int)puVar18;
            __gmpn_mul();
          }
          else {
            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);
            iStack_f8 = *(int *)(puVar17 + -0xb4);
            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);
            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);
            auStack_8014[0x1fc4] = 0x47d73;
            apuStack_f4[1] = puVar18;
            __gmpn_mul();
          }
          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);
          apuStack_f4[0] = (undefined1 *)0x473d1;
          apuStack_f4[1] = puVar19;
          apuStack_f4[2] = puVar19;
          uStack_e4 = (uint)puVar18;
          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();
          *(undefined4 *)(puVar17 + -0xa4) = uVar10;
          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);
          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);
          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];
          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);
          apuStack_f4[0] = (undefined1 *)0x473fe;
          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();
          puVar13 = *(uint **)(puVar17 + -0xa0);
          uVar8 = *(uint *)(puVar17 + -0xa4);
          uVar9 = *puVar13;
          *puVar13 = *puVar13 + uVar8;
          if (CARRY4(uVar9,uVar8)) {
            do {
              puVar1 = puVar13 + 1;
              uVar9 = *puVar1;
              *puVar1 = *puVar1 + 1;
              puVar13 = puVar13 + 1;
            } while (0xfffffffe < uVar9);
          }
          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {
            apuStack_f4[0] = (undefined1 *)0x47eda;
            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);
            __gmp_tmp_reentrant_free();
          }
          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);
          puVar11 = auStack_e0;
        }
        else {
          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);
          iStack_f8 = *(int *)(puVar17 + 0x10);
          auStack_8014[0x1fc4] = 0x47c6c;
          apuStack_100[0] = puVar19;
          apuStack_100[1] = puVar12;
          apuStack_f4[1] = puVar18;
          __gmpn_nussbaumer_mul();
          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);
        }
        goto LAB_000471aa;
      }
      if (299 < (int)puVar18) {
        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;
        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=
            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {
          *(undefined4 *)(puVar17 + -0x94) = 0;
          uVar9 = *(uint *)(puVar17 + -0xa8);
          *(uint *)(puVar17 + -0x9c) = uVar9;
          if ((int)puVar18 < 0x15e) {
            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);
            puVar11 = auStack_e0 + iVar2;
            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;
            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;
            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);
            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;
            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;
            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;
            __gmpn_toom44_mul();
          }
          else if ((int)puVar18 < 0x1c2) {
            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);
            puVar11 = auStack_e0 + iVar2;
            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;
            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;
            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);
            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;
            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;
            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;
            __gmpn_toom6h_mul();
          }
          else {
            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;
            puVar11 = (undefined1 *)(iVar2 + 0x6dc);
            if (puVar11 < (undefined1 *)0x7f01) {
              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);
              puVar15 = auStack_e0 + iVar2;
              puVar11 = auStack_e0 + iVar2;
            }
            else {
              *(undefined1 **)(puVar17 + -0xa4) = puVar12;
              apuStack_f4[1] = puVar17 + -0x94;
              apuStack_f4[0] = (undefined1 *)0x47ef8;
              apuStack_f4[2] = puVar11;
              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();
              puVar12 = *(undefined1 **)(puVar17 + -0xa4);
            }
            *(undefined1 **)(puVar15 + -0xc) = puVar11;
            *(undefined1 **)(puVar15 + -0x10) = puVar18;
            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);
            *(undefined1 **)(puVar15 + -0x1c) = puVar12;
            *(undefined1 **)(puVar15 + -0x20) = puVar19;
            *(undefined4 *)(puVar15 + -0x24) = 0x47511;
            __gmpn_toom8h_mul();
            puVar11 = puVar15;
          }
          if (*(int *)(puVar17 + -0x94) != 0) {
            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);
            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;
            __gmp_tmp_reentrant_free();
          }
          goto LAB_000471aa;
        }
      }
      *(undefined4 *)(puVar17 + -0x94) = 0;
      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);
      if (puVar11 < (undefined1 *)0x7f01) {
        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);
        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);
      }
      else {
        *(undefined1 **)(puVar17 + -0xa4) = puVar12;
        apuStack_f4[1] = puVar17 + -0x94;
        apuStack_f4[0] = (undefined1 *)0x47de3;
        apuStack_f4[2] = puVar11;
        uVar10 = __gmp_tmp_reentrant_alloc();
        puVar12 = *(undefined1 **)(puVar17 + -0xa4);
        *(undefined4 *)(puVar17 + -0xb4) = uVar10;
        puVar11 = auStack_e0;
      }
      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;
      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;
      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;
      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==
          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {
        uVar9 = ((int)puVar18 * 7 >> 1) * 4;
        if (uVar9 < 0x7f01) {
          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);
          iVar16 = (int)puVar11 + iVar2;
          puVar11 = puVar11 + iVar2;
          *(int *)(puVar17 + -0xa4) = iVar16;
        }
        else {
          *(undefined1 **)(puVar17 + -0xa8) = puVar12;
          *(uint *)(puVar11 + -0xc) = uVar9;
          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;
          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;
          uVar10 = __gmp_tmp_reentrant_alloc();
          puVar12 = *(undefined1 **)(puVar17 + -0xa8);
          *(undefined4 *)(puVar17 + -0xa4) = uVar10;
        }
        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;
        if ((int)puVar18 < 0x6e) {
          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
          *(undefined1 **)(puVar11 + -0x10) = puVar18;
          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;
          *(undefined1 **)(puVar11 + -0x1c) = puVar12;
          *(undefined1 **)(puVar11 + -0x20) = puVar19;
          *(undefined1 **)(puVar17 + -0xa8) = puVar12;
          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;
          __gmpn_toom42_mul();
          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);
          *(int *)(puVar17 + -0xb0) = iVar14;
          iVar2 = (int)puVar18 * 8;
          *(int *)(puVar17 + -0xc0) = iVar2;
          puVar19 = puVar19 + iVar2;
          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;
          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;
          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;
          iVar2 = *(int *)(puVar17 + -0xb8);
          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {
            iVar2 = *(int *)(puVar17 + -0xc4);
            *(undefined1 **)(puVar17 + 0x18) = puVar18;
            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;
            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;
            do {
              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);
              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
              *(int *)(puVar11 + -0x18) = iVar2;
              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);
              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);
              *(int *)(puVar17 + -0xcc) = iVar14;
              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;
              __gmpn_toom42_mul();
              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);
              puVar6 = *(undefined4 **)(puVar17 + -0x9c);
              iVar14 = *(int *)(puVar17 + -0xc0);
              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);
              *(undefined1 **)(puVar11 + -0xc) = puVar19;
              *(undefined1 **)(puVar11 + -0x10) = puVar19;
              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;
              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;
              pcVar3 = (code *)*puVar6;
              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;
              uVar10 = (*pcVar3)();
              iVar14 = *(int *)(puVar17 + -0xa8);
              *(undefined4 *)(puVar17 + -200) = uVar10;
              iVar4 = *(int *)(puVar17 + -0x9c);
              *(int *)(puVar11 + -8) = iVar2;
              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;
              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);
              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;
              pcVar3 = *(code **)(iVar4 + 0x28);
              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;
              (*pcVar3)();
              puVar13 = *(uint **)(puVar17 + -0xc4);
              uVar8 = *(uint *)(puVar17 + -200);
              uVar9 = *puVar13;
              *puVar13 = *puVar13 + uVar8;
              if (CARRY4(uVar9,uVar8)) {
                do {
                  puVar1 = puVar13 + 1;
                  uVar9 = *puVar1;
                  *puVar1 = *puVar1 + 1;
                  puVar13 = puVar13 + 1;
                } while (0xfffffffe < uVar9);
              }
              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);
              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);
            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);
LAB_0004772d:
            puVar18 = *(undefined1 **)(puVar17 + 0x18);
          }
        }
        else {
          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
          *(undefined1 **)(puVar11 + -0x10) = puVar18;
          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);
          *(undefined1 **)(puVar11 + -0x1c) = puVar12;
          *(undefined1 **)(puVar11 + -0x20) = puVar19;
          *(undefined1 **)(puVar17 + -0xa8) = puVar12;
          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;
          __gmpn_toom63_mul();
          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;
          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);
          *(int *)(puVar17 + -0xb0) = iVar14;
          puVar19 = puVar19 + (int)puVar18 * 8;
          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;
          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;
          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;
          iVar2 = *(int *)(puVar17 + -0xb8);
          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {
            iVar2 = *(int *)(puVar17 + -0xc4);
            *(undefined1 **)(puVar17 + 0x18) = puVar18;
            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;
            iVar14 = (iVar14 - iVar2) * 2;
            do {
              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);
              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
              *(int *)(puVar11 + -0x18) = iVar2;
              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);
              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);
              *(int *)(puVar17 + -0xcc) = iVar14;
              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;
              __gmpn_toom63_mul();
              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);
              puVar6 = *(undefined4 **)(puVar17 + -0x9c);
              iVar14 = *(int *)(puVar17 + -0xc0);
              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);
              *(undefined1 **)(puVar11 + -0xc) = puVar19;
              *(undefined1 **)(puVar11 + -0x10) = puVar19;
              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;
              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;
              pcVar3 = (code *)*puVar6;
              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;
              uVar10 = (*pcVar3)();
              iVar14 = *(int *)(puVar17 + -0xa8);
              *(undefined4 *)(puVar17 + -200) = uVar10;
              iVar4 = *(int *)(puVar17 + -0x9c);
              *(int *)(puVar11 + -8) = iVar2;
              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;
              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);
              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;
              pcVar3 = *(code **)(iVar4 + 0x28);
              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;
              (*pcVar3)();
              puVar13 = *(uint **)(puVar17 + -0xc4);
              uVar8 = *(uint *)(puVar17 + -200);
              uVar9 = *puVar13;
              *puVar13 = *puVar13 + uVar8;
              if (CARRY4(uVar9,uVar8)) {
                do {
                  puVar1 = puVar13 + 1;
                  uVar9 = *puVar1;
                  *puVar1 = *puVar1 + 1;
                  puVar13 = puVar13 + 1;
                } while (0xfffffffe < uVar9);
              }
              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);
              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);
            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);
            goto LAB_0004772d;
          }
        }
        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {
          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);
          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);
          *(undefined1 **)(puVar11 + -0x18) = puVar18;
          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);
          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);
          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;
          __gmpn_mul();
        }
        else {
          *(undefined1 **)(puVar11 + -0x10) = puVar18;
          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);
          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);
          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);
          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;
          __gmpn_mul();
        }
        puVar6 = *(undefined4 **)(puVar17 + -0x9c);
        *(undefined1 **)(puVar11 + -4) = puVar18;
        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);
        *(undefined1 **)(puVar11 + -0xc) = puVar19;
        *(undefined1 **)(puVar11 + -0x10) = puVar19;
        pcVar3 = (code *)*puVar6;
        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;
        uVar10 = (*pcVar3)();
        iVar2 = *(int *)(puVar17 + -0xa8);
        *(undefined4 *)(puVar17 + -0xa4) = uVar10;
        iVar14 = *(int *)(puVar17 + -0x9c);
        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);
        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;
        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);
        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;
        pcVar3 = *(code **)(iVar14 + 0x28);
        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;
        (*pcVar3)();
        puVar13 = *(uint **)(puVar17 + -0xa0);
        uVar8 = *(uint *)(puVar17 + -0xa4);
        uVar9 = *puVar13;
        *puVar13 = *puVar13 + uVar8;
        if (CARRY4(uVar9,uVar8)) {
          do {
            puVar1 = puVar13 + 1;
            uVar9 = *puVar1;
            *puVar1 = *puVar1 + 1;
            puVar13 = puVar13 + 1;
          } while (0xfffffffe < uVar9);
        }
        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);
      }
      else {
        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;
        if (iVar2 < *(int *)(puVar17 + -0xac)) {
          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
          *(undefined1 **)(puVar11 + -0x10) = puVar18;
          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);
          *(undefined1 **)(puVar11 + -0x1c) = puVar12;
          *(undefined1 **)(puVar11 + -0x20) = puVar19;
          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;
          __gmpn_toom33_mul();
        }
        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==
                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {
          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {
            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {
              if ((int)puVar18 < 0x6e) goto LAB_00047dab;
            }
            else if ((int)puVar18 < 100) goto LAB_00047e74;
            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
            *(undefined1 **)(puVar11 + -0x10) = puVar18;
            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);
            *(undefined1 **)(puVar11 + -0x1c) = puVar12;
            *(undefined1 **)(puVar11 + -0x20) = puVar19;
            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;
            __gmpn_toom53_mul();
          }
          else if ((int)puVar18 < 0x6e) {
LAB_00047e74:
            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
            *(undefined1 **)(puVar11 + -0x10) = puVar18;
            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);
            *(undefined1 **)(puVar11 + -0x1c) = puVar12;
            *(undefined1 **)(puVar11 + -0x20) = puVar19;
            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;
            __gmpn_toom42_mul();
          }
          else {
            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
            *(undefined1 **)(puVar11 + -0x10) = puVar18;
            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);
            *(undefined1 **)(puVar11 + -0x1c) = puVar12;
            *(undefined1 **)(puVar11 + -0x20) = puVar19;
            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;
            __gmpn_toom63_mul();
          }
        }
        else if ((int)puVar18 < 100) {
LAB_00047dab:
          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
          *(undefined1 **)(puVar11 + -0x10) = puVar18;
          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);
          *(undefined1 **)(puVar11 + -0x1c) = puVar12;
          *(undefined1 **)(puVar11 + -0x20) = puVar19;
          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;
          __gmpn_toom32_mul();
        }
        else {
          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
          *(undefined1 **)(puVar11 + -0x10) = puVar18;
          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);
          *(undefined1 **)(puVar11 + -0x1c) = puVar12;
          *(undefined1 **)(puVar11 + -0x20) = puVar19;
          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;
          __gmpn_toom43_mul();
        }
      }
      if (*(int *)(puVar17 + -0x94) != 0) {
        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);
        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;
        __gmp_tmp_reentrant_free();
      }
      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);
      goto LAB_000471aa;
    }
  }
  pcVar3 = *(code **)(*(int *)(puVar17 + -0x9c) + 0x68);
  apuStack_100[1] = puVar12;
  if ((*(int *)(puVar17 + 0x10) < 0x1f5) || (puVar18 == (undefined1 *)0x1)) {
    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);
    iStack_f8 = *(int *)(puVar17 + 0x10);
    auStack_8014[0x1fc4] = 0x47451;
    apuStack_100[0] = puVar19;
    apuStack_f4[1] = puVar18;
    (*pcVar3)();
    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);
    puVar11 = auStack_e0;
  }
  else {
    *(undefined1 **)(puVar17 + -0xa8) = puVar12;
    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);
    iStack_f8 = 500;
    auStack_8014[0x1fc4] = 0x46f33;
    apuStack_100[0] = puVar19;
    apuStack_f4[1] = puVar18;
    (*pcVar3)();
    apuStack_f4[1] = puVar17 + -0x90;
    *(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];
    apuStack_f4[0] = (undefined1 *)0x46f4e;
    apuStack_f4[2] = puVar19 + 2000;
    apuStack_f4[3] = puVar18;
    (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();
    iVar2 = *(int *)(puVar17 + 0x10);
    puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);
    *(int *)(puVar17 + -0xac) = (int)puVar18 * 4;
    puVar19 = puVar19 + 2000;
    while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,
          apuStack_100[1] = puVar12, 500 < (int)puVar11) {
      *(undefined1 **)(puVar17 + -0xa8) = puVar11;
      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);
      iStack_f8 = 500;
      auStack_8014[0x1fc4] = 0x46fa8;
      apuStack_f4[1] = puVar18;
      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();
      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);
      apuStack_f4[0] = (undefined1 *)0x46fbc;
      apuStack_f4[1] = puVar19;
      apuStack_f4[2] = puVar19;
      uStack_e4 = (uint)puVar18;
      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();
      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));
      uVar9 = *puVar13;
      *puVar13 = *puVar13 + uVar8;
      if (CARRY4(uVar9,uVar8)) {
        do {
          puVar1 = puVar13 + 1;
          uVar9 = *puVar1;
          *puVar1 = *puVar1 + 1;
          puVar13 = puVar13 + 1;
        } while (0xfffffffe < uVar9);
      }
      puVar19 = puVar19 + 2000;
      puVar12 = puVar12 + 2000;
      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);
      apuStack_f4[0] = (undefined1 *)0x46ff2;
      apuStack_f4[2] = puVar19;
      apuStack_f4[3] = puVar18;
      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();
      iVar2 = *(int *)(puVar17 + -0xa8);
    }
    if ((int)puVar18 < (int)puVar11) {
      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);
      auStack_8014[0x1fc4] = 0x47033;
      iStack_f8 = (int)puVar11;
      apuStack_f4[1] = puVar18;
      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();
    }
    else {
      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);
      auStack_8014[0x1fc4] = 0x477f7;
      iStack_f8 = (int)puVar18;
      apuStack_f4[0] = puVar12;
      apuStack_f4[1] = puVar11;
      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();
    }
    apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);
    apuStack_f4[0] = (undefined1 *)0x47047;
    apuStack_f4[1] = puVar19;
    apuStack_f4[2] = puVar19;
    uStack_e4 = (uint)puVar18;
    uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();
    puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));
    uVar9 = *puVar13;
    *puVar13 = *puVar13 + uVar8;
    if (CARRY4(uVar9,uVar8)) {
      do {
        puVar1 = puVar13 + 1;
        uVar9 = *puVar1;
        *puVar1 = *puVar1 + 1;
        puVar13 = puVar13 + 1;
      } while (0xfffffffe < uVar9);
    }
    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;
    puVar11 = auStack_e0;
  }
LAB_000471aa:
  if (*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14)) {
    return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);
  }
                    /* WARNING: Subroutine does not return */
  *(undefined4 *)(puVar11 + -4) = 0x47f0b;
  FUN_0007ebe0();
}


PUSH EBP
MOV EBP,ESP
PUSH EDI
PUSH ESI
PUSH EBX
CALL 0x0001c340
ADD EBX,0x57165
SUB ESP,0xcc
MOV EAX,dword ptr [EBP + 0x14]
MOV EDI,dword ptr [EBP + 0x8]
MOV ECX,dword ptr [EBP + 0xc]
MOV ESI,dword ptr [EBP + 0x18]
MOV dword ptr [EBP + 0xffffff60],EAX
MOV EAX,GS:[0x14]
MOV dword ptr [EBP + -0x1c],EAX
XOR EAX,EAX
CMP dword ptr [EBP + 0x10],ESI
JZ 0x00047180
MOV EAX,dword ptr [EBX + 0xfffffd58]
MOV EDX,dword ptr [EAX]
TEST EDX,EDX
JZ 0x00047070
MOV EAX,dword ptr [EBX + 0xfffffd94]
MOV dword ptr [EBP + 0xffffff64],EAX
CMP dword ptr [EAX + 0x94],ESI
JLE 0x000470c0
MOV EAX,dword ptr [EBP + 0xffffff64]
CMP dword ptr [EBP + 0x10],0x1f4
MOV EAX,dword ptr [EAX + 0x68]
JLE 0x00047440
CMP ESI,0x1
JZ 0x00047440
SUB ESP,0xc
MOV dword ptr [EBP + 0xffffff58],ECX
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH 0x1f4
PUSH ECX
PUSH EDI
ADD EDI,0x7d0
CALL EAX
LEA EAX,[EBP + 0xffffff70]
MOV dword ptr [EBP + 0xffffff5c],EAX
ADD ESP,0x1c
PUSH ESI
PUSH EDI
PUSH EAX
MOV EAX,dword ptr [EBP + 0xffffff64]
CALL dword ptr [EAX + 0x28]
MOV EAX,dword ptr [EBP + 0x10]
MOV ECX,dword ptr [EBP + 0xffffff58]
ADD ESP,0x10
LEA EBX,[EAX + 0xfffffe0c]
LEA EAX,[ESI*0x4 + 0x0]
ADD ECX,0x7d0
MOV dword ptr [EBP + 0xffffff54],EAX
CMP EBX,0x1f4
JLE 0x00047013
MOV EAX,EBX
MOV EBX,ECX
MOV ECX,EAX
LEA ESI,[ESI]
SUB ESP,0xc
MOV EAX,dword ptr [EBP + 0xffffff64]
MOV dword ptr [EBP + 0xffffff58],ECX
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH 0x1f4
PUSH EBX
PUSH EDI
CALL dword ptr [EAX + 0x68]
MOV EAX,dword ptr [EBP + 0xffffff64]
ADD ESP,0x20
PUSH ESI
PUSH dword ptr [EBP + 0xffffff5c]
PUSH EDI
PUSH EDI
CALL dword ptr [EAX]
MOV ECX,dword ptr [EBP + 0xffffff54]
LEA EDX,[EDI + ECX*0x1]
ADD dword ptr [EDX],EAX
JNC 0x00046fd2
ADD dword ptr [EDX + 0x4],0x1
LEA EDX,[EDX + 0x4]
JC 0x00046fc9
MOV EAX,dword ptr [EBP + 0xffffff64]
ADD ESP,0xc
ADD EDI,0x7d0
ADD EBX,0x7d0
PUSH ESI
PUSH EDI
PUSH dword ptr [EBP + 0xffffff5c]
CALL dword ptr [EAX + 0x28]
MOV ECX,dword ptr [EBP + 0xffffff58]
SUB ECX,0x1f4
ADD ESP,0x10
CMP ECX,0x1f4
JG 0x00046f88
MOV EAX,ECX
MOV ECX,EBX
MOV EBX,EAX
MOV EAX,dword ptr [EBP + 0xffffff64]
MOV EAX,dword ptr [EAX + 0x68]
CMP ESI,EBX
JGE 0x000477e8
SUB ESP,0xc
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH EBX
PUSH ECX
PUSH EDI
CALL EAX
ADD ESP,0x20
MOV EAX,dword ptr [EBP + 0xffffff64]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff5c]
PUSH EDI
PUSH EDI
CALL dword ptr [EAX]
MOV EDX,dword ptr [EBP + 0xffffff54]
ADD EDX,EDI
ADD dword ptr [EDX],EAX
JNC 0x0004705c
ADD dword ptr [EDX + 0x4],0x1
LEA EDX,[EDX + 0x4]
JC 0x00047053
LEA EAX,[ESI + EBX*0x1]
ADD ESP,0x10
MOV dword ptr [EBP + 0xffffff64],EAX
JMP 0x000471aa
MOV dword ptr [EBP + 0xffffff58],EAX
MOV dword ptr [EBP + 0xffffff5c],ECX
CALL 0x0001b700
MOV EAX,dword ptr [EBX + 0xfffffd94]
MOV ECX,dword ptr [EBP + 0xffffff5c]
CMP dword ptr [EAX + 0x94],ESI
MOV dword ptr [EBP + 0xffffff64],EAX
MOV EAX,dword ptr [EBP + 0xffffff58]
JG 0x00046ef5
MOV EAX,dword ptr [EAX]
TEST EAX,EAX
JNZ 0x000470c0
MOV dword ptr [EBP + 0xffffff5c],ECX
CALL 0x0001b700
MOV ECX,dword ptr [EBP + 0xffffff5c]
LEA ESI,[ESI]
MOV EAX,dword ptr [EBP + 0xffffff64]
CMP dword ptr [EAX + 0x98],ESI
JLE 0x000471d0
LEA EAX,[ESI*0x8 + 0x0]
LEA EDX,[EAX + ESI*0x1]
MOV dword ptr [EBP + 0xffffff5c],EAX
MOV EAX,EDX
SHR EAX,0x1f
ADD EAX,EDX
LEA EDX,[ESI*0x4 + 0x0]
SAR EAX,0x1
MOV dword ptr [EBP + 0xffffff40],EDX
ADD EDX,ESI
LEA EAX,[EAX*0x4 + 0x11b]
MOV dword ptr [EBP + 0xffffff34],EDX
AND EAX,0xfffffff0
SUB ESP,EAX
LEA EAX,[ESP + 0xf]
AND EAX,0xfffffff0
MOV dword ptr [EBP + 0xffffff44],EAX
LEA EAX,[ESI + ESI*0x1]
MOV dword ptr [EBP + 0xffffff4c],EAX
ADD EAX,ESI
MOV dword ptr [EBP + 0xffffff3c],EAX
CMP EAX,dword ptr [EBP + 0x10]
JLE 0x00047800
MOV EDX,dword ptr [EBP + 0x10]
MOV EAX,dword ptr [EBP + 0x10]
ADD EDX,ESI
SHL EAX,0x2
MOV dword ptr [EBP + 0xffffff64],EDX
CMP EAX,dword ptr [EBP + 0xffffff34]
JL 0x00047a90
MOV EDX,dword ptr [EBP + 0xffffff5c]
SUB EDX,ESI
CMP EAX,EDX
JGE 0x00047a60
SUB ESP,0x8
PUSH dword ptr [EBP + 0xffffff44]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0x10]
PUSH ECX
PUSH EDI
CALL 0x0001b880
ADD ESP,0x20
JMP 0x000471aa
MOV EAX,dword ptr [EBP + 0x10]
ADD EAX,EAX
MOV dword ptr [EBP + 0xffffff64],EAX
CMP ECX,dword ptr [EBP + 0xffffff60]
JZ 0x000477d0
PUSH dword ptr [EBP + 0x10]
PUSH dword ptr [EBP + 0xffffff60]
PUSH ECX
PUSH EDI
CALL 0x0001b990
ADD ESP,0x10
MOV EBX,dword ptr [EBP + -0x1c]
XOR EBX,dword ptr GS:[0x14]
MOV EAX,dword ptr [EBP + 0xffffff64]
MOV EAX,dword ptr [EDI + EAX*0x4 + -0x4]
JNZ 0x00047f06
LEA ESP,[EBP + -0xc]
POP EBX
POP ESI
POP EDI
POP EBP
RET
MOV EAX,dword ptr [EBP + 0x10]
ADD EAX,ESI
MOV dword ptr [EBP + 0xffffff58],EAX
CMP EAX,0xf9f
JLE 0x00047468
LEA EAX,[ESI + ESI*0x2]
MOV dword ptr [EBP + 0xffffff5c],EAX
CMP EAX,0x7cf
JLE 0x00047468
LEA EDX,[ESI*0x8 + 0x0]
CMP EDX,dword ptr [EBP + 0x10]
JG 0x00047c58
LEA EAX,[EDX + ESI*0x1]
SUB ESP,0x8
MOV dword ptr [EBP + 0xffffff48],EDX
SAR EAX,0x1
MOV dword ptr [EBP + 0xffffff54],ECX
MOV dword ptr [EBP + 0xffffff6c],0x0
SHL EAX,0x2
PUSH EAX
LEA EAX,[EBP + 0xffffff6c]
PUSH EAX
CALL 0x0001bb00
MOV ECX,dword ptr [EBP + 0xffffff54]
MOV dword ptr [ESP],ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0xffffff5c]
PUSH ECX
PUSH EDI
MOV dword ptr [EBP + 0xffffff58],EAX
CALL 0x0001bbc0
LEA ECX,[ESI*0x4 + 0x0]
ADD ESP,0x20
MOV EDX,ECX
MOV ECX,ESI
SUB ECX,EDX
MOV dword ptr [EBP + 0xffffff44],EDX
MOV dword ptr [EBP + 0xffffff3c],ECX
ADD ECX,dword ptr [EBP + 0x10]
MOV EAX,ECX
MOV dword ptr [EBP + 0xffffff4c],ECX
MOV ECX,dword ptr [EBP + 0xffffff5c]
LEA EDX,[ECX*0x4 + 0x0]
MOV ECX,dword ptr [EBP + 0xffffff54]
ADD EDI,EDX
MOV dword ptr [EBP + 0xffffff50],EDX
ADD ECX,EDX
MOV EDX,dword ptr [EBP + 0xffffff48]
MOV dword ptr [EBP + 0xffffff54],ECX
MOV ECX,EAX
LEA EAX,[EAX + EAX*0x1]
SUB EDX,ESI
CMP EAX,EDX
MOV dword ptr [EBP + 0xffffff38],EDX
MOV EAX,dword ptr [EBP + 0xffffff58]
JL 0x00047ec0
ADD EAX,dword ptr [EBP + 0xffffff44]
MOV dword ptr [EBP + 0x18],ESI
MOV ESI,ECX
MOV dword ptr [EBP + 0xffffff40],EAX
LEA ESI,[ESI]
LEA ESI,[ESI]
SUB ESP,0xc
PUSH dword ptr [EBP + 0x18]
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0xffffff5c]
PUSH dword ptr [EBP + 0xffffff54]
PUSH dword ptr [EBP + 0xffffff58]
CALL 0x0001bbc0
ADD ESP,0x20
PUSH dword ptr [EBP + 0x18]
MOV EAX,dword ptr [EBP + 0xffffff64]
MOV EDX,dword ptr [EBP + 0xffffff50]
PUSH dword ptr [EBP + 0xffffff58]
ADD ESI,dword ptr [EBP + 0xffffff3c]
PUSH EDI
PUSH EDI
ADD dword ptr [EBP + 0xffffff54],EDX
CALL dword ptr [EAX]
MOV ECX,dword ptr [EBP + 0xffffff44]
MOV dword ptr [EBP + 0xffffff48],EAX
MOV EAX,dword ptr [EBP + 0xffffff64]
ADD ESP,0xc
LEA EDX,[EDI + ECX*0x1]
PUSH dword ptr [EBP + 0xffffff5c]
MOV dword ptr [EBP + 0xffffff4c],EDX
PUSH dword ptr [EBP + 0xffffff40]
PUSH EDX
CALL dword ptr [EAX + 0x28]
MOV EDX,dword ptr [EBP + 0xffffff4c]
MOV EAX,dword ptr [EBP + 0xffffff48]
ADD dword ptr [EDX],EAX
JNC 0x00047372
ADD dword ptr [EDX + 0x4],0x1
LEA EDX,[EDX + 0x4]
JC 0x00047369
ADD EDI,dword ptr [EBP + 0xffffff50]
LEA EAX,[ESI + ESI*0x1]
ADD ESP,0x10
CMP dword ptr [EBP + 0xffffff38],EAX
JLE 0x000472e0
MOV dword ptr [EBP + 0xffffff4c],ESI
MOV ESI,dword ptr [EBP + 0x18]
MOV EAX,dword ptr [EBP + 0xffffff4c]
CMP ESI,EAX
JLE 0x00047d52
SUB ESP,0xc
PUSH EAX
PUSH dword ptr [EBP + 0xffffff54]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0xffffff58]
CALL 0x00046e90
ADD ESP,0x20
MOV EAX,dword ptr [EBP + 0xffffff64]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff58]
PUSH EDI
PUSH EDI
CALL dword ptr [EAX]
MOV EDX,dword ptr [EBP + 0xffffff44]
MOV dword ptr [EBP + 0xffffff5c],EAX
MOV EAX,dword ptr [EBP + 0xffffff64]
ADD EDX,EDI
ADD ESP,0xc
PUSH dword ptr [EBP + 0xffffff4c]
MOV dword ptr [EBP + 0xffffff60],EDX
PUSH dword ptr [EBP + 0xffffff40]
PUSH EDX
CALL dword ptr [EAX + 0x28]
MOV EDX,dword ptr [EBP + 0xffffff60]
MOV EAX,dword ptr [EBP + 0xffffff5c]
ADD dword ptr [EDX],EAX
JNC 0x00047417
ADD dword ptr [EDX + 0x4],0x1
LEA EDX,[EDX + 0x4]
JC 0x0004740e
MOV EAX,dword ptr [EBP + 0xffffff6c]
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00047ed1
ADD ESI,dword ptr [EBP + 0xffffff4c]
MOV dword ptr [EBP + 0xffffff64],ESI
JMP 0x000471aa
SUB ESP,0xc
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0x10]
PUSH ECX
PUSH EDI
CALL EAX
ADD ESI,dword ptr [EBP + 0x10]
MOV dword ptr [EBP + 0xffffff64],ESI
ADD ESP,0x20
JMP 0x000471aa
CMP ESI,0x12b
JLE 0x00047538
MOV EAX,dword ptr [EBP + 0x10]
LEA EAX,[EAX + EAX*0x2]
LEA EDX,[EAX + 0xc]
MOV dword ptr [EBP + 0xffffff5c],EDX
LEA EDX,[ESI*0x4 + 0x0]
CMP dword ptr [EBP + 0xffffff5c],EDX
JGE 0x00047538
MOV dword ptr [EBP + 0xffffff6c],0x0
MOV EDX,dword ptr [EBP + 0xffffff58]
MOV dword ptr [EBP + 0xffffff64],EDX
CMP ESI,0x15d
JLE 0x00047d7b
MOV EAX,EDX
CMP ESI,0x1c1
JLE 0x00047e2f
SHR EAX,0x1
MOV EDX,0x92492493
MUL EDX
SHR EDX,0x2
LEA EAX,[EDX + 0x1]
IMUL EAX,EAX,0x78
SAR EAX,0x3
LEA EAX,[EAX*0x4 + 0x6dc]
CMP EAX,0x7f00
JA 0x00047ee2
ADD EAX,0x1b
AND EAX,0xfffffff0
SUB ESP,EAX
LEA EAX,[ESP + 0xf]
AND EAX,0xfffffff0
SUB ESP,0x8
PUSH EAX
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0x10]
PUSH ECX
PUSH EDI
CALL 0x0001bab0
ADD ESP,0x20
MOV EAX,dword ptr [EBP + 0xffffff6c]
TEST EAX,EAX
JZ 0x000471aa
SUB ESP,0xc
PUSH EAX
CALL 0x0001b050
ADD ESP,0x10
JMP 0x000471aa
MOV dword ptr [EBP + 0xffffff6c],0x0
LEA EAX,[ESI + 0x8]
SHL EAX,0x4
CMP EAX,0x7f00
JA 0x00047dcd
ADD EAX,0x10
SUB ESP,EAX
LEA EAX,[ESP + 0xf]
AND EAX,0xfffffff0
MOV dword ptr [EBP + 0xffffff4c],EAX
MOV EAX,dword ptr [EBP + 0x10]
LEA EDX,[ESI + ESI*0x4]
MOV dword ptr [EBP + 0xffffff48],EDX
ADD EAX,EAX
MOV dword ptr [EBP + 0xffffff5c],EAX
MOV EAX,EDX
LEA EDX,[ESI*0x8 + 0x0]
SUB EDX,ESI
MOV dword ptr [EBP + 0xffffff54],EDX
CMP dword ptr [EBP + 0xffffff5c],EAX
JL 0x000479f0
MOV EAX,EDX
SAR EAX,0x1
SHL EAX,0x2
CMP EAX,0x7f00
JA 0x00047e96
ADD EAX,0x1b
AND EAX,0xfffffff0
SUB ESP,EAX
LEA EAX,[ESP + 0xf]
AND EAX,0xfffffff0
MOV dword ptr [EBP + 0xffffff5c],EAX
LEA EAX,[ESI + ESI*0x1]
MOV dword ptr [EBP + 0xffffff3c],EAX
CMP ESI,0x6d
JG 0x00047ab8
SUB ESP,0x8
PUSH dword ptr [EBP + 0xffffff4c]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH EAX
PUSH ECX
PUSH EDI
MOV dword ptr [EBP + 0xffffff58],ECX
CALL 0x0001c2e0
MOV ECX,dword ptr [EBP + 0x10]
SUB ECX,dword ptr [EBP + 0xffffff3c]
ADD ESP,0x20
MOV EAX,ECX
MOV dword ptr [EBP + 0xffffff50],ECX
MOV ECX,dword ptr [EBP + 0xffffff58]
LEA EDX,[ESI*0x8 + 0x0]
MOV dword ptr [EBP + 0xffffff40],EDX
ADD EDI,EDX
ADD EAX,EAX
ADD ECX,EDX
MOV EDX,dword ptr [EBP + 0xffffff5c]
MOV dword ptr [EBP + 0xffffff54],ECX
LEA ECX,[ESI*0x4 + 0x0]
ADD EDX,ECX
MOV dword ptr [EBP + 0xffffff58],ECX
MOV dword ptr [EBP + 0xffffff44],EDX
CMP dword ptr [EBP + 0xffffff48],EAX
JG 0x00047730
MOV EAX,ESI
MOV EDX,dword ptr [EBP + 0xffffff3c]
MOV dword ptr [EBP + 0x18],ESI
NEG EAX
SHL EAX,0x2
MOV ESI,EDX
MOV dword ptr [EBP + 0xffffff30],EAX
MOV EAX,dword ptr [EBP + 0xffffff50]
SUB EAX,EDX
LEA ECX,[EAX + EAX*0x1]
LEA ESI,[ESI]
SUB ESP,0x8
PUSH dword ptr [EBP + 0xffffff4c]
PUSH dword ptr [EBP + 0x18]
PUSH dword ptr [EBP + 0xffffff60]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff54]
PUSH dword ptr [EBP + 0xffffff5c]
MOV dword ptr [EBP + 0xffffff34],ECX
CALL 0x0001c2e0
ADD ESP,0x20
PUSH dword ptr [EBP + 0x18]
MOV EAX,dword ptr [EBP + 0xffffff64]
MOV EDX,dword ptr [EBP + 0xffffff40]
PUSH dword ptr [EBP + 0xffffff5c]
PUSH EDI
PUSH EDI
ADD dword ptr [EBP + 0xffffff54],EDX
SUB dword ptr [EBP + 0xffffff50],ESI
CALL dword ptr [EAX]
MOV ECX,dword ptr [EBP + 0xffffff58]
ADD ESP,0xc
MOV dword ptr [EBP + 0xffffff38],EAX
MOV EAX,dword ptr [EBP + 0xffffff64]
LEA EDX,[EDI + ECX*0x1]
PUSH ESI
MOV dword ptr [EBP + 0xffffff3c],EDX
PUSH dword ptr [EBP + 0xffffff44]
PUSH EDX
CALL dword ptr [EAX + 0x28]
MOV EDX,dword ptr [EBP + 0xffffff3c]
MOV EAX,dword ptr [EBP + 0xffffff38]
ADD dword ptr [EDX],EAX
JNC 0x00047704
ADD dword ptr [EDX + 0x4],0x1
LEA EDX,[EDX + 0x4]
JC 0x000476fb
MOV EAX,dword ptr [EBP + 0xffffff58]
MOV ECX,dword ptr [EBP + 0xffffff34]
ADD ESP,0x10
ADD ECX,dword ptr [EBP + 0xffffff30]
ADD EDI,dword ptr [EBP + 0xffffff40]
ADD EAX,ECX
CMP dword ptr [EBP + 0xffffff48],EAX
JLE 0x00047670
MOV ESI,dword ptr [EBP + 0x18]
MOV EAX,dword ptr [EBP + 0xffffff50]
CMP ESI,EAX
JLE 0x00047c28
SUB ESP,0xc
PUSH EAX
PUSH dword ptr [EBP + 0xffffff54]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0xffffff5c]
CALL 0x00046e90
ADD ESP,0x20
MOV EAX,dword ptr [EBP + 0xffffff64]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff5c]
PUSH EDI
PUSH EDI
CALL dword ptr [EAX]
MOV EDX,dword ptr [EBP + 0xffffff58]
MOV dword ptr [EBP + 0xffffff5c],EAX
MOV EAX,dword ptr [EBP + 0xffffff64]
ADD EDX,EDI
ADD ESP,0xc
PUSH dword ptr [EBP + 0xffffff50]
MOV dword ptr [EBP + 0xffffff60],EDX
PUSH dword ptr [EBP + 0xffffff44]
PUSH EDX
CALL dword ptr [EAX + 0x28]
MOV EDX,dword ptr [EBP + 0xffffff60]
MOV EAX,dword ptr [EBP + 0xffffff5c]
ADD dword ptr [EDX],EAX
JNC 0x000477b4
ADD dword ptr [EDX + 0x4],0x1
LEA EDX,[EDX + 0x4]
JC 0x000477ab
ADD ESI,dword ptr [EBP + 0xffffff50]
ADD ESP,0x10
MOV dword ptr [EBP + 0xffffff58],ESI
JMP 0x00047a40
SUB ESP,0x4
PUSH dword ptr [EBP + 0x10]
PUSH ECX
PUSH EDI
CALL 0x0001b8f0
ADD ESP,0x10
JMP 0x000471aa
SUB ESP,0xc
PUSH EBX
PUSH ECX
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH EDI
CALL EAX
ADD ESP,0x20
JMP 0x00047036
MOV EAX,ESI
MOV dword ptr [EBP + 0xffffff50],ECX
SHL EAX,0x4
ADD EAX,0x10
SUB ESP,EAX
LEA EAX,[ESP + 0xf]
SUB ESP,0x8
PUSH dword ptr [EBP + 0xffffff44]
PUSH ESI
AND EAX,0xfffffff0
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0xffffff4c]
PUSH ECX
PUSH EDI
MOV dword ptr [EBP + 0xffffff54],EAX
CALL 0x0001c2e0
MOV EAX,dword ptr [EBP + 0xffffff5c]
MOV EDX,dword ptr [EBP + 0x10]
ADD ESP,0x20
MOV ECX,dword ptr [EBP + 0xffffff50]
SUB EDX,dword ptr [EBP + 0xffffff4c]
ADD EDI,EAX
MOV dword ptr [EBP + 0xffffff58],EDX
ADD ECX,EAX
MOV EAX,dword ptr [EBP + 0xffffff54]
ADD EAX,dword ptr [EBP + 0xffffff40]
CMP dword ptr [EBP + 0xffffff3c],EDX
MOV dword ptr [EBP + 0xffffff50],ECX
MOV dword ptr [EBP + 0xffffff38],EAX
JG 0x00047a82
MOV dword ptr [EBP + 0x18],ESI
MOV ESI,dword ptr [EBP + 0xffffff4c]
LEA ESI,[ESI]
SUB ESP,0x8
PUSH dword ptr [EBP + 0xffffff44]
PUSH dword ptr [EBP + 0x18]
PUSH dword ptr [EBP + 0xffffff60]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff50]
PUSH dword ptr [EBP + 0xffffff54]
CALL 0x0001c2e0
MOV ECX,dword ptr [EBP + 0xffffff64]
ADD ESP,0x20
MOV EDX,dword ptr [EBP + 0xffffff5c]
PUSH dword ptr [EBP + 0x18]
ADD dword ptr [EBP + 0xffffff50],EDX
PUSH dword ptr [EBP + 0xffffff54]
SUB dword ptr [EBP + 0xffffff58],ESI
PUSH EDI
PUSH EDI
CALL dword ptr [ECX]
MOV ECX,dword ptr [EBP + 0xffffff64]
MOV dword ptr [EBP + 0xffffff48],EAX
MOV EAX,dword ptr [EBP + 0xffffff40]
ADD ESP,0xc
LEA EDX,[EDI + EAX*0x1]
PUSH ESI
MOV dword ptr [EBP + 0xffffff4c],EDX
PUSH dword ptr [EBP + 0xffffff38]
PUSH EDX
CALL dword ptr [ECX + 0x28]
MOV EDX,dword ptr [EBP + 0xffffff4c]
MOV EAX,dword ptr [EBP + 0xffffff48]
ADD dword ptr [EDX],EAX
JNC 0x0004791e
ADD dword ptr [EDX + 0x4],0x1
LEA EDX,[EDX + 0x4]
JC 0x00047915
ADD EDI,dword ptr [EBP + 0xffffff5c]
ADD ESP,0x10
MOV EAX,dword ptr [EBP + 0xffffff58]
CMP dword ptr [EBP + 0xffffff3c],EAX
JLE 0x00047890
MOV ESI,dword ptr [EBP + 0x18]
LEA EDX,[EAX*0x4 + 0x0]
CMP EDX,dword ptr [EBP + 0xffffff34]
JL 0x00047cb0
LEA EAX,[ESI*0x8 + 0x0]
SUB EAX,ESI
CMP EDX,EAX
JGE 0x00047c80
SUB ESP,0x8
PUSH dword ptr [EBP + 0xffffff44]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0xffffff58]
PUSH dword ptr [EBP + 0xffffff50]
PUSH dword ptr [EBP + 0xffffff54]
CALL 0x0001b880
ADD ESP,0x20
MOV EAX,dword ptr [EBP + 0xffffff64]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff54]
PUSH EDI
PUSH EDI
CALL dword ptr [EAX]
MOV EBX,dword ptr [EBP + 0xffffff40]
MOV dword ptr [EBP + 0xffffff60],EAX
MOV EAX,dword ptr [EBP + 0xffffff64]
ADD ESP,0xc
ADD EBX,EDI
PUSH dword ptr [EBP + 0xffffff58]
PUSH dword ptr [EBP + 0xffffff38]
PUSH EBX
CALL dword ptr [EAX + 0x28]
MOV EDX,EBX
MOV EAX,dword ptr [EBP + 0xffffff60]
ADD dword ptr [EDX],EAX
JNC 0x000479d7
ADD dword ptr [EDX + 0x4],0x1
LEA EDX,[EDX + 0x4]
JC 0x000479ce
ADD ESI,dword ptr [EBP + 0xffffff58]
ADD ESP,0x10
MOV dword ptr [EBP + 0xffffff64],ESI
JMP 0x000471aa
MOV EDX,dword ptr [EBP + 0xffffff5c]
ADD EDX,dword ptr [EBP + 0x10]
ADD EDX,EDX
CMP EDX,dword ptr [EBP + 0xffffff54]
JL 0x00047d30
LEA EAX,[ESI + ESI*0x2]
CMP dword ptr [EBP + 0xffffff5c],EAX
JGE 0x00047ce0
CMP ESI,0x63
JLE 0x00047dab
SUB ESP,0x8
PUSH dword ptr [EBP + 0xffffff4c]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0x10]
PUSH ECX
PUSH EDI
CALL 0x0001bdd0
ADD ESP,0x20
LEA ESI,[ESI]
MOV EAX,dword ptr [EBP + 0xffffff6c]
TEST EAX,EAX
JNZ 0x00047df7
MOV EAX,dword ptr [EBP + 0xffffff58]
MOV dword ptr [EBP + 0xffffff64],EAX
JMP 0x000471aa
SUB ESP,0x8
PUSH dword ptr [EBP + 0xffffff44]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0x10]
PUSH ECX
PUSH EDI
CALL 0x0001c2e0
ADD ESP,0x20
JMP 0x000471aa
MOV EAX,EDX
JMP 0x0004793c
SUB ESP,0x8
PUSH dword ptr [EBP + 0xffffff44]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0x10]
PUSH ECX
PUSH EDI
CALL 0x0001c290
ADD ESP,0x20
JMP 0x000471aa
SUB ESP,0x8
PUSH dword ptr [EBP + 0xffffff4c]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0xffffff3c]
PUSH ECX
PUSH EDI
MOV dword ptr [EBP + 0xffffff58],ECX
CALL 0x0001b7a0
LEA ECX,[ESI*0x8 + 0x0]
MOV EAX,dword ptr [EBP + 0x10]
ADD ESP,0x20
MOV dword ptr [EBP + 0xffffff40],ECX
MOV ECX,dword ptr [EBP + 0xffffff58]
SUB EAX,dword ptr [EBP + 0xffffff3c]
MOV EDX,ECX
LEA ECX,[ESI*0x8 + 0x0]
MOV dword ptr [EBP + 0xffffff50],EAX
ADD EDX,ECX
ADD EDI,ECX
LEA ECX,[ESI*0x4 + 0x0]
MOV dword ptr [EBP + 0xffffff54],EDX
MOV EDX,dword ptr [EBP + 0xffffff5c]
MOV dword ptr [EBP + 0xffffff58],ECX
ADD EDX,ECX
MOV ECX,EAX
LEA EAX,[EAX + EAX*0x1]
MOV dword ptr [EBP + 0xffffff44],EDX
CMP dword ptr [EBP + 0xffffff48],EAX
JG 0x00047730
MOV EAX,ESI
MOV EDX,dword ptr [EBP + 0xffffff3c]
MOV dword ptr [EBP + 0x18],ESI
NEG EAX
SHL EAX,0x2
MOV ESI,EDX
MOV dword ptr [EBP + 0xffffff30],EAX
MOV EAX,ECX
SUB EAX,EDX
LEA ECX,[EAX + EAX*0x1]
NOP
SUB ESP,0x8
PUSH dword ptr [EBP + 0xffffff4c]
PUSH dword ptr [EBP + 0x18]
PUSH dword ptr [EBP + 0xffffff60]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff54]
PUSH dword ptr [EBP + 0xffffff5c]
MOV dword ptr [EBP + 0xffffff34],ECX
CALL 0x0001b7a0
ADD ESP,0x20
PUSH dword ptr [EBP + 0x18]
MOV EAX,dword ptr [EBP + 0xffffff64]
MOV ECX,dword ptr [EBP + 0xffffff40]
PUSH dword ptr [EBP + 0xffffff5c]
PUSH EDI
PUSH EDI
ADD dword ptr [EBP + 0xffffff54],ECX
SUB dword ptr [EBP + 0xffffff50],ESI
CALL dword ptr [EAX]
MOV EDX,dword ptr [EBP + 0xffffff58]
ADD ESP,0xc
MOV dword ptr [EBP + 0xffffff38],EAX
MOV EAX,dword ptr [EBP + 0xffffff64]
ADD EDX,EDI
PUSH ESI
MOV dword ptr [EBP + 0xffffff3c],EDX
PUSH dword ptr [EBP + 0xffffff44]
PUSH EDX
CALL dword ptr [EAX + 0x28]
MOV EDX,dword ptr [EBP + 0xffffff3c]
MOV EAX,dword ptr [EBP + 0xffffff38]
ADD dword ptr [EDX],EAX
JNC 0x00047bf3
ADD dword ptr [EDX + 0x4],0x1
LEA EDX,[EDX + 0x4]
JC 0x00047bea
MOV EDX,dword ptr [EBP + 0xffffff58]
MOV ECX,dword ptr [EBP + 0xffffff34]
ADD ESP,0x10
ADD ECX,dword ptr [EBP + 0xffffff30]
ADD EDI,dword ptr [EBP + 0xffffff40]
LEA EAX,[EDX + ECX*0x1]
CMP dword ptr [EBP + 0xffffff48],EAX
JLE 0x00047b60
JMP 0x0004772d
SUB ESP,0xc
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0xffffff50]
PUSH dword ptr [EBP + 0xffffff54]
PUSH dword ptr [EBP + 0xffffff5c]
CALL 0x00046e90
ADD ESP,0x20
JMP 0x0004775d
SUB ESP,0xc
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0x10]
PUSH ECX
PUSH EDI
CALL 0x0001bbc0
MOV EAX,dword ptr [EBP + 0xffffff58]
ADD ESP,0x20
MOV dword ptr [EBP + 0xffffff64],EAX
JMP 0x000471aa
SUB ESP,0x8
PUSH dword ptr [EBP + 0xffffff44]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0xffffff58]
PUSH dword ptr [EBP + 0xffffff50]
PUSH dword ptr [EBP + 0xffffff54]
CALL 0x0001c2e0
ADD ESP,0x20
JMP 0x0004798a
SUB ESP,0x8
PUSH dword ptr [EBP + 0xffffff44]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH EAX
PUSH dword ptr [EBP + 0xffffff50]
PUSH dword ptr [EBP + 0xffffff54]
CALL 0x0001c290
ADD ESP,0x20
JMP 0x0004798a
MOV EAX,dword ptr [EBP + 0xffffff48]
LEA EAX,[ESI + EAX*0x2]
CMP EDX,EAX
JGE 0x00047e08
MOV EAX,dword ptr [EBP + 0x10]
SHL EAX,0x2
CMP EAX,dword ptr [EBP + 0xffffff54]
JGE 0x00047e6b
CMP ESI,0x6d
JLE 0x00047dab
SUB ESP,0x8
PUSH dword ptr [EBP + 0xffffff4c]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0x10]
PUSH ECX
PUSH EDI
CALL 0x0001ba20
ADD ESP,0x20
JMP 0x00047a40
SUB ESP,0x8
PUSH dword ptr [EBP + 0xffffff4c]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0x10]
PUSH ECX
PUSH EDI
CALL 0x0001b1c0
ADD ESP,0x20
JMP 0x00047a40
SUB ESP,0xc
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0xffffff4c]
PUSH dword ptr [EBP + 0xffffff54]
PUSH dword ptr [EBP + 0xffffff58]
CALL 0x00046e90
ADD ESP,0x20
JMP 0x000473c0
LEA EAX,[EAX*0x4 + 0x9b]
AND EAX,0xfffffff0
SUB ESP,EAX
LEA EAX,[ESP + 0xf]
SUB ESP,0x8
AND EAX,0xfffffff0
PUSH EAX
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0x10]
PUSH ECX
PUSH EDI
CALL 0x0001b780
ADD ESP,0x20
JMP 0x00047514
SUB ESP,0x8
PUSH dword ptr [EBP + 0xffffff4c]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0x10]
PUSH ECX
PUSH EDI
CALL 0x0001b880
ADD ESP,0x20
JMP 0x00047a40
SUB ESP,0x8
MOV dword ptr [EBP + 0xffffff5c],ECX
PUSH EAX
LEA EAX,[EBP + 0xffffff6c]
PUSH EAX
CALL 0x0001bb00
ADD ESP,0x10
MOV ECX,dword ptr [EBP + 0xffffff5c]
MOV dword ptr [EBP + 0xffffff4c],EAX
JMP 0x00047565
SUB ESP,0xc
PUSH EAX
CALL 0x0001b050
ADD ESP,0x10
JMP 0x00047a4e
CMP ESI,0x6d
JLE 0x00047e74
SUB ESP,0x8
PUSH dword ptr [EBP + 0xffffff4c]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0x10]
PUSH ECX
PUSH EDI
CALL 0x0001b7a0
ADD ESP,0x20
JMP 0x00047a40
MOV EDX,0xcccccccd
MUL EDX
SHR EDX,0x3
LEA EAX,[EDX + EDX*0x2 + 0x3]
SHL EAX,0x4
ADD EAX,0x610
SUB ESP,EAX
LEA EAX,[ESP + 0xf]
SUB ESP,0x8
AND EAX,0xfffffff0
PUSH EAX
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0x10]
PUSH ECX
PUSH EDI
CALL 0x0001bb70
ADD ESP,0x20
JMP 0x00047514
CMP ESI,0x63
JG 0x00047d0c
SUB ESP,0x8
PUSH dword ptr [EBP + 0xffffff4c]
PUSH ESI
PUSH dword ptr [EBP + 0xffffff60]
PUSH dword ptr [EBP + 0x10]
PUSH ECX
PUSH EDI
CALL 0x0001c2e0
ADD ESP,0x20
JMP 0x00047a40
SUB ESP,0x8
MOV dword ptr [EBP + 0xffffff58],ECX
PUSH EAX
LEA EAX,[EBP + 0xffffff6c]
PUSH EAX
CALL 0x0001bb00
ADD ESP,0x10
MOV ECX,dword ptr [EBP + 0xffffff58]
MOV dword ptr [EBP + 0xffffff5c],EAX
JMP 0x000475bd
ADD EAX,dword ptr [EBP + 0xffffff44]
MOV dword ptr [EBP + 0xffffff40],EAX
JMP 0x00047393
SUB ESP,0xc
PUSH EAX
CALL 0x0001b050
ADD ESP,0x10
JMP 0x00047428
SUB ESP,0x8
MOV dword ptr [EBP + 0xffffff5c],ECX
PUSH EAX
LEA EAX,[EBP + 0xffffff6c]
PUSH EAX
CALL 0x0001bb00
ADD ESP,0x10
MOV ECX,dword ptr [EBP + 0xffffff5c]
JMP 0x000474fc
CALL 0x0007ebe0
(translation_unit "undefined4 __gmpn_mul(void)\n\n{\n  uint *puVar1;\n  int iVar2;\n  code *pcVar3;\n  int iVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int iVar7;\n  uint uVar8;\n  uint uVar9;\n  undefined4 uVar10;\n  undefined1 *puVar11;\n  undefined1 *puVar12;\n  uint *puVar13;\n  int iVar14;\n  int unaff_EBX;\n  undefined1 *puVar15;\n  int iVar16;\n  undefined1 *puVar17;\n  undefined1 *puVar18;\n  undefined1 *puVar19;\n  int in_GS_OFFSET;\n  uint auStack_8014 [8133];\n  undefined1 *apuStack_100 [2];\n  int iStack_f8;\n  undefined1 *apuStack_f4 [4];\n  uint uStack_e4;\n  undefined1 auStack_e0 [204];\n  undefined4 uStack_14;\n  \n  puVar17 = &stack0xfffffffc;\n  uStack_14 = 0x46e9b;\n  entry();\n  puVar15 = auStack_e0;\n  puVar11 = auStack_e0;\n  puVar19 = *(undefined1 **)(puVar17 + 8);\n  puVar12 = *(undefined1 **)(puVar17 + 0xc);\n  puVar18 = *(undefined1 **)(puVar17 + 0x18);\n  *(undefined4 *)(puVar17 + -0xa0) = *(undefined4 *)(puVar17 + 0x14);\n  *(undefined4 *)(puVar17 + -0x1c) = *(undefined4 *)(in_GS_OFFSET + 0x14);\n  if (*(undefined1 **)(puVar17 + 0x10) == puVar18) {\n    *(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar12;\n    if (puVar12 == *(undefined1 **)(puVar17 + -0xa0)) {\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }\n    else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }\n    goto LAB_000471aa;\n  }\n  if (**(int **)(unaff_EBX + 0x56ebd) == 0) {\n    *(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd);\n    *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n    uStack_e4 = 0x47081;\n    __gmpn_cpuvec_init();\n    puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n    iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94);\n    *(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9);\n    if (iVar2 <= (int)puVar18) {\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }\n  }\n  else {\n    iVar2 = *(int *)(unaff_EBX + 0x56ef9);\n    *(int *)(puVar17 + -0x9c) = iVar2;\n    if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }\n  }\n  pcVar3 = *(code **)(*(int *)(puVar17 + -0x9c) + 0x68);\n  apuStack_100[1] = puVar12;\n  if ((*(int *)(puVar17 + 0x10) < 0x1f5) || (puVar18 == (undefined1 *)0x1)) {\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = *(int *)(puVar17 + 0x10);\n    auStack_8014[0x1fc4] = 0x47451;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n    puVar11 = auStack_e0;\n  }\n  else {\n    *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = 500;\n    auStack_8014[0x1fc4] = 0x46f33;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    apuStack_f4[1] = puVar17 + -0x90;\n    *(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];\n    apuStack_f4[0] = (undefined1 *)0x46f4e;\n    apuStack_f4[2] = puVar19 + 2000;\n    apuStack_f4[3] = puVar18;\n    (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n    iVar2 = *(int *)(puVar17 + 0x10);\n    puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);\n    *(int *)(puVar17 + -0xac) = (int)puVar18 * 4;\n    puVar19 = puVar19 + 2000;\n    while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }\n    if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n    apuStack_f4[0] = (undefined1 *)0x47047;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar19;\n    uStack_e4 = (uint)puVar18;\n    uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n    puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;\n    puVar11 = auStack_e0;\n  }\nLAB_000471aa:\n  if (*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14)) {\n    return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);\n  }\n                    /* WARNING: Subroutine does not return */\n  *(undefined4 *)(puVar11 + -4) = 0x47f0b;\n  FUN_0007ebe0();\n}\n\n" (function_definition "undefined4 __gmpn_mul(void)\n\n{\n  uint *puVar1;\n  int iVar2;\n  code *pcVar3;\n  int iVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int iVar7;\n  uint uVar8;\n  uint uVar9;\n  undefined4 uVar10;\n  undefined1 *puVar11;\n  undefined1 *puVar12;\n  uint *puVar13;\n  int iVar14;\n  int unaff_EBX;\n  undefined1 *puVar15;\n  int iVar16;\n  undefined1 *puVar17;\n  undefined1 *puVar18;\n  undefined1 *puVar19;\n  int in_GS_OFFSET;\n  uint auStack_8014 [8133];\n  undefined1 *apuStack_100 [2];\n  int iStack_f8;\n  undefined1 *apuStack_f4 [4];\n  uint uStack_e4;\n  undefined1 auStack_e0 [204];\n  undefined4 uStack_14;\n  \n  puVar17 = &stack0xfffffffc;\n  uStack_14 = 0x46e9b;\n  entry();\n  puVar15 = auStack_e0;\n  puVar11 = auStack_e0;\n  puVar19 = *(undefined1 **)(puVar17 + 8);\n  puVar12 = *(undefined1 **)(puVar17 + 0xc);\n  puVar18 = *(undefined1 **)(puVar17 + 0x18);\n  *(undefined4 *)(puVar17 + -0xa0) = *(undefined4 *)(puVar17 + 0x14);\n  *(undefined4 *)(puVar17 + -0x1c) = *(undefined4 *)(in_GS_OFFSET + 0x14);\n  if (*(undefined1 **)(puVar17 + 0x10) == puVar18) {\n    *(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar12;\n    if (puVar12 == *(undefined1 **)(puVar17 + -0xa0)) {\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }\n    else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }\n    goto LAB_000471aa;\n  }\n  if (**(int **)(unaff_EBX + 0x56ebd) == 0) {\n    *(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd);\n    *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n    uStack_e4 = 0x47081;\n    __gmpn_cpuvec_init();\n    puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n    iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94);\n    *(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9);\n    if (iVar2 <= (int)puVar18) {\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }\n  }\n  else {\n    iVar2 = *(int *)(unaff_EBX + 0x56ef9);\n    *(int *)(puVar17 + -0x9c) = iVar2;\n    if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }\n  }\n  pcVar3 = *(code **)(*(int *)(puVar17 + -0x9c) + 0x68);\n  apuStack_100[1] = puVar12;\n  if ((*(int *)(puVar17 + 0x10) < 0x1f5) || (puVar18 == (undefined1 *)0x1)) {\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = *(int *)(puVar17 + 0x10);\n    auStack_8014[0x1fc4] = 0x47451;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n    puVar11 = auStack_e0;\n  }\n  else {\n    *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = 500;\n    auStack_8014[0x1fc4] = 0x46f33;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    apuStack_f4[1] = puVar17 + -0x90;\n    *(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];\n    apuStack_f4[0] = (undefined1 *)0x46f4e;\n    apuStack_f4[2] = puVar19 + 2000;\n    apuStack_f4[3] = puVar18;\n    (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n    iVar2 = *(int *)(puVar17 + 0x10);\n    puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);\n    *(int *)(puVar17 + -0xac) = (int)puVar18 * 4;\n    puVar19 = puVar19 + 2000;\n    while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }\n    if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n    apuStack_f4[0] = (undefined1 *)0x47047;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar19;\n    uStack_e4 = (uint)puVar18;\n    uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n    puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;\n    puVar11 = auStack_e0;\n  }\nLAB_000471aa:\n  if (*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14)) {\n    return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);\n  }\n                    /* WARNING: Subroutine does not return */\n  *(undefined4 *)(puVar11 + -4) = 0x47f0b;\n  FUN_0007ebe0();\n}" type_identifier (function_declarator "__gmpn_mul(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  uint *puVar1;\n  int iVar2;\n  code *pcVar3;\n  int iVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int iVar7;\n  uint uVar8;\n  uint uVar9;\n  undefined4 uVar10;\n  undefined1 *puVar11;\n  undefined1 *puVar12;\n  uint *puVar13;\n  int iVar14;\n  int unaff_EBX;\n  undefined1 *puVar15;\n  int iVar16;\n  undefined1 *puVar17;\n  undefined1 *puVar18;\n  undefined1 *puVar19;\n  int in_GS_OFFSET;\n  uint auStack_8014 [8133];\n  undefined1 *apuStack_100 [2];\n  int iStack_f8;\n  undefined1 *apuStack_f4 [4];\n  uint uStack_e4;\n  undefined1 auStack_e0 [204];\n  undefined4 uStack_14;\n  \n  puVar17 = &stack0xfffffffc;\n  uStack_14 = 0x46e9b;\n  entry();\n  puVar15 = auStack_e0;\n  puVar11 = auStack_e0;\n  puVar19 = *(undefined1 **)(puVar17 + 8);\n  puVar12 = *(undefined1 **)(puVar17 + 0xc);\n  puVar18 = *(undefined1 **)(puVar17 + 0x18);\n  *(undefined4 *)(puVar17 + -0xa0) = *(undefined4 *)(puVar17 + 0x14);\n  *(undefined4 *)(puVar17 + -0x1c) = *(undefined4 *)(in_GS_OFFSET + 0x14);\n  if (*(undefined1 **)(puVar17 + 0x10) == puVar18) {\n    *(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar12;\n    if (puVar12 == *(undefined1 **)(puVar17 + -0xa0)) {\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }\n    else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }\n    goto LAB_000471aa;\n  }\n  if (**(int **)(unaff_EBX + 0x56ebd) == 0) {\n    *(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd);\n    *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n    uStack_e4 = 0x47081;\n    __gmpn_cpuvec_init();\n    puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n    iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94);\n    *(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9);\n    if (iVar2 <= (int)puVar18) {\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }\n  }\n  else {\n    iVar2 = *(int *)(unaff_EBX + 0x56ef9);\n    *(int *)(puVar17 + -0x9c) = iVar2;\n    if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }\n  }\n  pcVar3 = *(code **)(*(int *)(puVar17 + -0x9c) + 0x68);\n  apuStack_100[1] = puVar12;\n  if ((*(int *)(puVar17 + 0x10) < 0x1f5) || (puVar18 == (undefined1 *)0x1)) {\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = *(int *)(puVar17 + 0x10);\n    auStack_8014[0x1fc4] = 0x47451;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n    puVar11 = auStack_e0;\n  }\n  else {\n    *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = 500;\n    auStack_8014[0x1fc4] = 0x46f33;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    apuStack_f4[1] = puVar17 + -0x90;\n    *(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];\n    apuStack_f4[0] = (undefined1 *)0x46f4e;\n    apuStack_f4[2] = puVar19 + 2000;\n    apuStack_f4[3] = puVar18;\n    (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n    iVar2 = *(int *)(puVar17 + 0x10);\n    puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);\n    *(int *)(puVar17 + -0xac) = (int)puVar18 * 4;\n    puVar19 = puVar19 + 2000;\n    while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }\n    if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n    apuStack_f4[0] = (undefined1 *)0x47047;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar19;\n    uStack_e4 = (uint)puVar18;\n    uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n    puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;\n    puVar11 = auStack_e0;\n  }\nLAB_000471aa:\n  if (*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14)) {\n    return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);\n  }\n                    /* WARNING: Subroutine does not return */\n  *(undefined4 *)(puVar11 + -4) = 0x47f0b;\n  FUN_0007ebe0();\n}" { (declaration "uint *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "code *pcVar3;" type_identifier (pointer_declarator "*pcVar3" * identifier) ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "undefined4 *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "undefined4 uVar10;" type_identifier identifier ;) (declaration "undefined1 *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "undefined1 *puVar12;" type_identifier (pointer_declarator "*puVar12" * identifier) ;) (declaration "uint *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "int unaff_EBX;" primitive_type identifier ;) (declaration "undefined1 *puVar15;" type_identifier (pointer_declarator "*puVar15" * identifier) ;) (declaration "int iVar16;" primitive_type identifier ;) (declaration "undefined1 *puVar17;" type_identifier (pointer_declarator "*puVar17" * identifier) ;) (declaration "undefined1 *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "undefined1 *puVar19;" type_identifier (pointer_declarator "*puVar19" * identifier) ;) (declaration "int in_GS_OFFSET;" primitive_type identifier ;) (declaration "uint auStack_8014 [8133];" type_identifier (array_declarator "auStack_8014 [8133]" identifier [ number_literal ]) ;) (declaration "undefined1 *apuStack_100 [2];" type_identifier (pointer_declarator "*apuStack_100 [2]" * (array_declarator "apuStack_100 [2]" identifier [ number_literal ])) ;) (declaration "int iStack_f8;" primitive_type identifier ;) (declaration "undefined1 *apuStack_f4 [4];" type_identifier (pointer_declarator "*apuStack_f4 [4]" * (array_declarator "apuStack_f4 [4]" identifier [ number_literal ])) ;) (declaration "uint uStack_e4;" type_identifier identifier ;) (declaration "undefined1 auStack_e0 [204];" type_identifier (array_declarator "auStack_e0 [204]" identifier [ number_literal ]) ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "puVar17 = &stack0xfffffffc;" (assignment_expression "puVar17 = &stack0xfffffffc" identifier = (pointer_expression "&stack0xfffffffc" & identifier)) ;) (expression_statement "uStack_14 = 0x46e9b;" (assignment_expression "uStack_14 = 0x46e9b" identifier = number_literal) ;) (expression_statement "entry();" (call_expression "entry()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar15 = auStack_e0;" (assignment_expression "puVar15 = auStack_e0" identifier = identifier) ;) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" identifier = identifier) ;) (expression_statement "puVar19 = *(undefined1 **)(puVar17 + 8);" (assignment_expression "puVar19 = *(undefined1 **)(puVar17 + 8)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + 8)" * (cast_expression "(undefined1 **)(puVar17 + 8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 8)" ( (binary_expression "puVar17 + 8" identifier + number_literal) ))))) ;) (expression_statement "puVar12 = *(undefined1 **)(puVar17 + 0xc);" (assignment_expression "puVar12 = *(undefined1 **)(puVar17 + 0xc)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + 0xc)" * (cast_expression "(undefined1 **)(puVar17 + 0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0xc)" ( (binary_expression "puVar17 + 0xc" identifier + number_literal) ))))) ;) (expression_statement "puVar18 = *(undefined1 **)(puVar17 + 0x18);" (assignment_expression "puVar18 = *(undefined1 **)(puVar17 + 0x18)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" * (cast_expression "(undefined1 **)(puVar17 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xa0) = *(undefined4 *)(puVar17 + 0x14);" (assignment_expression "*(undefined4 *)(puVar17 + -0xa0) = *(undefined4 *)(puVar17 + 0x14)" (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x14)" * (cast_expression "(undefined4 *)(puVar17 + 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x14)" ( (binary_expression "puVar17 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x1c) = *(undefined4 *)(in_GS_OFFSET + 0x14);" (assignment_expression "*(undefined4 *)(puVar17 + -0x1c) = *(undefined4 *)(in_GS_OFFSET + 0x14)" (pointer_expression "*(undefined4 *)(puVar17 + -0x1c)" * (cast_expression "(undefined4 *)(puVar17 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x1c)" ( (binary_expression "puVar17 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(in_GS_OFFSET + 0x14)" * (cast_expression "(undefined4 *)(in_GS_OFFSET + 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_GS_OFFSET + 0x14)" ( (binary_expression "in_GS_OFFSET + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (*(undefined1 **)(puVar17 + 0x10) == puVar18) {\n    *(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar12;\n    if (puVar12 == *(undefined1 **)(puVar17 + -0xa0)) {\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }\n    else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }\n    goto LAB_000471aa;\n  }" if (parenthesized_expression "(*(undefined1 **)(puVar17 + 0x10) == puVar18)" ( (binary_expression "*(undefined1 **)(puVar17 + 0x10) == puVar18" (pointer_expression "*(undefined1 **)(puVar17 + 0x10)" * (cast_expression "(undefined1 **)(puVar17 + 0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) == identifier) )) (compound_statement "{\n    *(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar12;\n    if (puVar12 == *(undefined1 **)(puVar17 + -0xa0)) {\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }\n    else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }\n    goto LAB_000471aa;\n  }" { (expression_statement "*(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2;" (assignment_expression "*(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + 0x10) * 2" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) * number_literal)) ;) (expression_statement "apuStack_f4[1] = puVar19;" (assignment_expression "apuStack_f4[1] = puVar19" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[2] = puVar12;" (assignment_expression "apuStack_f4[2] = puVar12" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (puVar12 == *(undefined1 **)(puVar17 + -0xa0)) {\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }\n    else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }" if (parenthesized_expression "(puVar12 == *(undefined1 **)(puVar17 + -0xa0))" ( (binary_expression "puVar12 == *(undefined1 **)(puVar17 + -0xa0)" identifier == (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) )) (compound_statement "{\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }" { (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10)" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + 0x10)" * (cast_expression "(undefined1 **)(puVar17 + 0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x477dd;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x477dd" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x477dd" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "__gmpn_sqr();" (call_expression "__gmpn_sqr()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" identifier = identifier) ;) }) (else_clause "else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }" else (compound_statement "{\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }" { (expression_statement "uStack_e4 = *(uint *)(puVar17 + 0x10);" (assignment_expression "uStack_e4 = *(uint *)(puVar17 + 0x10)" identifier = (pointer_expression "*(uint *)(puVar17 + 0x10)" * (cast_expression "(uint *)(puVar17 + 0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x471a7;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x471a7" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x471a7" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "__gmpn_mul_n();" (call_expression "__gmpn_mul_n()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" identifier = identifier) ;) }))) (goto_statement "goto LAB_000471aa;" goto statement_identifier ;) })) (if_statement "if (**(int **)(unaff_EBX + 0x56ebd) == 0) {\n    *(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd);\n    *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n    uStack_e4 = 0x47081;\n    __gmpn_cpuvec_init();\n    puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n    iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94);\n    *(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9);\n    if (iVar2 <= (int)puVar18) {\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }\n  }\n  else {\n    iVar2 = *(int *)(unaff_EBX + 0x56ef9);\n    *(int *)(puVar17 + -0x9c) = iVar2;\n    if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }\n  }" if (parenthesized_expression "(**(int **)(unaff_EBX + 0x56ebd) == 0)" ( (binary_expression "**(int **)(unaff_EBX + 0x56ebd) == 0" (pointer_expression "**(int **)(unaff_EBX + 0x56ebd)" * (pointer_expression "*(int **)(unaff_EBX + 0x56ebd)" * (cast_expression "(int **)(unaff_EBX + 0x56ebd)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_EBX + 0x56ebd)" ( (binary_expression "unaff_EBX + 0x56ebd" identifier + number_literal) ))))) == number_literal) )) (compound_statement "{\n    *(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd);\n    *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n    uStack_e4 = 0x47081;\n    __gmpn_cpuvec_init();\n    puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n    iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94);\n    *(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9);\n    if (iVar2 <= (int)puVar18) {\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }\n  }" { (expression_statement "*(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd);" (assignment_expression "*(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd)" (pointer_expression "*(int **)(puVar17 + -0xa8)" * (cast_expression "(int **)(puVar17 + -0xa8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = (pointer_expression "*(int **)(unaff_EBX + 0x56ebd)" * (cast_expression "(int **)(unaff_EBX + 0x56ebd)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_EBX + 0x56ebd)" ( (binary_expression "unaff_EBX + 0x56ebd" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xa4) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa4) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = identifier) ;) (expression_statement "uStack_e4 = 0x47081;" (assignment_expression "uStack_e4 = 0x47081" identifier = number_literal) ;) (expression_statement "__gmpn_cpuvec_init();" (call_expression "__gmpn_cpuvec_init()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar12 = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "puVar12 = *(undefined1 **)(puVar17 + -0xa4)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94);" (assignment_expression "iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94)" identifier = (pointer_expression "*(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94)" * (cast_expression "(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(unaff_EBX + 0x56ef9) + 0x94)" ( (binary_expression "*(int *)(unaff_EBX + 0x56ef9) + 0x94" (pointer_expression "*(int *)(unaff_EBX + 0x56ef9)" * (cast_expression "(int *)(unaff_EBX + 0x56ef9)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBX + 0x56ef9)" ( (binary_expression "unaff_EBX + 0x56ef9" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "*(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9);" (assignment_expression "*(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9)" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = (pointer_expression "*(int *)(unaff_EBX + 0x56ef9)" * (cast_expression "(int *)(unaff_EBX + 0x56ef9)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBX + 0x56ef9)" ( (binary_expression "unaff_EBX + 0x56ef9" identifier + number_literal) ))))) ;) (if_statement "if (iVar2 <= (int)puVar18) {\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }" if (parenthesized_expression "(iVar2 <= (int)puVar18)" ( (binary_expression "iVar2 <= (int)puVar18" identifier <= (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }" { (if_statement "if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }" if (parenthesized_expression "(**(int **)(puVar17 + -0xa8) == 0)" ( (binary_expression "**(int **)(puVar17 + -0xa8) == 0" (pointer_expression "**(int **)(puVar17 + -0xa8)" * (pointer_expression "*(int **)(puVar17 + -0xa8)" * (cast_expression "(int **)(puVar17 + -0xa8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) == number_literal) )) (compound_statement "{\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }" { (expression_statement "*(undefined1 **)(puVar17 + -0xa4) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa4) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = identifier) ;) (expression_statement "uStack_e4 = 0x470b6;" (assignment_expression "uStack_e4 = 0x470b6" identifier = number_literal) ;) (expression_statement "__gmpn_cpuvec_init();" (call_expression "__gmpn_cpuvec_init()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar12 = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "puVar12 = *(undefined1 **)(puVar17 + -0xa4)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) })) (goto_statement "goto LAB_000470c0;" goto statement_identifier ;) })) }) (else_clause "else {\n    iVar2 = *(int *)(unaff_EBX + 0x56ef9);\n    *(int *)(puVar17 + -0x9c) = iVar2;\n    if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }\n  }" else (compound_statement "{\n    iVar2 = *(int *)(unaff_EBX + 0x56ef9);\n    *(int *)(puVar17 + -0x9c) = iVar2;\n    if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }\n  }" { (expression_statement "iVar2 = *(int *)(unaff_EBX + 0x56ef9);" (assignment_expression "iVar2 = *(int *)(unaff_EBX + 0x56ef9)" identifier = (pointer_expression "*(int *)(unaff_EBX + 0x56ef9)" * (cast_expression "(int *)(unaff_EBX + 0x56ef9)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBX + 0x56ef9)" ( (binary_expression "unaff_EBX + 0x56ef9" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar17 + -0x9c) = iVar2;" (assignment_expression "*(int *)(puVar17 + -0x9c) = iVar2" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = identifier) ;) (if_statement "if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }" if (parenthesized_expression "(*(int *)(iVar2 + 0x94) <= (int)puVar18)" ( (binary_expression "*(int *)(iVar2 + 0x94) <= (int)puVar18" (pointer_expression "*(int *)(iVar2 + 0x94)" * (cast_expression "(int *)(iVar2 + 0x94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x94)" ( (binary_expression "iVar2 + 0x94" identifier + number_literal) )))) <= (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }" { (labeled_statement "LAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }" statement_identifier : (if_statement "if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }" if (parenthesized_expression "((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98))" ( (binary_expression "(int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) < (pointer_expression "*(int *)(*(int *)(puVar17 + -0x9c) + 0x98)" * (cast_expression "(int *)(*(int *)(puVar17 + -0x9c) + 0x98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x98)" ( (binary_expression "*(int *)(puVar17 + -0x9c) + 0x98" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }" { (expression_statement "*(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;" (assignment_expression "*(int *)(puVar17 + -0xa4) = (int)puVar18 * 8" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "*(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xc0) = (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "*(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;" (assignment_expression "*(int *)(puVar17 + -0xcc) = (int)puVar18 * 5" (pointer_expression "*(int *)(puVar17 + -0xcc)" * (cast_expression "(int *)(puVar17 + -0xcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xcc)" ( (binary_expression "puVar17 + -0xcc" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 5" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);" (assignment_expression "iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0)" identifier = (unary_expression "-((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0)" - (parenthesized_expression "((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0)" ( (binary_expression "(((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0" (binary_expression "(((int)puVar18 * 9) / 2) * 4 + 0x11bU" (binary_expression "(((int)puVar18 * 9) / 2) * 4" (parenthesized_expression "(((int)puVar18 * 9) / 2)" ( (binary_expression "((int)puVar18 * 9) / 2" (parenthesized_expression "((int)puVar18 * 9)" ( (binary_expression "(int)puVar18 * 9" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )) / number_literal) )) * number_literal) + number_literal) & number_literal) )))) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;" (assignment_expression "*(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2" (pointer_expression "*(undefined1 **)(puVar17 + -0xbc)" * (cast_expression "(undefined1 **)(puVar17 + -0xbc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) )))) = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) (expression_statement "*(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;" (assignment_expression "*(int *)(puVar17 + -0xb4) = (int)puVar18 * 2" (pointer_expression "*(int *)(puVar17 + -0xb4)" * (cast_expression "(int *)(puVar17 + -0xb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 2" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "*(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;" (assignment_expression "*(int *)(puVar17 + -0xc4) = (int)puVar18 * 3" (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 3" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (if_statement "if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }" if (parenthesized_expression "(*(int *)(puVar17 + 0x10) < (int)puVar18 * 3)" ( (binary_expression "*(int *)(puVar17 + 0x10) < (int)puVar18 * 3" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) < (binary_expression "(int)puVar18 * 3" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )) (compound_statement "{\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }" { (expression_statement "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);" (assignment_expression "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10)" (pointer_expression "*(undefined1 **)(puVar17 + -0x9c)" * (cast_expression "(undefined1 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = (binary_expression "puVar18 + *(int *)(puVar17 + 0x10)" identifier + (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))))) ;) (if_statement "if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" if (parenthesized_expression "(*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc))" ( (binary_expression "*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)" (binary_expression "*(int *)(puVar17 + 0x10) * 4" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) * number_literal) < (pointer_expression "*(int *)(puVar17 + -0xcc)" * (cast_expression "(int *)(puVar17 + -0xcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xcc)" ( (binary_expression "puVar17 + -0xcc" identifier + number_literal) ))))) )) (compound_statement "{\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" { (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8)" * (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 8)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 8" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 4)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 4" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2)" * (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)apuStack_f4 + iVar2)" ( (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)((int)&iStack_f8 + iVar2)" * (cast_expression "(undefined4 *)((int)&iStack_f8 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&iStack_f8 + iVar2)" ( (binary_expression "(int)&iStack_f8 + iVar2" (cast_expression "(int)&iStack_f8" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&iStack_f8" & identifier)) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2 + 4)" ( (binary_expression "(int)apuStack_100 + iVar2 + 4" (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2)" ( (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;" (assignment_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa" (pointer_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)auStack_8014 + iVar2 + 0x7f10)" ( (binary_expression "(int)auStack_8014 + iVar2 + 0x7f10" (binary_expression "(int)auStack_8014 + iVar2" (cast_expression "(int)auStack_8014" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom22_mul();" (call_expression "__gmpn_toom22_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar11 = auStack_e0 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar2" identifier = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) }) (else_clause "else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" else (if_statement "if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" if (parenthesized_expression "(*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18)" ( (binary_expression "*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18" (binary_expression "*(int *)(puVar17 + 0x10) * 4" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) * number_literal) < (binary_expression "*(int *)(puVar17 + -0xa4) - (int)puVar18" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) - (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier))) )) (compound_statement "{\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" { (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8)" * (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 8)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 8" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 4)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 4" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2)" * (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)apuStack_f4 + iVar2)" ( (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)((int)&iStack_f8 + iVar2)" * (cast_expression "(undefined4 *)((int)&iStack_f8 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&iStack_f8 + iVar2)" ( (binary_expression "(int)&iStack_f8 + iVar2" (cast_expression "(int)&iStack_f8" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&iStack_f8" & identifier)) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2 + 4)" ( (binary_expression "(int)apuStack_100 + iVar2 + 4" (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2)" ( (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;" (assignment_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a" (pointer_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)auStack_8014 + iVar2 + 0x7f10)" ( (binary_expression "(int)auStack_8014 + iVar2 + 0x7f10" (binary_expression "(int)auStack_8014 + iVar2" (cast_expression "(int)auStack_8014" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom32_mul();" (call_expression "__gmpn_toom32_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar11 = auStack_e0 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar2" identifier = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) }) (else_clause "else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" else (compound_statement "{\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" { (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8)" * (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 8)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 8" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 4)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 4" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2)" * (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)apuStack_f4 + iVar2)" ( (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)((int)&iStack_f8 + iVar2)" * (cast_expression "(undefined4 *)((int)&iStack_f8 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&iStack_f8 + iVar2)" ( (binary_expression "(int)&iStack_f8 + iVar2" (cast_expression "(int)&iStack_f8" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&iStack_f8" & identifier)) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2 + 4)" ( (binary_expression "(int)apuStack_100 + iVar2 + 4" (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2)" ( (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;" (assignment_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a" (pointer_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)auStack_8014 + iVar2 + 0x7f10)" ( (binary_expression "(int)auStack_8014 + iVar2 + 0x7f10" (binary_expression "(int)auStack_8014 + iVar2" (cast_expression "(int)auStack_8014" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar11 = auStack_e0 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar2" identifier = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) }))))) }) (else_clause "else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }" else (compound_statement "{\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }" { (expression_statement "*(undefined1 **)(puVar17 + -0xb0) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xb0) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xb0)" * (cast_expression "(undefined1 **)(puVar17 + -0xb0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar4 = -((int)puVar18 * 0x10 + 0x10);" (assignment_expression "iVar4 = -((int)puVar18 * 0x10 + 0x10)" identifier = (unary_expression "-((int)puVar18 * 0x10 + 0x10)" - (parenthesized_expression "((int)puVar18 * 0x10 + 0x10)" ( (binary_expression "(int)puVar18 * 0x10 + 0x10" (binary_expression "(int)puVar18 * 0x10" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) )))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x18" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x1c" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x20" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;" (assignment_expression "*(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2" (pointer_expression "*(undefined1 **)(puVar17 + -0xac)" * (cast_expression "(undefined1 **)(puVar17 + -0xac)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier)) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x24" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);" (assignment_expression "iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4)" identifier = (binary_expression "*(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4)" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) - (pointer_expression "*(int *)(puVar17 + -0xb4)" * (cast_expression "(int *)(puVar17 + -0xb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) )))))) ;) (expression_statement "puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);" (assignment_expression "puVar19 = puVar19 + *(int *)(puVar17 + -0xa4)" identifier = (binary_expression "puVar19 + *(int *)(puVar17 + -0xa4)" identifier + (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))))) ;) (expression_statement "*(int *)(puVar17 + -0xa8) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xa8) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);" (assignment_expression "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4)" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4)" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) + (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))))) ;) (expression_statement "*(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);" (assignment_expression "*(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0)" (pointer_expression "*(int *)(puVar17 + -200)" * (cast_expression "(int *)(puVar17 + -200)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -200)" ( (binary_expression "puVar17 + -200" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0)" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) + (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) )))))) ;) (if_statement "if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" if (parenthesized_expression "(*(int *)(puVar17 + -0xc4) <= iVar14)" ( (binary_expression "*(int *)(puVar17 + -0xc4) <= iVar14" (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))) <= identifier) )) (compound_statement "{\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" { (expression_statement "*(undefined1 **)(puVar17 + 0x18) = puVar18;" (assignment_expression "*(undefined1 **)(puVar17 + 0x18) = puVar18" (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" * (cast_expression "(undefined1 **)(puVar17 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar5 = *(int *)(puVar17 + -0xb4);" (assignment_expression "iVar5 = *(int *)(puVar17 + -0xb4)" identifier = (pointer_expression "*(int *)(puVar17 + -0xb4)" * (cast_expression "(int *)(puVar17 + -0xb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (do_statement "do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);" do (compound_statement "{\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            }" { (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x18)" * (cast_expression "(undefined4 *)(puVar17 + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;" (assignment_expression "*(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5" (pointer_expression "*(int *)(auStack_e0 + iVar4 + iVar2 + -0x18)" * (cast_expression "(int *)(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x18" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x1c" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb0)" * (cast_expression "(undefined4 *)(puVar17 + -0xb0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x20" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x24" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar6 = *(undefined4 **)(puVar17 + -0x9c);" (assignment_expression "puVar6 = *(undefined4 **)(puVar17 + -0x9c)" identifier = (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = *(int *)(puVar17 + -0xa4);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xa4)" identifier = (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -4)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -4" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x18)" * (cast_expression "(undefined4 *)(puVar17 + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;" (assignment_expression "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xb0) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) + identifier)) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -8)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -8" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;" (assignment_expression "*(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xa8) - iVar5" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) - identifier)) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "pcVar3 = (code *)*puVar6;" (assignment_expression "pcVar3 = (code *)*puVar6" identifier = (cast_expression "(code *)*puVar6" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar6" * identifier))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "uVar10 = (*pcVar3)();" (assignment_expression "uVar10 = (*pcVar3)()" identifier = (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( )))) ;) (expression_statement "iVar14 = *(int *)(puVar17 + -0x9c);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0x9c)" identifier = (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xb8) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xb8) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xb8)" * (cast_expression "(undefined4 *)(puVar17 + -0xb8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar7 = *(int *)(puVar17 + -0xc0);" (assignment_expression "iVar7 = *(int *)(puVar17 + -0xc0)" identifier = (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;" (assignment_expression "*(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5" (pointer_expression "*(int *)(auStack_e0 + iVar4 + iVar2 + -8)" * (cast_expression "(int *)(auStack_e0 + iVar4 + iVar2 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -8)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -8" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;" (assignment_expression "*(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7" (pointer_expression "*(undefined1 **)(puVar17 + -0xb4)" * (cast_expression "(undefined1 **)(puVar17 + -0xb4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) )))) = (binary_expression "puVar19 + iVar7" identifier + identifier)) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -200)" * (cast_expression "(undefined4 *)(puVar17 + -200)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -200)" ( (binary_expression "puVar17 + -200" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (binary_expression "puVar19 + iVar7" identifier + identifier)) ;) (expression_statement "pcVar3 = *(code **)(iVar14 + 0x28);" (assignment_expression "pcVar3 = *(code **)(iVar14 + 0x28)" identifier = (pointer_expression "*(code **)(iVar14 + 0x28)" * (cast_expression "(code **)(iVar14 + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar14 + 0x28)" ( (binary_expression "iVar14 + 0x28" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "puVar13 = *(uint **)(puVar17 + -0xb4);" (assignment_expression "puVar13 = *(uint **)(puVar17 + -0xb4)" identifier = (pointer_expression "*(uint **)(puVar17 + -0xb4)" * (cast_expression "(uint **)(puVar17 + -0xb4)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "uVar8 = *(uint *)(puVar17 + -0xb8);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -0xb8)" identifier = (pointer_expression "*(uint *)(puVar17 + -0xb8)" * (cast_expression "(uint *)(puVar17 + -0xb8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) ))))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" { (do_statement "do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);" do (compound_statement "{\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                }" { (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);" (assignment_expression "puVar19 = puVar19 + *(int *)(puVar17 + -0xa4)" identifier = (binary_expression "puVar19 + *(int *)(puVar17 + -0xa4)" identifier + (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))))) ;) (expression_statement "iVar14 = *(int *)(puVar17 + -0xa8);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xa8)" identifier = (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) }) while (parenthesized_expression "(*(int *)(puVar17 + -0xc4) <= iVar14)" ( (binary_expression "*(int *)(puVar17 + -0xc4) <= iVar14" (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))) <= identifier) )) ;) (expression_statement "puVar18 = *(undefined1 **)(puVar17 + 0x18);" (assignment_expression "puVar18 = *(undefined1 **)(puVar17 + 0x18)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" * (cast_expression "(undefined1 **)(puVar17 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) })) (if_statement "if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }" if (parenthesized_expression "(iVar14 * 4 < *(int *)(puVar17 + -0xcc))" ( (binary_expression "iVar14 * 4 < *(int *)(puVar17 + -0xcc)" (binary_expression "iVar14 * 4" identifier * number_literal) < (pointer_expression "*(int *)(puVar17 + -0xcc)" * (cast_expression "(int *)(puVar17 + -0xcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xcc)" ( (binary_expression "puVar17 + -0xcc" identifier + number_literal) ))))) )) (compound_statement "{\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }" { (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;" (assignment_expression "*(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14" (pointer_expression "*(int *)(auStack_e0 + iVar4 + iVar2 + -0x18)" * (cast_expression "(int *)(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x18" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x1c" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb0)" * (cast_expression "(undefined4 *)(puVar17 + -0xb0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x20" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x24" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom22_mul();" (call_expression "__gmpn_toom22_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }" else (if_statement "if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }" if (parenthesized_expression "(iVar14 * 4 < (int)puVar18 * 7)" ( (binary_expression "iVar14 * 4 < (int)puVar18 * 7" (binary_expression "iVar14 * 4" identifier * number_literal) < (binary_expression "(int)puVar18 * 7" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )) (compound_statement "{\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }" { (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x18" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa8)" * (cast_expression "(undefined4 *)(puVar17 + -0xa8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x1c" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb0)" * (cast_expression "(undefined4 *)(puVar17 + -0xb0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x20" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x24" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom32_mul();" (call_expression "__gmpn_toom32_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }" else (compound_statement "{\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }" { (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x18" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa8)" * (cast_expression "(undefined4 *)(puVar17 + -0xa8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x1c" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb0)" * (cast_expression "(undefined4 *)(puVar17 + -0xb0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x20" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x24" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" identifier (argument_list "()" ( ))) ;) }))))) (expression_statement "puVar6 = *(undefined4 **)(puVar17 + -0x9c);" (assignment_expression "puVar6 = *(undefined4 **)(puVar17 + -0x9c)" identifier = (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -4)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -4" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -8)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -8" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "pcVar3 = (code *)*puVar6;" (assignment_expression "pcVar3 = (code *)*puVar6" identifier = (cast_expression "(code *)*puVar6" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar6" * identifier))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "uVar10 = (*pcVar3)();" (assignment_expression "uVar10 = (*pcVar3)()" identifier = (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xa0) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xa0) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar14 = *(int *)(puVar17 + -0x9c);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0x9c)" identifier = (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));" (assignment_expression "puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0))" identifier = (cast_expression "(uint *)(puVar19 + *(int *)(puVar17 + -0xc0))" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar19 + *(int *)(puVar17 + -0xc0))" ( (binary_expression "puVar19 + *(int *)(puVar17 + -0xc0)" identifier + (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) ))))) )))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -8)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -8" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa8)" * (cast_expression "(undefined4 *)(puVar17 + -0xa8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -200)" * (cast_expression "(undefined4 *)(puVar17 + -200)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -200)" ( (binary_expression "puVar17 + -200" identifier + number_literal) ))))) ;) (expression_statement "*(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;" (assignment_expression "*(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13" (pointer_expression "*(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10)" * (cast_expression "(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "pcVar3 = *(code **)(iVar14 + 0x28);" (assignment_expression "pcVar3 = *(code **)(iVar14 + 0x28)" identifier = (pointer_expression "*(code **)(iVar14 + 0x28)" * (cast_expression "(code **)(iVar14 + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar14 + 0x28)" ( (binary_expression "iVar14 + 0x28" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "uVar8 = *(uint *)(puVar17 + -0xa0);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -0xa0)" identifier = (pointer_expression "*(uint *)(puVar17 + -0xa0)" * (cast_expression "(uint *)(puVar17 + -0xa0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }" { (do_statement "do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);" do (compound_statement "{\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            }" { (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);" (assignment_expression "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8)" (pointer_expression "*(undefined1 **)(puVar17 + -0x9c)" * (cast_expression "(undefined1 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = (binary_expression "puVar18 + *(int *)(puVar17 + -0xa8)" identifier + (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))))) ;) (expression_statement "puVar11 = auStack_e0 + iVar4 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar4 + iVar2" identifier = (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier)) ;) }))) (goto_statement "goto LAB_000471aa;" goto statement_identifier ;) }))) (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10)" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = (binary_expression "puVar18 + *(int *)(puVar17 + 0x10)" identifier + (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))))) ;) (if_statement "if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }" if (parenthesized_expression "((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3))" ( (binary_expression "(3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)" (parenthesized_expression "(3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10)))" ( (binary_expression "3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))" number_literal < (cast_expression "(int)(puVar18 + *(int *)(puVar17 + 0x10))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(puVar18 + *(int *)(puVar17 + 0x10))" ( (binary_expression "puVar18 + *(int *)(puVar17 + 0x10)" identifier + (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) )))) )) && (parenthesized_expression "(*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)" ( (comma_expression "*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3" (assignment_expression "*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 3" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) , (binary_expression "1999 < (int)puVar18 * 3" number_literal < (binary_expression "(int)puVar18 * 3" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ))) )) (compound_statement "{\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }" { (expression_statement "iVar2 = (int)puVar18 * 8;" (assignment_expression "iVar2 = (int)puVar18 * 8" identifier = (binary_expression "(int)puVar18 * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (if_statement "if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }" if (parenthesized_expression "(iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10))" ( (binary_expression "iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)" (binary_expression "iVar2 - *(int *)(puVar17 + 0x10) == 0" (binary_expression "iVar2 - *(int *)(puVar17 + 0x10)" identifier - (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) == number_literal) || (binary_expression "iVar2 < *(int *)(puVar17 + 0x10)" identifier < (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))))) )) (compound_statement "{\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }" { (expression_statement "*(int *)(puVar17 + -0xb8) = iVar2;" (assignment_expression "*(int *)(puVar17 + -0xb8) = iVar2" (pointer_expression "*(int *)(puVar17 + -0xb8)" * (cast_expression "(int *)(puVar17 + -0xb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xac) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xac) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xac)" * (cast_expression "(undefined1 **)(puVar17 + -0xac)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x94) = 0;" (assignment_expression "*(undefined4 *)(puVar17 + -0x94) = 0" (pointer_expression "*(undefined4 *)(puVar17 + -0x94)" * (cast_expression "(undefined4 *)(puVar17 + -0x94)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x94)" ( (binary_expression "puVar17 + -0x94" identifier + number_literal) )))) = number_literal) ;) (expression_statement "apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);" (assignment_expression "apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2)" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)(((int)puVar18 * 9 >> 1) << 2)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(((int)puVar18 * 9 >> 1) << 2)" ( (binary_expression "((int)puVar18 * 9 >> 1) << 2" (parenthesized_expression "((int)puVar18 * 9 >> 1)" ( (binary_expression "(int)puVar18 * 9 >> 1" (binary_expression "(int)puVar18 * 9" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) >> number_literal) )) << number_literal) )))) ;) (expression_statement "apuStack_f4[1] = puVar17 + -0x94;" (assignment_expression "apuStack_f4[1] = puVar17 + -0x94" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (binary_expression "puVar17 + -0x94" identifier + number_literal)) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x47238;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x47238" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x47238" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar10 = __gmp_tmp_reentrant_alloc();" (assignment_expression "uVar10 = __gmp_tmp_reentrant_alloc()" identifier = (call_expression "__gmp_tmp_reentrant_alloc()" identifier (argument_list "()" ( )))) ;) (expression_statement "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);" (assignment_expression "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac)" (subscript_expression "apuStack_100[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xac)" * (cast_expression "(undefined1 **)(puVar17 + -0xac)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "iStack_f8 = *(int *)(puVar17 + -0xa4);" (assignment_expression "iStack_f8 = *(int *)(puVar17 + -0xa4)" identifier = (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "apuStack_100[0] = puVar19;" (assignment_expression "apuStack_100[0] = puVar19" (subscript_expression "apuStack_100[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xa8) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xa8) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xa8)" * (cast_expression "(undefined4 *)(puVar17 + -0xa8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = identifier) ;) (expression_statement "auStack_8014[0x1fc4] = 0x4725a;" (assignment_expression "auStack_8014[0x1fc4] = 0x4725a" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "__gmpn_nussbaumer_mul();" (call_expression "__gmpn_nussbaumer_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xbc) = (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xbc)" * (cast_expression "(int *)(puVar17 + -0xbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "*(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;" (assignment_expression "*(int *)(puVar17 + -0xc4) = (int)puVar18 * -3" (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * -3" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);" (assignment_expression "iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10)" identifier = (binary_expression "(int)puVar18 * -3 + *(int *)(puVar17 + 0x10)" (binary_expression "(int)puVar18 * -3" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))))) ;) (expression_statement "*(int *)(puVar17 + -0xb4) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xb4) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xb4)" * (cast_expression "(int *)(puVar17 + -0xb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar2 = *(int *)(puVar17 + -0xa4) * 4;" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xa4) * 4" identifier = (binary_expression "*(int *)(puVar17 + -0xa4) * 4" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) * number_literal)) ;) (expression_statement "puVar19 = puVar19 + iVar2;" (assignment_expression "puVar19 = puVar19 + iVar2" identifier = (binary_expression "puVar19 + iVar2" identifier + identifier)) ;) (expression_statement "*(int *)(puVar17 + -0xb0) = iVar2;" (assignment_expression "*(int *)(puVar17 + -0xb0) = iVar2" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;" (assignment_expression "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xac) + iVar2" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) + identifier)) ;) (expression_statement "*(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;" (assignment_expression "*(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18" (pointer_expression "*(int *)(puVar17 + -200)" * (cast_expression "(int *)(puVar17 + -200)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -200)" ( (binary_expression "puVar17 + -200" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xb8) - (int)puVar18" (pointer_expression "*(int *)(puVar17 + -0xb8)" * (cast_expression "(int *)(puVar17 + -0xb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) )))) - (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" if (parenthesized_expression "(iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18)" ( (binary_expression "iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18" (binary_expression "iVar14 * 2" identifier * number_literal) < (binary_expression "*(int *)(puVar17 + -0xb8) - (int)puVar18" (pointer_expression "*(int *)(puVar17 + -0xb8)" * (cast_expression "(int *)(puVar17 + -0xb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) )))) - (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier))) )) (compound_statement "{\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }" { (expression_statement "*(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);" (assignment_expression "*(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc)" (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc)" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) + (pointer_expression "*(int *)(puVar17 + -0xbc)" * (cast_expression "(int *)(puVar17 + -0xbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) )))))) ;) }) (else_clause "else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" else (compound_statement "{\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" { (expression_statement "*(undefined1 **)(puVar17 + 0x18) = puVar18;" (assignment_expression "*(undefined1 **)(puVar17 + 0x18) = puVar18" (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" * (cast_expression "(undefined1 **)(puVar17 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);" (assignment_expression "*(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc)" (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc)" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) + (pointer_expression "*(int *)(puVar17 + -0xbc)" * (cast_expression "(int *)(puVar17 + -0xbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) )))))) ;) (do_statement "do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);" do (compound_statement "{\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            }" { (expression_statement "apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);" (assignment_expression "apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18)" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" * (cast_expression "(undefined1 **)(puVar17 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "iStack_f8 = *(int *)(puVar17 + -0xa4);" (assignment_expression "iStack_f8 = *(int *)(puVar17 + -0xa4)" identifier = (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);" (assignment_expression "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac)" (subscript_expression "apuStack_100[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xac)" * (cast_expression "(undefined1 **)(puVar17 + -0xac)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);" (assignment_expression "apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8)" (subscript_expression "apuStack_100[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "auStack_8014[0x1fc4] = 0x47303;" (assignment_expression "auStack_8014[0x1fc4] = 0x47303" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "__gmpn_nussbaumer_mul();" (call_expression "__gmpn_nussbaumer_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "uStack_e4 = *(uint *)(puVar17 + 0x18);" (assignment_expression "uStack_e4 = *(uint *)(puVar17 + 0x18)" identifier = (pointer_expression "*(uint *)(puVar17 + 0x18)" * (cast_expression "(uint *)(puVar17 + 0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8)" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);" (assignment_expression "iVar14 = iVar14 + *(int *)(puVar17 + -0xc4)" identifier = (binary_expression "iVar14 + *(int *)(puVar17 + -0xc4)" identifier + (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))))) ;) (expression_statement "apuStack_f4[1] = puVar19;" (assignment_expression "apuStack_f4[1] = puVar19" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[2] = puVar19;" (assignment_expression "apuStack_f4[2] = puVar19" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);" (assignment_expression "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0)" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0)" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) + (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))))) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x4732b;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x4732b" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x4732b" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();" (assignment_expression "uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))()" identifier = (call_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))()" (parenthesized_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))" ( (pointer_expression "*(code *)**(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(code *)**(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar17 + -0x9c)" * (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))))) )) (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xb8) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xb8) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xb8)" * (cast_expression "(undefined4 *)(puVar17 + -0xb8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) )))) = identifier) ;) (expression_statement "apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);" (assignment_expression "apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc)" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (binary_expression "puVar19 + *(int *)(puVar17 + -0xbc)" identifier + (pointer_expression "*(int *)(puVar17 + -0xbc)" * (cast_expression "(int *)(puVar17 + -0xbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) )))))) ;) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4)" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];" (assignment_expression "*(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1]" (pointer_expression "*(undefined1 **)(puVar17 + -0xb4)" * (cast_expression "(undefined1 **)(puVar17 + -0xb4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) )))) = (subscript_expression "apuStack_f4[1]" identifier [ number_literal ])) ;) (expression_statement "apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);" (assignment_expression "apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0)" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xc0)" * (cast_expression "(undefined1 **)(puVar17 + -0xc0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x47359;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x47359" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x47359" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))" ( (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" * (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" * (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x28)" ( (binary_expression "*(int *)(puVar17 + -0x9c) + 0x28" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "puVar13 = *(uint **)(puVar17 + -0xb4);" (assignment_expression "puVar13 = *(uint **)(puVar17 + -0xb4)" identifier = (pointer_expression "*(uint **)(puVar17 + -0xb4)" * (cast_expression "(uint **)(puVar17 + -0xb4)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "uVar8 = *(uint *)(puVar17 + -0xb8);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -0xb8)" identifier = (pointer_expression "*(uint *)(puVar17 + -0xb8)" * (cast_expression "(uint *)(puVar17 + -0xb8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) ))))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" { (do_statement "do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);" do (compound_statement "{\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                }" { (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);" (assignment_expression "puVar19 = puVar19 + *(int *)(puVar17 + -0xb0)" identifier = (binary_expression "puVar19 + *(int *)(puVar17 + -0xb0)" identifier + (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))))) ;) (expression_statement "iVar2 = *(int *)(puVar17 + -200);" (assignment_expression "iVar2 = *(int *)(puVar17 + -200)" identifier = (pointer_expression "*(int *)(puVar17 + -200)" * (cast_expression "(int *)(puVar17 + -200)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -200)" ( (binary_expression "puVar17 + -200" identifier + number_literal) ))))) ;) }) while (parenthesized_expression "(iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0)" ( (binary_expression "iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0" (binary_expression "iVar2 == iVar14 * 2" identifier == (binary_expression "iVar14 * 2" identifier * number_literal)) || (binary_expression "SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0" (call_expression "SBORROW4(iVar2,iVar14 * 2)" identifier (argument_list "(iVar2,iVar14 * 2)" ( identifier , (binary_expression "iVar14 * 2" identifier * number_literal) ))) != (binary_expression "iVar2 + iVar14 * -2 < 0" (binary_expression "iVar2 + iVar14 * -2" identifier + (binary_expression "iVar14 * -2" identifier * number_literal)) < number_literal))) )) ;) (expression_statement "*(int *)(puVar17 + -0xb4) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xb4) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xb4)" * (cast_expression "(int *)(puVar17 + -0xb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar18 = *(undefined1 **)(puVar17 + 0x18);" (assignment_expression "puVar18 = *(undefined1 **)(puVar17 + 0x18)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" * (cast_expression "(undefined1 **)(puVar17 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) }))) (expression_statement "apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);" (assignment_expression "apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4)" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xb4)" * (cast_expression "(undefined1 **)(puVar17 + -0xb4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (if_statement "if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }" if (parenthesized_expression "((int)apuStack_f4[1] < (int)puVar18)" ( (binary_expression "(int)apuStack_f4[1] < (int)puVar18" (cast_expression "(int)apuStack_f4[1]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "apuStack_f4[1]" identifier [ number_literal ])) < (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }" { (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac)" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xac)" * (cast_expression "(undefined1 **)(puVar17 + -0xac)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_100[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);" (assignment_expression "apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8)" (subscript_expression "apuStack_100[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "auStack_8014[0x1fc4] = 0x473bd;" (assignment_expression "auStack_8014[0x1fc4] = 0x473bd" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "iStack_f8 = (int)puVar18;" (assignment_expression "iStack_f8 = (int)puVar18" identifier = (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "__gmpn_mul();" (call_expression "__gmpn_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }" else (compound_statement "{\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }" { (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "iStack_f8 = *(int *)(puVar17 + -0xb4);" (assignment_expression "iStack_f8 = *(int *)(puVar17 + -0xb4)" identifier = (pointer_expression "*(int *)(puVar17 + -0xb4)" * (cast_expression "(int *)(puVar17 + -0xb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);" (assignment_expression "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac)" (subscript_expression "apuStack_100[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xac)" * (cast_expression "(undefined1 **)(puVar17 + -0xac)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);" (assignment_expression "apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8)" (subscript_expression "apuStack_100[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "auStack_8014[0x1fc4] = 0x47d73;" (assignment_expression "auStack_8014[0x1fc4] = 0x47d73" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "__gmpn_mul();" (call_expression "__gmpn_mul()" identifier (argument_list "()" ( ))) ;) }))) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8)" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x473d1;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x473d1" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x473d1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "apuStack_f4[1] = puVar19;" (assignment_expression "apuStack_f4[1] = puVar19" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[2] = puVar19;" (assignment_expression "apuStack_f4[2] = puVar19" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uStack_e4 = (uint)puVar18;" (assignment_expression "uStack_e4 = (uint)puVar18" identifier = (cast_expression "(uint)puVar18" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();" (assignment_expression "uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))()" identifier = (call_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))()" (parenthesized_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))" ( (pointer_expression "*(code *)**(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(code *)**(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar17 + -0x9c)" * (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))))) )) (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xa4) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xa4) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = identifier) ;) (expression_statement "apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);" (assignment_expression "apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc)" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (binary_expression "puVar19 + *(int *)(puVar17 + -0xbc)" identifier + (pointer_expression "*(int *)(puVar17 + -0xbc)" * (cast_expression "(int *)(puVar17 + -0xbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) )))))) ;) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4)" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xb4)" * (cast_expression "(undefined1 **)(puVar17 + -0xb4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];" (assignment_expression "*(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1]" (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) )))) = (subscript_expression "apuStack_f4[1]" identifier [ number_literal ])) ;) (expression_statement "apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);" (assignment_expression "apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0)" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xc0)" * (cast_expression "(undefined1 **)(puVar17 + -0xc0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x473fe;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x473fe" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x473fe" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))" ( (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" * (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" * (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x28)" ( (binary_expression "*(int *)(puVar17 + -0x9c) + 0x28" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "puVar13 = *(uint **)(puVar17 + -0xa0);" (assignment_expression "puVar13 = *(uint **)(puVar17 + -0xa0)" identifier = (pointer_expression "*(uint **)(puVar17 + -0xa0)" * (cast_expression "(uint **)(puVar17 + -0xa0)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "uVar8 = *(uint *)(puVar17 + -0xa4);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -0xa4)" identifier = (pointer_expression "*(uint *)(puVar17 + -0xa4)" * (cast_expression "(uint *)(puVar17 + -0xa4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }" { (do_statement "do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);" do (compound_statement "{\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            }" { (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (if_statement "if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }" if (parenthesized_expression "(*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0)" ( (binary_expression "*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0" (pointer_expression "*(undefined1 **)(puVar17 + -0x94)" * (cast_expression "(undefined1 **)(puVar17 + -0x94)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x94)" ( (binary_expression "puVar17 + -0x94" identifier + number_literal) )))) != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }" { (expression_statement "apuStack_f4[0] = (undefined1 *)0x47eda;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x47eda" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x47eda" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);" (assignment_expression "apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94)" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0x94)" * (cast_expression "(undefined1 **)(puVar17 + -0x94)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x94)" ( (binary_expression "puVar17 + -0x94" identifier + number_literal) ))))) ;) (expression_statement "__gmp_tmp_reentrant_free();" (call_expression "__gmp_tmp_reentrant_free()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);" (assignment_expression "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4)" (pointer_expression "*(undefined1 **)(puVar17 + -0x9c)" * (cast_expression "(undefined1 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = (binary_expression "puVar18 + *(int *)(puVar17 + -0xb4)" identifier + (pointer_expression "*(int *)(puVar17 + -0xb4)" * (cast_expression "(int *)(puVar17 + -0xb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) )))))) ;) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" identifier = identifier) ;) }) (else_clause "else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }" else (compound_statement "{\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }" { (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "iStack_f8 = *(int *)(puVar17 + 0x10);" (assignment_expression "iStack_f8 = *(int *)(puVar17 + 0x10)" identifier = (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "auStack_8014[0x1fc4] = 0x47c6c;" (assignment_expression "auStack_8014[0x1fc4] = 0x47c6c" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "apuStack_100[0] = puVar19;" (assignment_expression "apuStack_100[0] = puVar19" (subscript_expression "apuStack_100[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_100[1] = puVar12;" (assignment_expression "apuStack_100[1] = puVar12" (subscript_expression "apuStack_100[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "__gmpn_nussbaumer_mul();" (call_expression "__gmpn_nussbaumer_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);" (assignment_expression "*(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8)" (pointer_expression "*(undefined4 *)(puVar17 + -0x9c)" * (cast_expression "(undefined4 *)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa8)" * (cast_expression "(undefined4 *)(puVar17 + -0xa8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) }))) (goto_statement "goto LAB_000471aa;" goto statement_identifier ;) })) (if_statement "if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }" if (parenthesized_expression "(299 < (int)puVar18)" ( (binary_expression "299 < (int)puVar18" number_literal < (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }" { (expression_statement "*(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;" (assignment_expression "*(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + 0x10) * 3 + 0xc" (binary_expression "*(int *)(puVar17 + 0x10) * 3" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) * number_literal) + number_literal)) ;) (if_statement "if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }" if (parenthesized_expression "(SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0)" ( (binary_expression "SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0" (call_expression "SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4)" identifier (argument_list "(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4)" ( (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) , (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ))) != (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0" (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * -4" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) + (binary_expression "(int)puVar18 * -4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) < number_literal)) )) (compound_statement "{\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }" { (expression_statement "*(undefined4 *)(puVar17 + -0x94) = 0;" (assignment_expression "*(undefined4 *)(puVar17 + -0x94) = 0" (pointer_expression "*(undefined4 *)(puVar17 + -0x94)" * (cast_expression "(undefined4 *)(puVar17 + -0x94)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x94)" ( (binary_expression "puVar17 + -0x94" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar9 = *(uint *)(puVar17 + -0xa8);" (assignment_expression "uVar9 = *(uint *)(puVar17 + -0xa8)" identifier = (pointer_expression "*(uint *)(puVar17 + -0xa8)" * (cast_expression "(uint *)(puVar17 + -0xa8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "*(uint *)(puVar17 + -0x9c) = uVar9;" (assignment_expression "*(uint *)(puVar17 + -0x9c) = uVar9" (pointer_expression "*(uint *)(puVar17 + -0x9c)" * (cast_expression "(uint *)(puVar17 + -0x9c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = identifier) ;) (if_statement "if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }" if (parenthesized_expression "((int)puVar18 < 0x15e)" ( (binary_expression "(int)puVar18 < 0x15e" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }" { (expression_statement "iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);" (assignment_expression "iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0)" identifier = (unary_expression "-(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0)" - (parenthesized_expression "(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0)" ( (binary_expression "*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0" (binary_expression "*(int *)(puVar17 + 0x10) * 0xc + 0x9bU" (binary_expression "*(int *)(puVar17 + 0x10) * 0xc" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) * number_literal) + number_literal) & number_literal) )))) ;) (expression_statement "puVar11 = auStack_e0 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar2" identifier = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 8)" * (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 8)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 8" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 4)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 4" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2)" * (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)apuStack_f4 + iVar2)" ( (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)((int)&iStack_f8 + iVar2)" * (cast_expression "(undefined4 *)((int)&iStack_f8 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&iStack_f8 + iVar2)" ( (binary_expression "(int)&iStack_f8 + iVar2" (cast_expression "(int)&iStack_f8" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&iStack_f8" & identifier)) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2 + 4)" ( (binary_expression "(int)apuStack_100 + iVar2 + 4" (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2)" ( (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;" (assignment_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3" (pointer_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)auStack_8014 + iVar2 + 0x7f10)" ( (binary_expression "(int)auStack_8014 + iVar2 + 0x7f10" (binary_expression "(int)auStack_8014 + iVar2" (cast_expression "(int)auStack_8014" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom44_mul();" (call_expression "__gmpn_toom44_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }" else (if_statement "if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }" if (parenthesized_expression "((int)puVar18 < 0x1c2)" ( (binary_expression "(int)puVar18 < 0x1c2" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }" { (expression_statement "iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);" (assignment_expression "iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610)" identifier = (unary_expression "-(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610)" - (parenthesized_expression "(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610)" ( (binary_expression "((uVar9 / 10) * 3 + 3) * 0x10 + 0x610" (binary_expression "((uVar9 / 10) * 3 + 3) * 0x10" (parenthesized_expression "((uVar9 / 10) * 3 + 3)" ( (binary_expression "(uVar9 / 10) * 3 + 3" (binary_expression "(uVar9 / 10) * 3" (parenthesized_expression "(uVar9 / 10)" ( (binary_expression "uVar9 / 10" identifier / number_literal) )) * number_literal) + number_literal) )) * number_literal) + number_literal) )))) ;) (expression_statement "puVar11 = auStack_e0 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar2" identifier = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 8)" * (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 8)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 8" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 4)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 4" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2)" * (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)apuStack_f4 + iVar2)" ( (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)((int)&iStack_f8 + iVar2)" * (cast_expression "(undefined4 *)((int)&iStack_f8 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&iStack_f8 + iVar2)" ( (binary_expression "(int)&iStack_f8 + iVar2" (cast_expression "(int)&iStack_f8" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&iStack_f8" & identifier)) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2 + 4)" ( (binary_expression "(int)apuStack_100 + iVar2 + 4" (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2)" ( (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;" (assignment_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63" (pointer_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)auStack_8014 + iVar2 + 0x7f10)" ( (binary_expression "(int)auStack_8014 + iVar2 + 0x7f10" (binary_expression "(int)auStack_8014 + iVar2" (cast_expression "(int)auStack_8014" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom6h_mul();" (call_expression "__gmpn_toom6h_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }" else (compound_statement "{\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }" { (expression_statement "iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;" (assignment_expression "iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4" identifier = (binary_expression "((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4" (parenthesized_expression "((int)((uVar9 / 0xe + 1) * 0x78) >> 3)" ( (binary_expression "(int)((uVar9 / 0xe + 1) * 0x78) >> 3" (cast_expression "(int)((uVar9 / 0xe + 1) * 0x78)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((uVar9 / 0xe + 1) * 0x78)" ( (binary_expression "(uVar9 / 0xe + 1) * 0x78" (parenthesized_expression "(uVar9 / 0xe + 1)" ( (binary_expression "uVar9 / 0xe + 1" (binary_expression "uVar9 / 0xe" identifier / number_literal) + number_literal) )) * number_literal) ))) >> number_literal) )) * number_literal)) ;) (expression_statement "puVar11 = (undefined1 *)(iVar2 + 0x6dc);" (assignment_expression "puVar11 = (undefined1 *)(iVar2 + 0x6dc)" identifier = (cast_expression "(undefined1 *)(iVar2 + 0x6dc)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x6dc)" ( (binary_expression "iVar2 + 0x6dc" identifier + number_literal) )))) ;) (if_statement "if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }" if (parenthesized_expression "(puVar11 < (undefined1 *)0x7f01)" ( (binary_expression "puVar11 < (undefined1 *)0x7f01" identifier < (cast_expression "(undefined1 *)0x7f01" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }" { (expression_statement "iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);" (assignment_expression "iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0)" identifier = (unary_expression "-(iVar2 + 0x6f7U & 0xfffffff0)" - (parenthesized_expression "(iVar2 + 0x6f7U & 0xfffffff0)" ( (binary_expression "iVar2 + 0x6f7U & 0xfffffff0" (binary_expression "iVar2 + 0x6f7U" identifier + number_literal) & number_literal) )))) ;) (expression_statement "puVar15 = auStack_e0 + iVar2;" (assignment_expression "puVar15 = auStack_e0 + iVar2" identifier = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) (expression_statement "puVar11 = auStack_e0 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar2" identifier = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) }) (else_clause "else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }" else (compound_statement "{\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }" { (expression_statement "*(undefined1 **)(puVar17 + -0xa4) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa4) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = identifier) ;) (expression_statement "apuStack_f4[1] = puVar17 + -0x94;" (assignment_expression "apuStack_f4[1] = puVar17 + -0x94" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (binary_expression "puVar17 + -0x94" identifier + number_literal)) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x47ef8;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x47ef8" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x47ef8" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "apuStack_f4[2] = puVar11;" (assignment_expression "apuStack_f4[2] = puVar11" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();" (assignment_expression "puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc()" identifier = (cast_expression "(undefined1 *)__gmp_tmp_reentrant_alloc()" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "__gmp_tmp_reentrant_alloc()" identifier (argument_list "()" ( ))))) ;) (expression_statement "puVar12 = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "puVar12 = *(undefined1 **)(puVar17 + -0xa4)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) }))) (expression_statement "*(undefined1 **)(puVar15 + -0xc) = puVar11;" (assignment_expression "*(undefined1 **)(puVar15 + -0xc) = puVar11" (pointer_expression "*(undefined1 **)(puVar15 + -0xc)" * (cast_expression "(undefined1 **)(puVar15 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + -0xc)" ( (binary_expression "puVar15 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar15 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar15 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar15 + -0x10)" * (cast_expression "(undefined1 **)(puVar15 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + -0x10)" ( (binary_expression "puVar15 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar15 + -0x14)" * (cast_expression "(undefined4 *)(puVar15 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + -0x14)" ( (binary_expression "puVar15 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar15 + -0x18)" * (cast_expression "(undefined4 *)(puVar15 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + -0x18)" ( (binary_expression "puVar15 + -0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar15 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar15 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar15 + -0x1c)" * (cast_expression "(undefined1 **)(puVar15 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + -0x1c)" ( (binary_expression "puVar15 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar15 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar15 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar15 + -0x20)" * (cast_expression "(undefined1 **)(puVar15 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + -0x20)" ( (binary_expression "puVar15 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar15 + -0x24) = 0x47511;" (assignment_expression "*(undefined4 *)(puVar15 + -0x24) = 0x47511" (pointer_expression "*(undefined4 *)(puVar15 + -0x24)" * (cast_expression "(undefined4 *)(puVar15 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + -0x24)" ( (binary_expression "puVar15 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom8h_mul();" (call_expression "__gmpn_toom8h_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar11 = puVar15;" (assignment_expression "puVar11 = puVar15" identifier = identifier) ;) }))))) (if_statement "if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }" if (parenthesized_expression "(*(int *)(puVar17 + -0x94) != 0)" ( (binary_expression "*(int *)(puVar17 + -0x94) != 0" (pointer_expression "*(int *)(puVar17 + -0x94)" * (cast_expression "(int *)(puVar17 + -0x94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x94)" ( (binary_expression "puVar17 + -0x94" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }" { (expression_statement "*(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);" (assignment_expression "*(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94)" (pointer_expression "*(int *)(puVar11 + -0x10)" * (cast_expression "(int *)(puVar11 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = (pointer_expression "*(int *)(puVar17 + -0x94)" * (cast_expression "(int *)(puVar17 + -0x94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x94)" ( (binary_expression "puVar17 + -0x94" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x4752b;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x4752b" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmp_tmp_reentrant_free();" (call_expression "__gmp_tmp_reentrant_free()" identifier (argument_list "()" ( ))) ;) })) (goto_statement "goto LAB_000471aa;" goto statement_identifier ;) })) })) (expression_statement "*(undefined4 *)(puVar17 + -0x94) = 0;" (assignment_expression "*(undefined4 *)(puVar17 + -0x94) = 0" (pointer_expression "*(undefined4 *)(puVar17 + -0x94)" * (cast_expression "(undefined4 *)(puVar17 + -0x94)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x94)" ( (binary_expression "puVar17 + -0x94" identifier + number_literal) )))) = number_literal) ;) (expression_statement "puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);" (assignment_expression "puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10)" identifier = (cast_expression "(undefined1 *)((int)(puVar18 + 8) * 0x10)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)(puVar18 + 8) * 0x10)" ( (binary_expression "(int)(puVar18 + 8) * 0x10" (cast_expression "(int)(puVar18 + 8)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(puVar18 + 8)" ( (binary_expression "puVar18 + 8" identifier + number_literal) ))) * number_literal) )))) ;) (if_statement "if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }" if (parenthesized_expression "(puVar11 < (undefined1 *)0x7f01)" ( (binary_expression "puVar11 < (undefined1 *)0x7f01" identifier < (cast_expression "(undefined1 *)0x7f01" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }" { (expression_statement "*(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);" (assignment_expression "*(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10)" (pointer_expression "*(undefined1 **)(puVar17 + -0xb4)" * (cast_expression "(undefined1 **)(puVar17 + -0xb4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) )))) = (binary_expression "auStack_e0 + -(int)(puVar11 + 0x10)" identifier + (unary_expression "-(int)(puVar11 + 0x10)" - (cast_expression "(int)(puVar11 + 0x10)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(puVar11 + 0x10)" ( (binary_expression "puVar11 + 0x10" identifier + number_literal) )))))) ;) (expression_statement "puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);" (assignment_expression "puVar11 = auStack_e0 + -(int)(puVar11 + 0x10)" identifier = (binary_expression "auStack_e0 + -(int)(puVar11 + 0x10)" identifier + (unary_expression "-(int)(puVar11 + 0x10)" - (cast_expression "(int)(puVar11 + 0x10)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(puVar11 + 0x10)" ( (binary_expression "puVar11 + 0x10" identifier + number_literal) )))))) ;) }) (else_clause "else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }" else (compound_statement "{\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }" { (expression_statement "*(undefined1 **)(puVar17 + -0xa4) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa4) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = identifier) ;) (expression_statement "apuStack_f4[1] = puVar17 + -0x94;" (assignment_expression "apuStack_f4[1] = puVar17 + -0x94" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (binary_expression "puVar17 + -0x94" identifier + number_literal)) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x47de3;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x47de3" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x47de3" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "apuStack_f4[2] = puVar11;" (assignment_expression "apuStack_f4[2] = puVar11" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar10 = __gmp_tmp_reentrant_alloc();" (assignment_expression "uVar10 = __gmp_tmp_reentrant_alloc()" identifier = (call_expression "__gmp_tmp_reentrant_alloc()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar12 = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "puVar12 = *(undefined1 **)(puVar17 + -0xa4)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xb4) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xb4) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" identifier = identifier) ;) }))) (expression_statement "*(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;" (assignment_expression "*(int *)(puVar17 + -0xb8) = (int)puVar18 * 5" (pointer_expression "*(int *)(puVar17 + -0xb8)" * (cast_expression "(int *)(puVar17 + -0xb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 5" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "*(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;" (assignment_expression "*(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + 0x10) * 2" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) * number_literal)) ;) (expression_statement "*(int *)(puVar17 + -0xac) = (int)puVar18 * 7;" (assignment_expression "*(int *)(puVar17 + -0xac) = (int)puVar18 * 7" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 7" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (if_statement "if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }" if (parenthesized_expression "(SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0)" ( (binary_expression "SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0" (call_expression "SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5)" identifier (argument_list "(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5)" ( (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) , (binary_expression "(int)puVar18 * 5" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ))) == (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0" (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * -5" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) + (binary_expression "(int)puVar18 * -5" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) < number_literal)) )) (compound_statement "{\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }" { (expression_statement "uVar9 = ((int)puVar18 * 7 >> 1) * 4;" (assignment_expression "uVar9 = ((int)puVar18 * 7 >> 1) * 4" identifier = (binary_expression "((int)puVar18 * 7 >> 1) * 4" (parenthesized_expression "((int)puVar18 * 7 >> 1)" ( (binary_expression "(int)puVar18 * 7 >> 1" (binary_expression "(int)puVar18 * 7" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) >> number_literal) )) * number_literal)) ;) (if_statement "if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }" if (parenthesized_expression "(uVar9 < 0x7f01)" ( (binary_expression "uVar9 < 0x7f01" identifier < number_literal) )) (compound_statement "{\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }" { (expression_statement "iVar2 = -(uVar9 + 0x1b & 0xfffffff0);" (assignment_expression "iVar2 = -(uVar9 + 0x1b & 0xfffffff0)" identifier = (unary_expression "-(uVar9 + 0x1b & 0xfffffff0)" - (parenthesized_expression "(uVar9 + 0x1b & 0xfffffff0)" ( (binary_expression "uVar9 + 0x1b & 0xfffffff0" (binary_expression "uVar9 + 0x1b" identifier + number_literal) & number_literal) )))) ;) (expression_statement "iVar16 = (int)puVar11 + iVar2;" (assignment_expression "iVar16 = (int)puVar11 + iVar2" identifier = (binary_expression "(int)puVar11 + iVar2" (cast_expression "(int)puVar11" ( (type_descriptor "int" primitive_type) ) identifier) + identifier)) ;) (expression_statement "puVar11 = puVar11 + iVar2;" (assignment_expression "puVar11 = puVar11 + iVar2" identifier = (binary_expression "puVar11 + iVar2" identifier + identifier)) ;) (expression_statement "*(int *)(puVar17 + -0xa4) = iVar16;" (assignment_expression "*(int *)(puVar17 + -0xa4) = iVar16" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }" else (compound_statement "{\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }" { (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar11 + -0xc) = uVar9;" (assignment_expression "*(uint *)(puVar11 + -0xc) = uVar9" (pointer_expression "*(uint *)(puVar11 + -0xc)" * (cast_expression "(uint *)(puVar11 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = (binary_expression "puVar17 + -0x94" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x47eac;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x47eac" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar10 = __gmp_tmp_reentrant_alloc();" (assignment_expression "uVar10 = __gmp_tmp_reentrant_alloc()" identifier = (call_expression "__gmp_tmp_reentrant_alloc()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar12 = *(undefined1 **)(puVar17 + -0xa8);" (assignment_expression "puVar12 = *(undefined1 **)(puVar17 + -0xa8)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xa4) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xa4) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = identifier) ;) }))) (expression_statement "*(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;" (assignment_expression "*(int *)(puVar17 + -0xc4) = (int)puVar18 * 2" (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 2" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (if_statement "if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }" if (parenthesized_expression "((int)puVar18 < 0x6e)" ( (binary_expression "(int)puVar18 < 0x6e" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }" { (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar11 + -0x18) = (int)puVar18 * 2;" (assignment_expression "*(int *)(puVar11 + -0x18) = (int)puVar18 * 2" (pointer_expression "*(int *)(puVar11 + -0x18)" * (cast_expression "(int *)(puVar11 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 2" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" * (cast_expression "(undefined1 **)(puVar11 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" * (cast_expression "(undefined1 **)(puVar11 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x475ed;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x475ed" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);" (assignment_expression "iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4)" identifier = (binary_expression "*(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4)" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) - (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))))) ;) (expression_statement "*(int *)(puVar17 + -0xb0) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xb0) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar2 = (int)puVar18 * 8;" (assignment_expression "iVar2 = (int)puVar18 * 8" identifier = (binary_expression "(int)puVar18 * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "*(int *)(puVar17 + -0xc0) = iVar2;" (assignment_expression "*(int *)(puVar17 + -0xc0) = iVar2" (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar19 = puVar19 + iVar2;" (assignment_expression "puVar19 = puVar19 + iVar2" identifier = (binary_expression "puVar19 + iVar2" identifier + identifier)) ;) (expression_statement "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;" (assignment_expression "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xa8) + iVar2" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) + identifier)) ;) (expression_statement "*(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xa8) = (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "*(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xbc)" * (cast_expression "(int *)(puVar17 + -0xbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) + (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "iVar2 = *(int *)(puVar17 + -0xb8);" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xb8)" identifier = (pointer_expression "*(int *)(puVar17 + -0xb8)" * (cast_expression "(int *)(puVar17 + -0xb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) ))))) ;) (if_statement "if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" if (parenthesized_expression "(iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0)" ( (binary_expression "iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0" (binary_expression "iVar2 == iVar14 * 2" identifier == (binary_expression "iVar14 * 2" identifier * number_literal)) || (binary_expression "SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0" (call_expression "SBORROW4(iVar2,iVar14 * 2)" identifier (argument_list "(iVar2,iVar14 * 2)" ( identifier , (binary_expression "iVar14 * 2" identifier * number_literal) ))) != (binary_expression "iVar2 + iVar14 * -2 < 0" (binary_expression "iVar2 + iVar14 * -2" identifier + (binary_expression "iVar14 * -2" identifier * number_literal)) < number_literal))) )) (compound_statement "{\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" { (expression_statement "iVar2 = *(int *)(puVar17 + -0xc4);" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xc4)" identifier = (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar17 + 0x18) = puVar18;" (assignment_expression "*(undefined1 **)(puVar17 + 0x18) = puVar18" (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" * (cast_expression "(undefined1 **)(puVar17 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;" (assignment_expression "*(int *)(puVar17 + -0xd0) = (int)puVar18 * -4" (pointer_expression "*(int *)(puVar17 + -0xd0)" * (cast_expression "(int *)(puVar17 + -0xd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xd0)" ( (binary_expression "puVar17 + -0xd0" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * -4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;" (assignment_expression "iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2" identifier = (binary_expression "(*(int *)(puVar17 + -0xb0) - iVar2) * 2" (parenthesized_expression "(*(int *)(puVar17 + -0xb0) - iVar2)" ( (binary_expression "*(int *)(puVar17 + -0xb0) - iVar2" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) - identifier) )) * number_literal)) ;) (do_statement "do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);" do (compound_statement "{\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            }" { (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);" (assignment_expression "*(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18)" (pointer_expression "*(undefined4 *)(puVar11 + -0x10)" * (cast_expression "(undefined4 *)(puVar11 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x18)" * (cast_expression "(undefined4 *)(puVar17 + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar11 + -0x18) = iVar2;" (assignment_expression "*(int *)(puVar11 + -0x18) = iVar2" (pointer_expression "*(int *)(puVar11 + -0x18)" * (cast_expression "(int *)(puVar11 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(puVar11 + -0x1c)" * (cast_expression "(undefined4 *)(puVar11 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -0x20)" * (cast_expression "(undefined4 *)(puVar11 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar17 + -0xcc) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xcc) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xcc)" * (cast_expression "(int *)(puVar17 + -0xcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xcc)" ( (binary_expression "puVar17 + -0xcc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x4769a;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x4769a" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);" (assignment_expression "*(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18)" (pointer_expression "*(undefined4 *)(puVar11 + -4)" * (cast_expression "(undefined4 *)(puVar11 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -4)" ( (binary_expression "puVar11 + -4" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x18)" * (cast_expression "(undefined4 *)(puVar17 + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "puVar6 = *(undefined4 **)(puVar17 + -0x9c);" (assignment_expression "puVar6 = *(undefined4 **)(puVar17 + -0x9c)" identifier = (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = *(int *)(puVar17 + -0xc0);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xc0)" identifier = (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -8)" * (cast_expression "(undefined4 *)(puVar11 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -8)" ( (binary_expression "puVar11 + -8" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0xc) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0xc) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0xc)" * (cast_expression "(undefined1 **)(puVar11 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;" (assignment_expression "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xac) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) + identifier)) ;) (expression_statement "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;" (assignment_expression "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xb0) - iVar2" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) - identifier)) ;) (expression_statement "pcVar3 = (code *)*puVar6;" (assignment_expression "pcVar3 = (code *)*puVar6" identifier = (cast_expression "(code *)*puVar6" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar6" * identifier))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x476c2;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x476c2" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar10 = (*pcVar3)();" (assignment_expression "uVar10 = (*pcVar3)()" identifier = (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( )))) ;) (expression_statement "iVar14 = *(int *)(puVar17 + -0xa8);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xa8)" identifier = (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar17 + -200) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -200) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -200)" * (cast_expression "(undefined4 *)(puVar17 + -200)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -200)" ( (binary_expression "puVar17 + -200" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar4 = *(int *)(puVar17 + -0x9c);" (assignment_expression "iVar4 = *(int *)(puVar17 + -0x9c)" identifier = (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar11 + -8) = iVar2;" (assignment_expression "*(int *)(puVar11 + -8) = iVar2" (pointer_expression "*(int *)(puVar11 + -8)" * (cast_expression "(int *)(puVar11 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -8)" ( (binary_expression "puVar11 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;" (assignment_expression "*(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14" (pointer_expression "*(undefined1 **)(puVar17 + -0xc4)" * (cast_expression "(undefined1 **)(puVar17 + -0xc4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))) = (binary_expression "puVar19 + iVar14" identifier + identifier)) ;) (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = (binary_expression "puVar19 + iVar14" identifier + identifier)) ;) (expression_statement "pcVar3 = *(code **)(iVar4 + 0x28);" (assignment_expression "pcVar3 = *(code **)(iVar4 + 0x28)" identifier = (pointer_expression "*(code **)(iVar4 + 0x28)" * (cast_expression "(code **)(iVar4 + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar4 + 0x28)" ( (binary_expression "iVar4 + 0x28" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x476eb;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x476eb" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "puVar13 = *(uint **)(puVar17 + -0xc4);" (assignment_expression "puVar13 = *(uint **)(puVar17 + -0xc4)" identifier = (pointer_expression "*(uint **)(puVar17 + -0xc4)" * (cast_expression "(uint **)(puVar17 + -0xc4)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) ))))) ;) (expression_statement "uVar8 = *(uint *)(puVar17 + -200);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -200)" identifier = (pointer_expression "*(uint *)(puVar17 + -200)" * (cast_expression "(uint *)(puVar17 + -200)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -200)" ( (binary_expression "puVar17 + -200" identifier + number_literal) ))))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" { (do_statement "do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);" do (compound_statement "{\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                }" { (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0)" identifier = (binary_expression "*(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0)" (pointer_expression "*(int *)(puVar17 + -0xcc)" * (cast_expression "(int *)(puVar17 + -0xcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xcc)" ( (binary_expression "puVar17 + -0xcc" identifier + number_literal) )))) + (pointer_expression "*(int *)(puVar17 + -0xd0)" * (cast_expression "(int *)(puVar17 + -0xd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xd0)" ( (binary_expression "puVar17 + -0xd0" identifier + number_literal) )))))) ;) (expression_statement "puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);" (assignment_expression "puVar19 = puVar19 + *(int *)(puVar17 + -0xc0)" identifier = (binary_expression "puVar19 + *(int *)(puVar17 + -0xc0)" identifier + (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) )))))) ;) }) while (parenthesized_expression "(*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14)" ( (binary_expression "*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xb8)" * (cast_expression "(int *)(puVar17 + -0xb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) )))) <= (binary_expression "*(int *)(puVar17 + -0xa8) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) + identifier)) )) ;) (labeled_statement "LAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);" statement_identifier : (expression_statement "puVar18 = *(undefined1 **)(puVar17 + 0x18);" (assignment_expression "puVar18 = *(undefined1 **)(puVar17 + 0x18)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" * (cast_expression "(undefined1 **)(puVar17 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;)) })) }) (else_clause "else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }" else (compound_statement "{\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }" { (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" * (cast_expression "(undefined4 *)(puVar11 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xc4)" * (cast_expression "(undefined4 *)(puVar17 + -0xc4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" * (cast_expression "(undefined1 **)(puVar11 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" * (cast_expression "(undefined1 **)(puVar11 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47adb;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47adb" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom63_mul();" (call_expression "__gmpn_toom63_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;" (assignment_expression "*(int *)(puVar17 + -0xc0) = (int)puVar18 * 8" (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);" (assignment_expression "iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4)" identifier = (binary_expression "*(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4)" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) - (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))))) ;) (expression_statement "*(int *)(puVar17 + -0xb0) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xb0) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar19 = puVar19 + (int)puVar18 * 8;" (assignment_expression "puVar19 = puVar19 + (int)puVar18 * 8" identifier = (binary_expression "puVar19 + (int)puVar18 * 8" identifier + (binary_expression "(int)puVar18 * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;" (assignment_expression "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xa8) + (int)puVar18 * 8" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) + (binary_expression "(int)puVar18 * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "*(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xa8) = (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "*(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xbc)" * (cast_expression "(int *)(puVar17 + -0xbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) + (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "iVar2 = *(int *)(puVar17 + -0xb8);" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xb8)" identifier = (pointer_expression "*(int *)(puVar17 + -0xb8)" * (cast_expression "(int *)(puVar17 + -0xb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) ))))) ;) (if_statement "if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }" if (parenthesized_expression "(iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0)" ( (binary_expression "iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0" (binary_expression "iVar2 == iVar14 * 2" identifier == (binary_expression "iVar14 * 2" identifier * number_literal)) || (binary_expression "SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0" (call_expression "SBORROW4(iVar2,iVar14 * 2)" identifier (argument_list "(iVar2,iVar14 * 2)" ( identifier , (binary_expression "iVar14 * 2" identifier * number_literal) ))) != (binary_expression "iVar2 + iVar14 * -2 < 0" (binary_expression "iVar2 + iVar14 * -2" identifier + (binary_expression "iVar14 * -2" identifier * number_literal)) < number_literal))) )) (compound_statement "{\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }" { (expression_statement "iVar2 = *(int *)(puVar17 + -0xc4);" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xc4)" identifier = (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar17 + 0x18) = puVar18;" (assignment_expression "*(undefined1 **)(puVar17 + 0x18) = puVar18" (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" * (cast_expression "(undefined1 **)(puVar17 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;" (assignment_expression "*(int *)(puVar17 + -0xd0) = (int)puVar18 * -4" (pointer_expression "*(int *)(puVar17 + -0xd0)" * (cast_expression "(int *)(puVar17 + -0xd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xd0)" ( (binary_expression "puVar17 + -0xd0" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * -4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "iVar14 = (iVar14 - iVar2) * 2;" (assignment_expression "iVar14 = (iVar14 - iVar2) * 2" identifier = (binary_expression "(iVar14 - iVar2) * 2" (parenthesized_expression "(iVar14 - iVar2)" ( (binary_expression "iVar14 - iVar2" identifier - identifier) )) * number_literal)) ;) (do_statement "do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);" do (compound_statement "{\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            }" { (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);" (assignment_expression "*(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18)" (pointer_expression "*(undefined4 *)(puVar11 + -0x10)" * (cast_expression "(undefined4 *)(puVar11 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x18)" * (cast_expression "(undefined4 *)(puVar17 + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar11 + -0x18) = iVar2;" (assignment_expression "*(int *)(puVar11 + -0x18) = iVar2" (pointer_expression "*(int *)(puVar11 + -0x18)" * (cast_expression "(int *)(puVar11 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(puVar11 + -0x1c)" * (cast_expression "(undefined4 *)(puVar11 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -0x20)" * (cast_expression "(undefined4 *)(puVar11 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar17 + -0xcc) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xcc) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xcc)" * (cast_expression "(int *)(puVar17 + -0xcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xcc)" ( (binary_expression "puVar17 + -0xcc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47b8a;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47b8a" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom63_mul();" (call_expression "__gmpn_toom63_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);" (assignment_expression "*(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18)" (pointer_expression "*(undefined4 *)(puVar11 + -4)" * (cast_expression "(undefined4 *)(puVar11 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -4)" ( (binary_expression "puVar11 + -4" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x18)" * (cast_expression "(undefined4 *)(puVar17 + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "puVar6 = *(undefined4 **)(puVar17 + -0x9c);" (assignment_expression "puVar6 = *(undefined4 **)(puVar17 + -0x9c)" identifier = (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = *(int *)(puVar17 + -0xc0);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xc0)" identifier = (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -8)" * (cast_expression "(undefined4 *)(puVar11 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -8)" ( (binary_expression "puVar11 + -8" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0xc) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0xc) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0xc)" * (cast_expression "(undefined1 **)(puVar11 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;" (assignment_expression "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xac) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) + identifier)) ;) (expression_statement "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;" (assignment_expression "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xb0) - iVar2" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) - identifier)) ;) (expression_statement "pcVar3 = (code *)*puVar6;" (assignment_expression "pcVar3 = (code *)*puVar6" identifier = (cast_expression "(code *)*puVar6" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar6" * identifier))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x47bb2;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x47bb2" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar10 = (*pcVar3)();" (assignment_expression "uVar10 = (*pcVar3)()" identifier = (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( )))) ;) (expression_statement "iVar14 = *(int *)(puVar17 + -0xa8);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xa8)" identifier = (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar17 + -200) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -200) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -200)" * (cast_expression "(undefined4 *)(puVar17 + -200)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -200)" ( (binary_expression "puVar17 + -200" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar4 = *(int *)(puVar17 + -0x9c);" (assignment_expression "iVar4 = *(int *)(puVar17 + -0x9c)" identifier = (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar11 + -8) = iVar2;" (assignment_expression "*(int *)(puVar11 + -8) = iVar2" (pointer_expression "*(int *)(puVar11 + -8)" * (cast_expression "(int *)(puVar11 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -8)" ( (binary_expression "puVar11 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;" (assignment_expression "*(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14" (pointer_expression "*(undefined1 **)(puVar17 + -0xc4)" * (cast_expression "(undefined1 **)(puVar17 + -0xc4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))) = (binary_expression "puVar19 + iVar14" identifier + identifier)) ;) (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = (binary_expression "puVar19 + iVar14" identifier + identifier)) ;) (expression_statement "pcVar3 = *(code **)(iVar4 + 0x28);" (assignment_expression "pcVar3 = *(code **)(iVar4 + 0x28)" identifier = (pointer_expression "*(code **)(iVar4 + 0x28)" * (cast_expression "(code **)(iVar4 + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar4 + 0x28)" ( (binary_expression "iVar4 + 0x28" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x47bda;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x47bda" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "puVar13 = *(uint **)(puVar17 + -0xc4);" (assignment_expression "puVar13 = *(uint **)(puVar17 + -0xc4)" identifier = (pointer_expression "*(uint **)(puVar17 + -0xc4)" * (cast_expression "(uint **)(puVar17 + -0xc4)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) ))))) ;) (expression_statement "uVar8 = *(uint *)(puVar17 + -200);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -200)" identifier = (pointer_expression "*(uint *)(puVar17 + -200)" * (cast_expression "(uint *)(puVar17 + -200)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -200)" ( (binary_expression "puVar17 + -200" identifier + number_literal) ))))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" { (do_statement "do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);" do (compound_statement "{\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                }" { (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0)" identifier = (binary_expression "*(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0)" (pointer_expression "*(int *)(puVar17 + -0xcc)" * (cast_expression "(int *)(puVar17 + -0xcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xcc)" ( (binary_expression "puVar17 + -0xcc" identifier + number_literal) )))) + (pointer_expression "*(int *)(puVar17 + -0xd0)" * (cast_expression "(int *)(puVar17 + -0xd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xd0)" ( (binary_expression "puVar17 + -0xd0" identifier + number_literal) )))))) ;) (expression_statement "puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);" (assignment_expression "puVar19 = puVar19 + *(int *)(puVar17 + -0xc0)" identifier = (binary_expression "puVar19 + *(int *)(puVar17 + -0xc0)" identifier + (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) )))))) ;) }) while (parenthesized_expression "(*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14)" ( (binary_expression "*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xb8)" * (cast_expression "(int *)(puVar17 + -0xb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) )))) <= (binary_expression "*(int *)(puVar17 + -0xa8) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) + identifier)) )) ;) (goto_statement "goto LAB_0004772d;" goto statement_identifier ;) })) }))) (if_statement "if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }" if (parenthesized_expression "(*(int *)(puVar17 + -0xb0) < (int)puVar18)" ( (binary_expression "*(int *)(puVar17 + -0xb0) < (int)puVar18" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) < (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }" { (expression_statement "*(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);" (assignment_expression "*(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0)" (pointer_expression "*(int *)(puVar11 + -0x10)" * (cast_expression "(int *)(puVar11 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x18) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x18) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x18)" * (cast_expression "(undefined1 **)(puVar11 + -0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x1c)" * (cast_expression "(undefined4 *)(puVar11 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -0x20)" * (cast_expression "(undefined4 *)(puVar11 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x4775a;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x4775a" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_mul();" (call_expression "__gmpn_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }" else (compound_statement "{\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }" { (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" * (cast_expression "(undefined4 *)(puVar11 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb0)" * (cast_expression "(undefined4 *)(puVar17 + -0xb0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(puVar11 + -0x1c)" * (cast_expression "(undefined4 *)(puVar11 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -0x20)" * (cast_expression "(undefined4 *)(puVar11 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47c49;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47c49" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_mul();" (call_expression "__gmpn_mul()" identifier (argument_list "()" ( ))) ;) }))) (expression_statement "puVar6 = *(undefined4 **)(puVar17 + -0x9c);" (assignment_expression "puVar6 = *(undefined4 **)(puVar17 + -0x9c)" identifier = (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -4) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -4) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -4)" * (cast_expression "(undefined1 **)(puVar11 + -4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -4)" ( (binary_expression "puVar11 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -8)" * (cast_expression "(undefined4 *)(puVar11 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -8)" ( (binary_expression "puVar11 + -8" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0xc) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0xc) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0xc)" * (cast_expression "(undefined1 **)(puVar11 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "pcVar3 = (code *)*puVar6;" (assignment_expression "pcVar3 = (code *)*puVar6" identifier = (cast_expression "(code *)*puVar6" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar6" * identifier))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x4776e;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x4776e" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar10 = (*pcVar3)();" (assignment_expression "uVar10 = (*pcVar3)()" identifier = (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( )))) ;) (expression_statement "iVar2 = *(int *)(puVar17 + -0xa8);" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xa8)" identifier = (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xa4) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xa4) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar14 = *(int *)(puVar17 + -0x9c);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0x9c)" identifier = (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);" (assignment_expression "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0)" (pointer_expression "*(undefined4 *)(puVar11 + -8)" * (cast_expression "(undefined4 *)(puVar11 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -8)" ( (binary_expression "puVar11 + -8" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb0)" * (cast_expression "(undefined4 *)(puVar17 + -0xb0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2" (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) )))) = (binary_expression "puVar19 + iVar2" identifier + identifier)) ;) (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = (binary_expression "puVar19 + iVar2" identifier + identifier)) ;) (expression_statement "pcVar3 = *(code **)(iVar14 + 0x28);" (assignment_expression "pcVar3 = *(code **)(iVar14 + 0x28)" identifier = (pointer_expression "*(code **)(iVar14 + 0x28)" * (cast_expression "(code **)(iVar14 + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar14 + 0x28)" ( (binary_expression "iVar14 + 0x28" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x4779b;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x4779b" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "puVar13 = *(uint **)(puVar17 + -0xa0);" (assignment_expression "puVar13 = *(uint **)(puVar17 + -0xa0)" identifier = (pointer_expression "*(uint **)(puVar17 + -0xa0)" * (cast_expression "(uint **)(puVar17 + -0xa0)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "uVar8 = *(uint *)(puVar17 + -0xa4);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -0xa4)" identifier = (pointer_expression "*(uint *)(puVar17 + -0xa4)" * (cast_expression "(uint *)(puVar17 + -0xa4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }" { (do_statement "do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);" do (compound_statement "{\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          }" { (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0)" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = (binary_expression "puVar18 + *(int *)(puVar17 + -0xb0)" identifier + (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))))) ;) }) (else_clause "else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }" else (compound_statement "{\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }" { (expression_statement "iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;" (assignment_expression "iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2" identifier = (binary_expression "(*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2" (parenthesized_expression "(*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10))" ( (binary_expression "*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) + (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) )) * number_literal)) ;) (if_statement "if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" if (parenthesized_expression "(iVar2 < *(int *)(puVar17 + -0xac))" ( (binary_expression "iVar2 < *(int *)(puVar17 + -0xac)" identifier < (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) )) (compound_statement "{\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }" { (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" * (cast_expression "(undefined4 *)(puVar11 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" * (cast_expression "(undefined1 **)(puVar11 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" * (cast_expression "(undefined1 **)(puVar11 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47d4a;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47d4a" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom33_mul();" (call_expression "__gmpn_toom33_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" else (if_statement "if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" if (parenthesized_expression "(SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0)" ( (binary_expression "SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0" (call_expression "SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3)" identifier (argument_list "(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3)" ( (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) , (binary_expression "(int)puVar18 * 3" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ))) == (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0" (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * -3" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) + (binary_expression "(int)puVar18 * -3" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) < number_literal)) )) (compound_statement "{\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }" { (if_statement "if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }" if (parenthesized_expression "(iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2))" ( (binary_expression "iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)" identifier < (cast_expression "(int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(puVar18 + *(int *)(puVar17 + -0xb8) * 2)" ( (binary_expression "puVar18 + *(int *)(puVar17 + -0xb8) * 2" identifier + (binary_expression "*(int *)(puVar17 + -0xb8) * 2" (pointer_expression "*(int *)(puVar17 + -0xb8)" * (cast_expression "(int *)(puVar17 + -0xb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) )))) * number_literal)) )))) )) (compound_statement "{\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }" { (if_statement "if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;" if (parenthesized_expression "(*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac))" ( (binary_expression "*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)" (binary_expression "*(int *)(puVar17 + 0x10) * 4" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) * number_literal) < (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) )) (compound_statement "{\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }" { (if_statement "if ((int)puVar18 < 0x6e) goto LAB_00047dab;" if (parenthesized_expression "((int)puVar18 < 0x6e)" ( (binary_expression "(int)puVar18 < 0x6e" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_00047dab;" goto statement_identifier ;)) }) (else_clause "else if ((int)puVar18 < 100) goto LAB_00047e74;" else (if_statement "if ((int)puVar18 < 100) goto LAB_00047e74;" if (parenthesized_expression "((int)puVar18 < 100)" ( (binary_expression "(int)puVar18 < 100" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_00047e74;" goto statement_identifier ;)))) (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" * (cast_expression "(undefined4 *)(puVar11 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" * (cast_expression "(undefined1 **)(puVar11 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" * (cast_expression "(undefined1 **)(puVar11 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47d26;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47d26" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom53_mul();" (call_expression "__gmpn_toom53_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }" else (if_statement "if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }" if (parenthesized_expression "((int)puVar18 < 0x6e)" ( (binary_expression "(int)puVar18 < 0x6e" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }" { (labeled_statement "LAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" statement_identifier : (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;)) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" * (cast_expression "(undefined4 *)(puVar11 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" * (cast_expression "(undefined1 **)(puVar11 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" * (cast_expression "(undefined1 **)(puVar11 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47e8e;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47e8e" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }" else (compound_statement "{\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }" { (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" * (cast_expression "(undefined4 *)(puVar11 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" * (cast_expression "(undefined1 **)(puVar11 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" * (cast_expression "(undefined1 **)(puVar11 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47e27;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47e27" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom63_mul();" (call_expression "__gmpn_toom63_mul()" identifier (argument_list "()" ( ))) ;) }))))) }) (else_clause "else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" else (if_statement "if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" if (parenthesized_expression "((int)puVar18 < 100)" ( (binary_expression "(int)puVar18 < 100" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }" { (labeled_statement "LAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" statement_identifier : (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;)) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" * (cast_expression "(undefined4 *)(puVar11 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" * (cast_expression "(undefined1 **)(puVar11 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" * (cast_expression "(undefined1 **)(puVar11 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47dc5;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47dc5" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom32_mul();" (call_expression "__gmpn_toom32_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" else (compound_statement "{\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" { (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" * (cast_expression "(undefined4 *)(puVar11 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" * (cast_expression "(undefined1 **)(puVar11 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" * (cast_expression "(undefined1 **)(puVar11 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47a39;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47a39" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom43_mul();" (call_expression "__gmpn_toom43_mul()" identifier (argument_list "()" ( ))) ;) }))))))) }))) (if_statement "if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }" if (parenthesized_expression "(*(int *)(puVar17 + -0x94) != 0)" ( (binary_expression "*(int *)(puVar17 + -0x94) != 0" (pointer_expression "*(int *)(puVar17 + -0x94)" * (cast_expression "(int *)(puVar17 + -0x94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x94)" ( (binary_expression "puVar17 + -0x94" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }" { (expression_statement "*(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);" (assignment_expression "*(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94)" (pointer_expression "*(int *)(puVar11 + -0x10)" * (cast_expression "(int *)(puVar11 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = (pointer_expression "*(int *)(puVar17 + -0x94)" * (cast_expression "(int *)(puVar17 + -0x94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x94)" ( (binary_expression "puVar17 + -0x94" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x47e00;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x47e00" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmp_tmp_reentrant_free();" (call_expression "__gmp_tmp_reentrant_free()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "*(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);" (assignment_expression "*(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8)" (pointer_expression "*(undefined4 *)(puVar17 + -0x9c)" * (cast_expression "(undefined4 *)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa8)" * (cast_expression "(undefined4 *)(puVar17 + -0xa8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000471aa;" goto statement_identifier ;) })) }))) (expression_statement "pcVar3 = *(code **)(*(int *)(puVar17 + -0x9c) + 0x68);" (assignment_expression "pcVar3 = *(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" identifier = (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" * (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x68)" ( (binary_expression "*(int *)(puVar17 + -0x9c) + 0x68" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "apuStack_100[1] = puVar12;" (assignment_expression "apuStack_100[1] = puVar12" (subscript_expression "apuStack_100[1]" identifier [ number_literal ]) = identifier) ;) (if_statement "if ((*(int *)(puVar17 + 0x10) < 0x1f5) || (puVar18 == (undefined1 *)0x1)) {\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = *(int *)(puVar17 + 0x10);\n    auStack_8014[0x1fc4] = 0x47451;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n    puVar11 = auStack_e0;\n  }\n  else {\n    *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = 500;\n    auStack_8014[0x1fc4] = 0x46f33;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    apuStack_f4[1] = puVar17 + -0x90;\n    *(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];\n    apuStack_f4[0] = (undefined1 *)0x46f4e;\n    apuStack_f4[2] = puVar19 + 2000;\n    apuStack_f4[3] = puVar18;\n    (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n    iVar2 = *(int *)(puVar17 + 0x10);\n    puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);\n    *(int *)(puVar17 + -0xac) = (int)puVar18 * 4;\n    puVar19 = puVar19 + 2000;\n    while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }\n    if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n    apuStack_f4[0] = (undefined1 *)0x47047;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar19;\n    uStack_e4 = (uint)puVar18;\n    uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n    puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;\n    puVar11 = auStack_e0;\n  }" if (parenthesized_expression "((*(int *)(puVar17 + 0x10) < 0x1f5) || (puVar18 == (undefined1 *)0x1))" ( (binary_expression "(*(int *)(puVar17 + 0x10) < 0x1f5) || (puVar18 == (undefined1 *)0x1)" (parenthesized_expression "(*(int *)(puVar17 + 0x10) < 0x1f5)" ( (binary_expression "*(int *)(puVar17 + 0x10) < 0x1f5" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) < number_literal) )) || (parenthesized_expression "(puVar18 == (undefined1 *)0x1)" ( (binary_expression "puVar18 == (undefined1 *)0x1" identifier == (cast_expression "(undefined1 *)0x1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (compound_statement "{\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = *(int *)(puVar17 + 0x10);\n    auStack_8014[0x1fc4] = 0x47451;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n    puVar11 = auStack_e0;\n  }" { (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "iStack_f8 = *(int *)(puVar17 + 0x10);" (assignment_expression "iStack_f8 = *(int *)(puVar17 + 0x10)" identifier = (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "auStack_8014[0x1fc4] = 0x47451;" (assignment_expression "auStack_8014[0x1fc4] = 0x47451" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "apuStack_100[0] = puVar19;" (assignment_expression "apuStack_100[0] = puVar19" (subscript_expression "apuStack_100[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);" (assignment_expression "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10)" (pointer_expression "*(undefined1 **)(puVar17 + -0x9c)" * (cast_expression "(undefined1 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = (binary_expression "puVar18 + *(int *)(puVar17 + 0x10)" identifier + (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))))) ;) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" identifier = identifier) ;) }) (else_clause "else {\n    *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = 500;\n    auStack_8014[0x1fc4] = 0x46f33;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    apuStack_f4[1] = puVar17 + -0x90;\n    *(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];\n    apuStack_f4[0] = (undefined1 *)0x46f4e;\n    apuStack_f4[2] = puVar19 + 2000;\n    apuStack_f4[3] = puVar18;\n    (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n    iVar2 = *(int *)(puVar17 + 0x10);\n    puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);\n    *(int *)(puVar17 + -0xac) = (int)puVar18 * 4;\n    puVar19 = puVar19 + 2000;\n    while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }\n    if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n    apuStack_f4[0] = (undefined1 *)0x47047;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar19;\n    uStack_e4 = (uint)puVar18;\n    uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n    puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;\n    puVar11 = auStack_e0;\n  }" else (compound_statement "{\n    *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = 500;\n    auStack_8014[0x1fc4] = 0x46f33;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    apuStack_f4[1] = puVar17 + -0x90;\n    *(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];\n    apuStack_f4[0] = (undefined1 *)0x46f4e;\n    apuStack_f4[2] = puVar19 + 2000;\n    apuStack_f4[3] = puVar18;\n    (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n    iVar2 = *(int *)(puVar17 + 0x10);\n    puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);\n    *(int *)(puVar17 + -0xac) = (int)puVar18 * 4;\n    puVar19 = puVar19 + 2000;\n    while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }\n    if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n    apuStack_f4[0] = (undefined1 *)0x47047;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar19;\n    uStack_e4 = (uint)puVar18;\n    uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n    puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;\n    puVar11 = auStack_e0;\n  }" { (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = identifier) ;) (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "iStack_f8 = 500;" (assignment_expression "iStack_f8 = 500" identifier = number_literal) ;) (expression_statement "auStack_8014[0x1fc4] = 0x46f33;" (assignment_expression "auStack_8014[0x1fc4] = 0x46f33" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "apuStack_100[0] = puVar19;" (assignment_expression "apuStack_100[0] = puVar19" (subscript_expression "apuStack_100[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "apuStack_f4[1] = puVar17 + -0x90;" (assignment_expression "apuStack_f4[1] = puVar17 + -0x90" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (binary_expression "puVar17 + -0x90" identifier + number_literal)) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];" (assignment_expression "*(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1]" (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = (subscript_expression "apuStack_f4[1]" identifier [ number_literal ])) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x46f4e;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x46f4e" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x46f4e" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "apuStack_f4[2] = puVar19 + 2000;" (assignment_expression "apuStack_f4[2] = puVar19 + 2000" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = (binary_expression "puVar19 + 2000" identifier + number_literal)) ;) (expression_statement "apuStack_f4[3] = puVar18;" (assignment_expression "apuStack_f4[3] = puVar18" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))" ( (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" * (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" * (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x28)" ( (binary_expression "*(int *)(puVar17 + -0x9c) + 0x28" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar2 = *(int *)(puVar17 + 0x10);" (assignment_expression "iVar2 = *(int *)(puVar17 + 0x10)" identifier = (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);" (assignment_expression "puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000)" identifier = (cast_expression "(undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar17 + -0xa8) + 2000)" ( (binary_expression "*(int *)(puVar17 + -0xa8) + 2000" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(puVar17 + -0xac) = (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xac) = (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "puVar19 = puVar19 + 2000;" (assignment_expression "puVar19 = puVar19 + 2000" identifier = (binary_expression "puVar19 + 2000" identifier + number_literal)) ;) (while_statement "while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }" while (parenthesized_expression "(puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11)" ( (comma_expression "puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11" (assignment_expression "puVar11 = (undefined1 *)(iVar2 - 500)" identifier = (cast_expression "(undefined1 *)(iVar2 - 500)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 - 500)" ( (binary_expression "iVar2 - 500" identifier - number_literal) )))) , (comma_expression "apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11" (assignment_expression "apuStack_100[0] = puVar19" (subscript_expression "apuStack_100[0]" identifier [ number_literal ]) = identifier) , (comma_expression "apuStack_100[1] = puVar12, 500 < (int)puVar11" (assignment_expression "apuStack_100[1] = puVar12" (subscript_expression "apuStack_100[1]" identifier [ number_literal ]) = identifier) , (binary_expression "500 < (int)puVar11" number_literal < (cast_expression "(int)puVar11" ( (type_descriptor "int" primitive_type) ) identifier))))) )) (compound_statement "{\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }" { (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar11;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar11" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = identifier) ;) (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "iStack_f8 = 500;" (assignment_expression "iStack_f8 = 500" identifier = number_literal) ;) (expression_statement "auStack_8014[0x1fc4] = 0x46fa8;" (assignment_expression "auStack_8014[0x1fc4] = 0x46fa8" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))" ( (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" * (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" * (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x68)" ( (binary_expression "*(int *)(puVar17 + -0x9c) + 0x68" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4)" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x46fbc;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x46fbc" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x46fbc" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "apuStack_f4[1] = puVar19;" (assignment_expression "apuStack_f4[1] = puVar19" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[2] = puVar19;" (assignment_expression "apuStack_f4[2] = puVar19" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uStack_e4 = (uint)puVar18;" (assignment_expression "uStack_e4 = (uint)puVar18" identifier = (cast_expression "(uint)puVar18" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();" (assignment_expression "uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))()" identifier = (call_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))()" (parenthesized_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))" ( (pointer_expression "*(code *)**(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(code *)**(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar17 + -0x9c)" * (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))))) )) (argument_list "()" ( )))) ;) (expression_statement "puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));" (assignment_expression "puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac))" identifier = (cast_expression "(uint *)(puVar19 + *(int *)(puVar17 + -0xac))" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar19 + *(int *)(puVar17 + -0xac))" ( (binary_expression "puVar19 + *(int *)(puVar17 + -0xac)" identifier + (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) )))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }" { (do_statement "do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);" do (compound_statement "{\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        }" { (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "puVar19 = puVar19 + 2000;" (assignment_expression "puVar19 = puVar19 + 2000" identifier = (binary_expression "puVar19 + 2000" identifier + number_literal)) ;) (expression_statement "puVar12 = puVar12 + 2000;" (assignment_expression "puVar12 = puVar12 + 2000" identifier = (binary_expression "puVar12 + 2000" identifier + number_literal)) ;) (expression_statement "apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4)" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x46ff2;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x46ff2" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x46ff2" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "apuStack_f4[2] = puVar19;" (assignment_expression "apuStack_f4[2] = puVar19" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[3] = puVar18;" (assignment_expression "apuStack_f4[3] = puVar18" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))" ( (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" * (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" * (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x28)" ( (binary_expression "*(int *)(puVar17 + -0x9c) + 0x28" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar2 = *(int *)(puVar17 + -0xa8);" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xa8)" identifier = (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) })) (if_statement "if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }" if (parenthesized_expression "((int)puVar18 < (int)puVar11)" ( (binary_expression "(int)puVar18 < (int)puVar11" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)puVar11" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }" { (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "auStack_8014[0x1fc4] = 0x47033;" (assignment_expression "auStack_8014[0x1fc4] = 0x47033" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "iStack_f8 = (int)puVar11;" (assignment_expression "iStack_f8 = (int)puVar11" identifier = (cast_expression "(int)puVar11" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))" ( (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" * (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" * (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x68)" ( (binary_expression "*(int *)(puVar17 + -0x9c) + 0x68" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "()" ( ))) ;) }) (else_clause "else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }" else (compound_statement "{\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }" { (expression_statement "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_100[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "auStack_8014[0x1fc4] = 0x477f7;" (assignment_expression "auStack_8014[0x1fc4] = 0x477f7" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "iStack_f8 = (int)puVar18;" (assignment_expression "iStack_f8 = (int)puVar18" identifier = (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "apuStack_f4[0] = puVar12;" (assignment_expression "apuStack_f4[0] = puVar12" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[1] = puVar11;" (assignment_expression "apuStack_f4[1] = puVar11" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))" ( (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" * (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" * (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x68)" ( (binary_expression "*(int *)(puVar17 + -0x9c) + 0x68" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "()" ( ))) ;) }))) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4)" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x47047;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x47047" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x47047" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "apuStack_f4[1] = puVar19;" (assignment_expression "apuStack_f4[1] = puVar19" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[2] = puVar19;" (assignment_expression "apuStack_f4[2] = puVar19" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uStack_e4 = (uint)puVar18;" (assignment_expression "uStack_e4 = (uint)puVar18" identifier = (cast_expression "(uint)puVar18" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();" (assignment_expression "uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))()" identifier = (call_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))()" (parenthesized_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))" ( (pointer_expression "*(code *)**(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(code *)**(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar17 + -0x9c)" * (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))))) )) (argument_list "()" ( )))) ;) (expression_statement "puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));" (assignment_expression "puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac))" identifier = (cast_expression "(uint *)(puVar19 + *(int *)(puVar17 + -0xac))" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar19 + *(int *)(puVar17 + -0xac))" ( (binary_expression "puVar19 + *(int *)(puVar17 + -0xac)" identifier + (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) )))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }" { (do_statement "do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);" do (compound_statement "{\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      }" { (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;" (assignment_expression "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11" (pointer_expression "*(undefined1 **)(puVar17 + -0x9c)" * (cast_expression "(undefined1 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = (binary_expression "puVar18 + (int)puVar11" identifier + (cast_expression "(int)puVar11" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" identifier = identifier) ;) }))) (labeled_statement "LAB_000471aa:\n  if (*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14)) {\n    return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);\n  }" statement_identifier : (if_statement "if (*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14)) {\n    return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);\n  }" if (parenthesized_expression "(*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14))" ( (binary_expression "*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14)" (pointer_expression "*(int *)(puVar17 + -0x1c)" * (cast_expression "(int *)(puVar17 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x1c)" ( (binary_expression "puVar17 + -0x1c" identifier + number_literal) )))) == (pointer_expression "*(int *)(in_GS_OFFSET + 0x14)" * (cast_expression "(int *)(in_GS_OFFSET + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_GS_OFFSET + 0x14)" ( (binary_expression "in_GS_OFFSET + 0x14" identifier + number_literal) ))))) )) (compound_statement "{\n    return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);\n  }" { (return_statement "return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);" return (pointer_expression "*(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4)" * (cast_expression "(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4)" ( (binary_expression "puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4" (binary_expression "puVar19 + *(int *)(puVar17 + -0x9c) * 4" identifier + (binary_expression "*(int *)(puVar17 + -0x9c) * 4" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) * number_literal)) + number_literal) )))) ;) }))) comment (expression_statement "*(undefined4 *)(puVar11 + -4) = 0x47f0b;" (assignment_expression "*(undefined4 *)(puVar11 + -4) = 0x47f0b" (pointer_expression "*(undefined4 *)(puVar11 + -4)" * (cast_expression "(undefined4 *)(puVar11 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -4)" ( (binary_expression "puVar11 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0007ebe0();" (call_expression "FUN_0007ebe0()" identifier (argument_list "()" ( ))) ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nmp_limb_t __gmpn_mul(mp_ptr prodp,mp_srcptr up,mp_size_t un,mp_srcptr vp,mp_size_t vn)\n\n{\n  uint *puVar1;\n  int iVar2;\n  int iVar3;\n  code *pcVar4;\n  int iVar5;\n  mp_ptr pmVar6;\n  mp_srcptr pmVar7;\n  uint uVar8;\n  uint uVar9;\n  void *pvVar10;\n  mp_srcptr pmVar11;\n  mp_limb_t mVar12;\n  uint *puVar13;\n  uint *puVar14;\n  undefined1 *puVar15;\n  undefined1 *puVar16;\n  int in_GS_OFFSET;\n  mp_size_t amStackY_8010 [8133];\n  undefined1 auStack_dc [8];\n  int local_d4;\n  mp_limb_t local_d0;\n  uint local_cc;\n  uint *local_c8;\n  mp_ptr local_c4;\n  void *local_c0;\n  uint local_bc;\n  uint *local_b8;\n  mp_srcptr local_b4;\n  mp_srcptr local_b0;\n  mp_srcptr local_ac;\n  mp_srcptr local_a8;\n  uint *local_a4;\n  mp_srcptr local_a0;\n  tmp_reentrant_t *__tmp_marker;\n  mp_limb_t tp [29];\n  \n  puVar15 = auStack_dc;\n  puVar16 = auStack_dc;\n  local_a4 = vp;\n  iVar3 = *(int *)(in_GS_OFFSET + 0x14);\n  if (un == vn) {\n    local_a0 = (mp_srcptr)(un * 2);\n    if (up == vp) {\n      __gmpn_sqr(prodp,up,un);\n      puVar16 = auStack_dc;\n    }\n    else {\n      __gmpn_mul_n(prodp,up,vp,un);\n      puVar16 = auStack_dc;\n    }\n    goto LAB_000471aa;\n  }\n  if (*(int *)PTR___gmpn_cpuvec_initialized_0009dd58 == 0) {\n    local_a8 = up;\n    local_ac = (mp_srcptr)PTR___gmpn_cpuvec_initialized_0009dd58;\n    __gmpn_cpuvec_init();\n    local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;\n    up = local_a8;\n    if (*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94) <= vn) {\n      if (*local_ac == 0) {\n        __gmpn_cpuvec_init();\n        up = local_a8;\n      }\n      goto LAB_000470c0;\n    }\n  }\n  else {\n    local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;\n    if (*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94) <= vn) {\nLAB_000470c0:\n      if (vn < (int)local_a0[0x26]) {\n        local_a8 = (mp_srcptr)(vn * 8);\n        local_c4 = (mp_ptr)(vn * 4);\n        local_d0 = vn * 5;\n        iVar2 = -(((vn * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        local_c0 = (void *)((int)&local_d0 + iVar2);\n        local_b8 = (uint *)(vn * 2);\n        local_c8 = (uint *)(vn * 3);\n        if (un < (int)(vn * 3)) {\n          local_a0 = (mp_srcptr)(un + vn);\n          if (un * 4 < vn * 5) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else if (un * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n        }\n        else {\n          local_b4 = up;\n          iVar5 = -(vn * 0x10 + 0x10);\n          *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n          *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n          *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n          *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = local_b8;\n          *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = up;\n          *(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = prodp;\n          local_b0 = (mp_srcptr)((int)&local_d0 + iVar5 + iVar2);\n          *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x4783a;\n          __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                            *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                            *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                            *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          puVar13 = local_b8;\n          prodp = (mp_ptr)((int)prodp + (int)local_a8);\n          local_ac = (mp_srcptr)(un - (int)local_b8);\n          local_b4 = (mp_srcptr)((int)local_b4 + (int)local_a8);\n          local_cc = (int)local_b0 + (int)local_c4;\n          if ((int)local_c8 <= (int)(un - (int)local_b8)) {\n            do {\n              *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n              *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n              *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n              *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;\n              __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n              pmVar7 = local_a0;\n              pmVar11 = local_a8;\n              *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n              local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);\n              *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n              local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);\n              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n              *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n              pcVar4 = (code *)*pmVar7;\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;\n              local_bc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_c4);\n              *(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;\n              local_b8 = puVar14;\n              *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n              *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;\n              (*pcVar4)();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_a8);\n            } while ((int)local_c8 <= (int)local_ac);\n          }\n          pmVar11 = local_ac;\n          if ((int)local_ac * 4 < (int)local_d0) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = pmVar11;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47cd2;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else if ((int)local_ac * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          pmVar11 = local_a0;\n          *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n          *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n          *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n          pcVar4 = (code *)*pmVar11;\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x4799b;\n          local_a4 = (uint *)(*pcVar4)();\n          pmVar11 = local_a0;\n          puVar13 = (uint *)((int)local_c4 + (int)prodp);\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_ac;\n          *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n          *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar13;\n          pcVar4 = (code *)pmVar11[10];\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x479c2;\n          (*pcVar4)();\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + (int)local_a4;\n          if (CARRY4(uVar9,(uint)local_a4)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_ac);\n          puVar16 = auStack_dc + iVar5 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      local_ac = (mp_srcptr)(un + vn);\n      if ((3999 < (int)local_ac) && (local_a8 = (mp_srcptr)(vn * 3), 1999 < (int)local_a8)) {\n        uVar9 = vn * 8;\n        if (uVar9 - un == 0 || (int)uVar9 < un) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_bc = uVar9;\n          local_b0 = up;\n          local_ac = (mp_srcptr)__gmp_tmp_reentrant_alloc(&__tmp_marker,(vn * 9 >> 1) << 2);\n          amStackY_8010[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul(prodp,local_b0,(mp_size_t)local_a8,local_a4,vn);\n          local_c0 = (void *)(vn * 4);\n          local_c8 = (uint *)(vn * -3);\n          puVar13 = (uint *)((int)local_c8 + un);\n          local_b4 = (mp_srcptr)((int)local_a8 * 4);\n          prodp = prodp + (int)local_a8;\n          local_b0 = local_b0 + (int)local_a8;\n          local_cc = local_bc - vn;\n          if ((int)puVar13 * 2 < (int)local_cc) {\n            local_c4 = local_ac + vn;\n          }\n          else {\n            local_c4 = local_ac + vn;\n            local_b8 = puVar13;\n            do {\n              amStackY_8010[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn);\n              puVar13 = (uint *)((int)puVar13 + (int)local_c8);\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4);\n              local_bc = (*(code *)*local_a0)();\n              local_b8 = (uint *)((int)prodp + (int)local_c0);\n              (*(code *)local_a0[10])();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_b4);\n            } while (local_cc == (int)puVar13 * 2 ||\n                     SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0)\n            ;\n          }\n          local_b8 = puVar13;\n          if ((int)local_b8 < vn) {\n            amStackY_8010[0x1fc4] = 0x473bd;\n            __gmpn_mul(local_ac,local_a4,vn,local_b0,(mp_size_t)local_b8);\n          }\n          else {\n            amStackY_8010[0x1fc4] = 0x47d73;\n            __gmpn_mul(local_ac,local_b0,(mp_size_t)local_b8,local_a4,vn);\n          }\n          local_a8 = (mp_srcptr)(*(code *)*local_a0)();\n          local_a4 = (uint *)((int)local_c0 + (int)prodp);\n          (*(code *)local_a0[10])();\n          uVar9 = *local_a4;\n          *local_a4 = *local_a4 + (int)local_a8;\n          puVar13 = local_a4;\n          if (CARRY4(uVar9,(uint)local_a8)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            __gmp_tmp_reentrant_free(__tmp_marker);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_b8);\n          puVar16 = auStack_dc;\n        }\n        else {\n          amStackY_8010[0x1fc4] = 0x47c6c;\n          __gmpn_nussbaumer_mul(prodp,up,un,local_a4,vn);\n          local_a0 = local_ac;\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < vn) {\n        local_a8 = (mp_srcptr)(un * 3 + 0xc);\n        if (SBORROW4((int)local_a8,vn * 4) != (int)(local_a8 + -vn) < 0) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_a0 = local_ac;\n          if (vn < 0x15e) {\n            iVar2 = -(un * 0xc + 0x9bU & 0xfffffff0);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else if (vn < 0x1c2) {\n            iVar2 = -((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else {\n            iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4;\n            uVar9 = iVar2 + 0x6dc;\n            if (uVar9 < 0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_dc + iVar2;\n              pvVar10 = (void *)((int)&local_d0 + iVar2);\n            }\n            else {\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }\n            *(void **)(puVar15 + -0xc) = pvVar10;\n            *(mp_size_t *)(puVar15 + -0x10) = vn;\n            *(uint **)(puVar15 + -0x14) = local_a4;\n            *(mp_size_t *)(puVar15 + -0x18) = un;\n            *(mp_srcptr *)(puVar15 + -0x1c) = up;\n            *(mp_ptr *)(puVar15 + -0x20) = prodp;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc));\n            puVar16 = puVar15;\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n            *(undefined4 *)(puVar16 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n          }\n          goto LAB_000471aa;\n        }\n      }\n      __tmp_marker = (tmp_reentrant_t *)0x0;\n      uVar9 = (vn + 8) * 0x10;\n      if (uVar9 < 0x7f01) {\n        local_b8 = (uint *)((int)&local_d0 + -(uVar9 + 0x10));\n        puVar16 = auStack_dc + -(uVar9 + 0x10);\n      }\n      else {\n        local_a8 = up;\n        local_b8 = (uint *)__gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n        up = local_a8;\n        puVar16 = auStack_dc;\n      }\n      local_bc = vn * 5;\n      local_a8 = (mp_srcptr)(un * 2);\n      local_b0 = (mp_srcptr)(vn * 7);\n      if (SBORROW4((int)local_a8,vn * 5) == (int)local_a8 + vn * -5 < 0) {\n        uVar9 = ((int)local_b0 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          local_a8 = (mp_srcptr)((uint)(puVar16 + iVar2 + 0xf) & 0xfffffff0);\n          puVar16 = puVar16 + iVar2;\n        }\n        else {\n          local_ac = up;\n          *(uint *)(puVar16 + -0xc) = uVar9;\n          *(tmp_reentrant_t ***)(puVar16 + -0x10) = &__tmp_marker;\n          *(undefined4 *)(puVar16 + -0x14) = 0x47eac;\n          local_a8 = (mp_srcptr)\n                     __gmp_tmp_reentrant_alloc\n                               (*(tmp_reentrant_t ***)(puVar16 + -0x10),*(size_t *)(puVar16 + -0xc))\n          ;\n          up = local_ac;\n        }\n        local_c8 = (uint *)(vn * 2);\n        if (vn < 0x6e) {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = (uint *)(vn * 2);\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          local_c4 = (mp_ptr)(vn * 8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x476c2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_ac);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x476eb;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = local_c8;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_c4 = (mp_ptr)(vn * 8);\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bb2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)local_ac + (int)prodp);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bda;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        if ((int)local_b4 < vn) {\n          *(mp_srcptr *)(puVar16 + -0x10) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x14) = local_b0;\n          *(mp_size_t *)(puVar16 + -0x18) = vn;\n          *(uint **)(puVar16 + -0x1c) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x4775a;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        else {\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x18) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47c49;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        pmVar11 = local_a0;\n        *(mp_size_t *)(puVar16 + -4) = vn;\n        *(mp_srcptr *)(puVar16 + -8) = local_a8;\n        *(mp_ptr *)(puVar16 + -0xc) = prodp;\n        *(mp_ptr *)(puVar16 + -0x10) = prodp;\n        pcVar4 = (code *)*pmVar11;\n        *(undefined4 *)(puVar16 + -0x14) = 0x4776e;\n        local_a8 = (mp_srcptr)(*pcVar4)();\n        pmVar11 = local_a0;\n        puVar13 = (uint *)((int)local_ac + (int)prodp);\n        *(mp_srcptr *)(puVar16 + -8) = local_b4;\n        local_a4 = puVar13;\n        *(void **)(puVar16 + -0xc) = local_c0;\n        *(uint **)(puVar16 + -0x10) = puVar13;\n        pcVar4 = (code *)pmVar11[10];\n        *(undefined4 *)(puVar16 + -0x14) = 0x4779b;\n        (*pcVar4)();\n        uVar9 = *local_a4;\n        *local_a4 = *local_a4 + (int)local_a8;\n        puVar13 = local_a4;\n        if (CARRY4(uVar9,(uint)local_a8)) {\n          do {\n            puVar14 = puVar13 + 1;\n            uVar9 = *puVar14;\n            *puVar14 = *puVar14 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        local_ac = (mp_srcptr)(vn + (int)local_b4);\n      }\n      else if (un * 6 < (int)local_b0) {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47d4a;\n        __gmpn_toom33_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else if (SBORROW4((int)local_a8,vn * 3) == (int)local_a8 + vn * -3 < 0) {\n        if (un * 6 < vn * 0xb) {\n          if (un * 4 < (int)local_b0) {\n            if (vn < 0x6e) goto LAB_00047dab;\n          }\n          else if (vn < 100) goto LAB_00047e74;\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47d26;\n          __gmpn_toom53_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else if (vn < 0x6e) {\nLAB_00047e74:\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e8e;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n      }\n      else if (vn < 100) {\nLAB_00047dab:\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47dc5;\n        __gmpn_toom32_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47a39;\n        __gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n        *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n        *(undefined4 *)(puVar16 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n      }\n      local_a0 = local_ac;\n      goto LAB_000471aa;\n    }\n  }\n  local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;\n  if ((un < 0x1f5) || (vn == 1)) {\n    amStackY_8010[0x1fc4] = 0x47451;\n    (**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68))();\n    local_a0 = (mp_srcptr)(vn + un);\n    puVar16 = auStack_dc;\n  }\n  else {\n    prodp = prodp + 500;\n    amStackY_8010[0x1fc4] = 0x46f33;\n    local_ac = up;\n    (**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68))();\n    local_a8 = tp;\n    (*(code *)local_a0[10])();\n    local_b0 = (mp_srcptr)(vn * 4);\n    pmVar11 = (mp_srcptr)(un + -500);\n    while (500 < (int)pmVar11) {\n      amStackY_8010[0x1fc4] = 0x46fa8;\n      local_ac = pmVar11;\n      (*(code *)local_a0[0x1a])();\n      uVar8 = (*(code *)*local_a0)();\n      puVar13 = (uint *)((int)prodp + (int)local_b0);\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar14 = puVar13 + 1;\n          uVar9 = *puVar14;\n          *puVar14 = *puVar14 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      prodp = prodp + 500;\n      (*(code *)local_a0[10])();\n      pmVar11 = local_ac + -0x7d;\n    }\n    if (vn < (int)pmVar11) {\n      amStackY_8010[0x1fc4] = 0x47033;\n      (*(code *)local_a0[0x1a])();\n    }\n    else {\n      amStackY_8010[0x1fc4] = 0x477f7;\n      (*(code *)local_a0[0x1a])();\n    }\n    uVar8 = (*(code *)*local_a0)();\n    puVar13 = (uint *)((int)local_b0 + (int)prodp);\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar14 = puVar13 + 1;\n        uVar9 = *puVar14;\n        *puVar14 = *puVar14 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    local_a0 = (mp_srcptr)(vn + (int)pmVar11);\n    puVar16 = auStack_dc;\n  }\nLAB_000471aa:\n  if (iVar3 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return prodp[(int)local_a0 + -1];\n  }\n                    /* WARNING: Subroutine does not return */\n  *(undefined4 *)(puVar16 + -4) = 0x47f0b;\n  __stack_chk_fail_local();\n}\n\n" comment (function_definition "mp_limb_t __gmpn_mul(mp_ptr prodp,mp_srcptr up,mp_size_t un,mp_srcptr vp,mp_size_t vn)\n\n{\n  uint *puVar1;\n  int iVar2;\n  int iVar3;\n  code *pcVar4;\n  int iVar5;\n  mp_ptr pmVar6;\n  mp_srcptr pmVar7;\n  uint uVar8;\n  uint uVar9;\n  void *pvVar10;\n  mp_srcptr pmVar11;\n  mp_limb_t mVar12;\n  uint *puVar13;\n  uint *puVar14;\n  undefined1 *puVar15;\n  undefined1 *puVar16;\n  int in_GS_OFFSET;\n  mp_size_t amStackY_8010 [8133];\n  undefined1 auStack_dc [8];\n  int local_d4;\n  mp_limb_t local_d0;\n  uint local_cc;\n  uint *local_c8;\n  mp_ptr local_c4;\n  void *local_c0;\n  uint local_bc;\n  uint *local_b8;\n  mp_srcptr local_b4;\n  mp_srcptr local_b0;\n  mp_srcptr local_ac;\n  mp_srcptr local_a8;\n  uint *local_a4;\n  mp_srcptr local_a0;\n  tmp_reentrant_t *__tmp_marker;\n  mp_limb_t tp [29];\n  \n  puVar15 = auStack_dc;\n  puVar16 = auStack_dc;\n  local_a4 = vp;\n  iVar3 = *(int *)(in_GS_OFFSET + 0x14);\n  if (un == vn) {\n    local_a0 = (mp_srcptr)(un * 2);\n    if (up == vp) {\n      __gmpn_sqr(prodp,up,un);\n      puVar16 = auStack_dc;\n    }\n    else {\n      __gmpn_mul_n(prodp,up,vp,un);\n      puVar16 = auStack_dc;\n    }\n    goto LAB_000471aa;\n  }\n  if (*(int *)PTR___gmpn_cpuvec_initialized_0009dd58 == 0) {\n    local_a8 = up;\n    local_ac = (mp_srcptr)PTR___gmpn_cpuvec_initialized_0009dd58;\n    __gmpn_cpuvec_init();\n    local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;\n    up = local_a8;\n    if (*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94) <= vn) {\n      if (*local_ac == 0) {\n        __gmpn_cpuvec_init();\n        up = local_a8;\n      }\n      goto LAB_000470c0;\n    }\n  }\n  else {\n    local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;\n    if (*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94) <= vn) {\nLAB_000470c0:\n      if (vn < (int)local_a0[0x26]) {\n        local_a8 = (mp_srcptr)(vn * 8);\n        local_c4 = (mp_ptr)(vn * 4);\n        local_d0 = vn * 5;\n        iVar2 = -(((vn * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        local_c0 = (void *)((int)&local_d0 + iVar2);\n        local_b8 = (uint *)(vn * 2);\n        local_c8 = (uint *)(vn * 3);\n        if (un < (int)(vn * 3)) {\n          local_a0 = (mp_srcptr)(un + vn);\n          if (un * 4 < vn * 5) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else if (un * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n        }\n        else {\n          local_b4 = up;\n          iVar5 = -(vn * 0x10 + 0x10);\n          *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n          *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n          *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n          *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = local_b8;\n          *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = up;\n          *(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = prodp;\n          local_b0 = (mp_srcptr)((int)&local_d0 + iVar5 + iVar2);\n          *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x4783a;\n          __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                            *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                            *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                            *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          puVar13 = local_b8;\n          prodp = (mp_ptr)((int)prodp + (int)local_a8);\n          local_ac = (mp_srcptr)(un - (int)local_b8);\n          local_b4 = (mp_srcptr)((int)local_b4 + (int)local_a8);\n          local_cc = (int)local_b0 + (int)local_c4;\n          if ((int)local_c8 <= (int)(un - (int)local_b8)) {\n            do {\n              *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n              *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n              *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n              *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;\n              __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n              pmVar7 = local_a0;\n              pmVar11 = local_a8;\n              *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n              local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);\n              *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n              local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);\n              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n              *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n              pcVar4 = (code *)*pmVar7;\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;\n              local_bc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_c4);\n              *(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;\n              local_b8 = puVar14;\n              *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n              *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;\n              (*pcVar4)();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_a8);\n            } while ((int)local_c8 <= (int)local_ac);\n          }\n          pmVar11 = local_ac;\n          if ((int)local_ac * 4 < (int)local_d0) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = pmVar11;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47cd2;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else if ((int)local_ac * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          pmVar11 = local_a0;\n          *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n          *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n          *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n          pcVar4 = (code *)*pmVar11;\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x4799b;\n          local_a4 = (uint *)(*pcVar4)();\n          pmVar11 = local_a0;\n          puVar13 = (uint *)((int)local_c4 + (int)prodp);\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_ac;\n          *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n          *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar13;\n          pcVar4 = (code *)pmVar11[10];\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x479c2;\n          (*pcVar4)();\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + (int)local_a4;\n          if (CARRY4(uVar9,(uint)local_a4)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_ac);\n          puVar16 = auStack_dc + iVar5 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      local_ac = (mp_srcptr)(un + vn);\n      if ((3999 < (int)local_ac) && (local_a8 = (mp_srcptr)(vn * 3), 1999 < (int)local_a8)) {\n        uVar9 = vn * 8;\n        if (uVar9 - un == 0 || (int)uVar9 < un) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_bc = uVar9;\n          local_b0 = up;\n          local_ac = (mp_srcptr)__gmp_tmp_reentrant_alloc(&__tmp_marker,(vn * 9 >> 1) << 2);\n          amStackY_8010[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul(prodp,local_b0,(mp_size_t)local_a8,local_a4,vn);\n          local_c0 = (void *)(vn * 4);\n          local_c8 = (uint *)(vn * -3);\n          puVar13 = (uint *)((int)local_c8 + un);\n          local_b4 = (mp_srcptr)((int)local_a8 * 4);\n          prodp = prodp + (int)local_a8;\n          local_b0 = local_b0 + (int)local_a8;\n          local_cc = local_bc - vn;\n          if ((int)puVar13 * 2 < (int)local_cc) {\n            local_c4 = local_ac + vn;\n          }\n          else {\n            local_c4 = local_ac + vn;\n            local_b8 = puVar13;\n            do {\n              amStackY_8010[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn);\n              puVar13 = (uint *)((int)puVar13 + (int)local_c8);\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4);\n              local_bc = (*(code *)*local_a0)();\n              local_b8 = (uint *)((int)prodp + (int)local_c0);\n              (*(code *)local_a0[10])();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_b4);\n            } while (local_cc == (int)puVar13 * 2 ||\n                     SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0)\n            ;\n          }\n          local_b8 = puVar13;\n          if ((int)local_b8 < vn) {\n            amStackY_8010[0x1fc4] = 0x473bd;\n            __gmpn_mul(local_ac,local_a4,vn,local_b0,(mp_size_t)local_b8);\n          }\n          else {\n            amStackY_8010[0x1fc4] = 0x47d73;\n            __gmpn_mul(local_ac,local_b0,(mp_size_t)local_b8,local_a4,vn);\n          }\n          local_a8 = (mp_srcptr)(*(code *)*local_a0)();\n          local_a4 = (uint *)((int)local_c0 + (int)prodp);\n          (*(code *)local_a0[10])();\n          uVar9 = *local_a4;\n          *local_a4 = *local_a4 + (int)local_a8;\n          puVar13 = local_a4;\n          if (CARRY4(uVar9,(uint)local_a8)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            __gmp_tmp_reentrant_free(__tmp_marker);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_b8);\n          puVar16 = auStack_dc;\n        }\n        else {\n          amStackY_8010[0x1fc4] = 0x47c6c;\n          __gmpn_nussbaumer_mul(prodp,up,un,local_a4,vn);\n          local_a0 = local_ac;\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < vn) {\n        local_a8 = (mp_srcptr)(un * 3 + 0xc);\n        if (SBORROW4((int)local_a8,vn * 4) != (int)(local_a8 + -vn) < 0) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_a0 = local_ac;\n          if (vn < 0x15e) {\n            iVar2 = -(un * 0xc + 0x9bU & 0xfffffff0);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else if (vn < 0x1c2) {\n            iVar2 = -((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else {\n            iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4;\n            uVar9 = iVar2 + 0x6dc;\n            if (uVar9 < 0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_dc + iVar2;\n              pvVar10 = (void *)((int)&local_d0 + iVar2);\n            }\n            else {\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }\n            *(void **)(puVar15 + -0xc) = pvVar10;\n            *(mp_size_t *)(puVar15 + -0x10) = vn;\n            *(uint **)(puVar15 + -0x14) = local_a4;\n            *(mp_size_t *)(puVar15 + -0x18) = un;\n            *(mp_srcptr *)(puVar15 + -0x1c) = up;\n            *(mp_ptr *)(puVar15 + -0x20) = prodp;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc));\n            puVar16 = puVar15;\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n            *(undefined4 *)(puVar16 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n          }\n          goto LAB_000471aa;\n        }\n      }\n      __tmp_marker = (tmp_reentrant_t *)0x0;\n      uVar9 = (vn + 8) * 0x10;\n      if (uVar9 < 0x7f01) {\n        local_b8 = (uint *)((int)&local_d0 + -(uVar9 + 0x10));\n        puVar16 = auStack_dc + -(uVar9 + 0x10);\n      }\n      else {\n        local_a8 = up;\n        local_b8 = (uint *)__gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n        up = local_a8;\n        puVar16 = auStack_dc;\n      }\n      local_bc = vn * 5;\n      local_a8 = (mp_srcptr)(un * 2);\n      local_b0 = (mp_srcptr)(vn * 7);\n      if (SBORROW4((int)local_a8,vn * 5) == (int)local_a8 + vn * -5 < 0) {\n        uVar9 = ((int)local_b0 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          local_a8 = (mp_srcptr)((uint)(puVar16 + iVar2 + 0xf) & 0xfffffff0);\n          puVar16 = puVar16 + iVar2;\n        }\n        else {\n          local_ac = up;\n          *(uint *)(puVar16 + -0xc) = uVar9;\n          *(tmp_reentrant_t ***)(puVar16 + -0x10) = &__tmp_marker;\n          *(undefined4 *)(puVar16 + -0x14) = 0x47eac;\n          local_a8 = (mp_srcptr)\n                     __gmp_tmp_reentrant_alloc\n                               (*(tmp_reentrant_t ***)(puVar16 + -0x10),*(size_t *)(puVar16 + -0xc))\n          ;\n          up = local_ac;\n        }\n        local_c8 = (uint *)(vn * 2);\n        if (vn < 0x6e) {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = (uint *)(vn * 2);\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          local_c4 = (mp_ptr)(vn * 8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x476c2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_ac);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x476eb;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = local_c8;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_c4 = (mp_ptr)(vn * 8);\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bb2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)local_ac + (int)prodp);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bda;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        if ((int)local_b4 < vn) {\n          *(mp_srcptr *)(puVar16 + -0x10) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x14) = local_b0;\n          *(mp_size_t *)(puVar16 + -0x18) = vn;\n          *(uint **)(puVar16 + -0x1c) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x4775a;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        else {\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x18) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47c49;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        pmVar11 = local_a0;\n        *(mp_size_t *)(puVar16 + -4) = vn;\n        *(mp_srcptr *)(puVar16 + -8) = local_a8;\n        *(mp_ptr *)(puVar16 + -0xc) = prodp;\n        *(mp_ptr *)(puVar16 + -0x10) = prodp;\n        pcVar4 = (code *)*pmVar11;\n        *(undefined4 *)(puVar16 + -0x14) = 0x4776e;\n        local_a8 = (mp_srcptr)(*pcVar4)();\n        pmVar11 = local_a0;\n        puVar13 = (uint *)((int)local_ac + (int)prodp);\n        *(mp_srcptr *)(puVar16 + -8) = local_b4;\n        local_a4 = puVar13;\n        *(void **)(puVar16 + -0xc) = local_c0;\n        *(uint **)(puVar16 + -0x10) = puVar13;\n        pcVar4 = (code *)pmVar11[10];\n        *(undefined4 *)(puVar16 + -0x14) = 0x4779b;\n        (*pcVar4)();\n        uVar9 = *local_a4;\n        *local_a4 = *local_a4 + (int)local_a8;\n        puVar13 = local_a4;\n        if (CARRY4(uVar9,(uint)local_a8)) {\n          do {\n            puVar14 = puVar13 + 1;\n            uVar9 = *puVar14;\n            *puVar14 = *puVar14 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        local_ac = (mp_srcptr)(vn + (int)local_b4);\n      }\n      else if (un * 6 < (int)local_b0) {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47d4a;\n        __gmpn_toom33_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else if (SBORROW4((int)local_a8,vn * 3) == (int)local_a8 + vn * -3 < 0) {\n        if (un * 6 < vn * 0xb) {\n          if (un * 4 < (int)local_b0) {\n            if (vn < 0x6e) goto LAB_00047dab;\n          }\n          else if (vn < 100) goto LAB_00047e74;\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47d26;\n          __gmpn_toom53_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else if (vn < 0x6e) {\nLAB_00047e74:\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e8e;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n      }\n      else if (vn < 100) {\nLAB_00047dab:\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47dc5;\n        __gmpn_toom32_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47a39;\n        __gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n        *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n        *(undefined4 *)(puVar16 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n      }\n      local_a0 = local_ac;\n      goto LAB_000471aa;\n    }\n  }\n  local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;\n  if ((un < 0x1f5) || (vn == 1)) {\n    amStackY_8010[0x1fc4] = 0x47451;\n    (**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68))();\n    local_a0 = (mp_srcptr)(vn + un);\n    puVar16 = auStack_dc;\n  }\n  else {\n    prodp = prodp + 500;\n    amStackY_8010[0x1fc4] = 0x46f33;\n    local_ac = up;\n    (**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68))();\n    local_a8 = tp;\n    (*(code *)local_a0[10])();\n    local_b0 = (mp_srcptr)(vn * 4);\n    pmVar11 = (mp_srcptr)(un + -500);\n    while (500 < (int)pmVar11) {\n      amStackY_8010[0x1fc4] = 0x46fa8;\n      local_ac = pmVar11;\n      (*(code *)local_a0[0x1a])();\n      uVar8 = (*(code *)*local_a0)();\n      puVar13 = (uint *)((int)prodp + (int)local_b0);\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar14 = puVar13 + 1;\n          uVar9 = *puVar14;\n          *puVar14 = *puVar14 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      prodp = prodp + 500;\n      (*(code *)local_a0[10])();\n      pmVar11 = local_ac + -0x7d;\n    }\n    if (vn < (int)pmVar11) {\n      amStackY_8010[0x1fc4] = 0x47033;\n      (*(code *)local_a0[0x1a])();\n    }\n    else {\n      amStackY_8010[0x1fc4] = 0x477f7;\n      (*(code *)local_a0[0x1a])();\n    }\n    uVar8 = (*(code *)*local_a0)();\n    puVar13 = (uint *)((int)local_b0 + (int)prodp);\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar14 = puVar13 + 1;\n        uVar9 = *puVar14;\n        *puVar14 = *puVar14 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    local_a0 = (mp_srcptr)(vn + (int)pmVar11);\n    puVar16 = auStack_dc;\n  }\nLAB_000471aa:\n  if (iVar3 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return prodp[(int)local_a0 + -1];\n  }\n                    /* WARNING: Subroutine does not return */\n  *(undefined4 *)(puVar16 + -4) = 0x47f0b;\n  __stack_chk_fail_local();\n}" type_identifier (function_declarator "__gmpn_mul(mp_ptr prodp,mp_srcptr up,mp_size_t un,mp_srcptr vp,mp_size_t vn)" identifier (parameter_list "(mp_ptr prodp,mp_srcptr up,mp_size_t un,mp_srcptr vp,mp_size_t vn)" ( (parameter_declaration "mp_ptr prodp" type_identifier identifier) , (parameter_declaration "mp_srcptr up" type_identifier identifier) , (parameter_declaration "mp_size_t un" type_identifier identifier) , (parameter_declaration "mp_srcptr vp" type_identifier identifier) , (parameter_declaration "mp_size_t vn" type_identifier identifier) ))) (compound_statement "{\n  uint *puVar1;\n  int iVar2;\n  int iVar3;\n  code *pcVar4;\n  int iVar5;\n  mp_ptr pmVar6;\n  mp_srcptr pmVar7;\n  uint uVar8;\n  uint uVar9;\n  void *pvVar10;\n  mp_srcptr pmVar11;\n  mp_limb_t mVar12;\n  uint *puVar13;\n  uint *puVar14;\n  undefined1 *puVar15;\n  undefined1 *puVar16;\n  int in_GS_OFFSET;\n  mp_size_t amStackY_8010 [8133];\n  undefined1 auStack_dc [8];\n  int local_d4;\n  mp_limb_t local_d0;\n  uint local_cc;\n  uint *local_c8;\n  mp_ptr local_c4;\n  void *local_c0;\n  uint local_bc;\n  uint *local_b8;\n  mp_srcptr local_b4;\n  mp_srcptr local_b0;\n  mp_srcptr local_ac;\n  mp_srcptr local_a8;\n  uint *local_a4;\n  mp_srcptr local_a0;\n  tmp_reentrant_t *__tmp_marker;\n  mp_limb_t tp [29];\n  \n  puVar15 = auStack_dc;\n  puVar16 = auStack_dc;\n  local_a4 = vp;\n  iVar3 = *(int *)(in_GS_OFFSET + 0x14);\n  if (un == vn) {\n    local_a0 = (mp_srcptr)(un * 2);\n    if (up == vp) {\n      __gmpn_sqr(prodp,up,un);\n      puVar16 = auStack_dc;\n    }\n    else {\n      __gmpn_mul_n(prodp,up,vp,un);\n      puVar16 = auStack_dc;\n    }\n    goto LAB_000471aa;\n  }\n  if (*(int *)PTR___gmpn_cpuvec_initialized_0009dd58 == 0) {\n    local_a8 = up;\n    local_ac = (mp_srcptr)PTR___gmpn_cpuvec_initialized_0009dd58;\n    __gmpn_cpuvec_init();\n    local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;\n    up = local_a8;\n    if (*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94) <= vn) {\n      if (*local_ac == 0) {\n        __gmpn_cpuvec_init();\n        up = local_a8;\n      }\n      goto LAB_000470c0;\n    }\n  }\n  else {\n    local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;\n    if (*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94) <= vn) {\nLAB_000470c0:\n      if (vn < (int)local_a0[0x26]) {\n        local_a8 = (mp_srcptr)(vn * 8);\n        local_c4 = (mp_ptr)(vn * 4);\n        local_d0 = vn * 5;\n        iVar2 = -(((vn * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        local_c0 = (void *)((int)&local_d0 + iVar2);\n        local_b8 = (uint *)(vn * 2);\n        local_c8 = (uint *)(vn * 3);\n        if (un < (int)(vn * 3)) {\n          local_a0 = (mp_srcptr)(un + vn);\n          if (un * 4 < vn * 5) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else if (un * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n        }\n        else {\n          local_b4 = up;\n          iVar5 = -(vn * 0x10 + 0x10);\n          *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n          *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n          *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n          *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = local_b8;\n          *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = up;\n          *(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = prodp;\n          local_b0 = (mp_srcptr)((int)&local_d0 + iVar5 + iVar2);\n          *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x4783a;\n          __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                            *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                            *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                            *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          puVar13 = local_b8;\n          prodp = (mp_ptr)((int)prodp + (int)local_a8);\n          local_ac = (mp_srcptr)(un - (int)local_b8);\n          local_b4 = (mp_srcptr)((int)local_b4 + (int)local_a8);\n          local_cc = (int)local_b0 + (int)local_c4;\n          if ((int)local_c8 <= (int)(un - (int)local_b8)) {\n            do {\n              *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n              *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n              *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n              *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;\n              __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n              pmVar7 = local_a0;\n              pmVar11 = local_a8;\n              *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n              local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);\n              *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n              local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);\n              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n              *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n              pcVar4 = (code *)*pmVar7;\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;\n              local_bc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_c4);\n              *(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;\n              local_b8 = puVar14;\n              *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n              *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;\n              (*pcVar4)();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_a8);\n            } while ((int)local_c8 <= (int)local_ac);\n          }\n          pmVar11 = local_ac;\n          if ((int)local_ac * 4 < (int)local_d0) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = pmVar11;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47cd2;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else if ((int)local_ac * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          pmVar11 = local_a0;\n          *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n          *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n          *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n          pcVar4 = (code *)*pmVar11;\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x4799b;\n          local_a4 = (uint *)(*pcVar4)();\n          pmVar11 = local_a0;\n          puVar13 = (uint *)((int)local_c4 + (int)prodp);\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_ac;\n          *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n          *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar13;\n          pcVar4 = (code *)pmVar11[10];\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x479c2;\n          (*pcVar4)();\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + (int)local_a4;\n          if (CARRY4(uVar9,(uint)local_a4)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_ac);\n          puVar16 = auStack_dc + iVar5 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      local_ac = (mp_srcptr)(un + vn);\n      if ((3999 < (int)local_ac) && (local_a8 = (mp_srcptr)(vn * 3), 1999 < (int)local_a8)) {\n        uVar9 = vn * 8;\n        if (uVar9 - un == 0 || (int)uVar9 < un) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_bc = uVar9;\n          local_b0 = up;\n          local_ac = (mp_srcptr)__gmp_tmp_reentrant_alloc(&__tmp_marker,(vn * 9 >> 1) << 2);\n          amStackY_8010[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul(prodp,local_b0,(mp_size_t)local_a8,local_a4,vn);\n          local_c0 = (void *)(vn * 4);\n          local_c8 = (uint *)(vn * -3);\n          puVar13 = (uint *)((int)local_c8 + un);\n          local_b4 = (mp_srcptr)((int)local_a8 * 4);\n          prodp = prodp + (int)local_a8;\n          local_b0 = local_b0 + (int)local_a8;\n          local_cc = local_bc - vn;\n          if ((int)puVar13 * 2 < (int)local_cc) {\n            local_c4 = local_ac + vn;\n          }\n          else {\n            local_c4 = local_ac + vn;\n            local_b8 = puVar13;\n            do {\n              amStackY_8010[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn);\n              puVar13 = (uint *)((int)puVar13 + (int)local_c8);\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4);\n              local_bc = (*(code *)*local_a0)();\n              local_b8 = (uint *)((int)prodp + (int)local_c0);\n              (*(code *)local_a0[10])();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_b4);\n            } while (local_cc == (int)puVar13 * 2 ||\n                     SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0)\n            ;\n          }\n          local_b8 = puVar13;\n          if ((int)local_b8 < vn) {\n            amStackY_8010[0x1fc4] = 0x473bd;\n            __gmpn_mul(local_ac,local_a4,vn,local_b0,(mp_size_t)local_b8);\n          }\n          else {\n            amStackY_8010[0x1fc4] = 0x47d73;\n            __gmpn_mul(local_ac,local_b0,(mp_size_t)local_b8,local_a4,vn);\n          }\n          local_a8 = (mp_srcptr)(*(code *)*local_a0)();\n          local_a4 = (uint *)((int)local_c0 + (int)prodp);\n          (*(code *)local_a0[10])();\n          uVar9 = *local_a4;\n          *local_a4 = *local_a4 + (int)local_a8;\n          puVar13 = local_a4;\n          if (CARRY4(uVar9,(uint)local_a8)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            __gmp_tmp_reentrant_free(__tmp_marker);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_b8);\n          puVar16 = auStack_dc;\n        }\n        else {\n          amStackY_8010[0x1fc4] = 0x47c6c;\n          __gmpn_nussbaumer_mul(prodp,up,un,local_a4,vn);\n          local_a0 = local_ac;\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < vn) {\n        local_a8 = (mp_srcptr)(un * 3 + 0xc);\n        if (SBORROW4((int)local_a8,vn * 4) != (int)(local_a8 + -vn) < 0) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_a0 = local_ac;\n          if (vn < 0x15e) {\n            iVar2 = -(un * 0xc + 0x9bU & 0xfffffff0);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else if (vn < 0x1c2) {\n            iVar2 = -((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else {\n            iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4;\n            uVar9 = iVar2 + 0x6dc;\n            if (uVar9 < 0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_dc + iVar2;\n              pvVar10 = (void *)((int)&local_d0 + iVar2);\n            }\n            else {\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }\n            *(void **)(puVar15 + -0xc) = pvVar10;\n            *(mp_size_t *)(puVar15 + -0x10) = vn;\n            *(uint **)(puVar15 + -0x14) = local_a4;\n            *(mp_size_t *)(puVar15 + -0x18) = un;\n            *(mp_srcptr *)(puVar15 + -0x1c) = up;\n            *(mp_ptr *)(puVar15 + -0x20) = prodp;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc));\n            puVar16 = puVar15;\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n            *(undefined4 *)(puVar16 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n          }\n          goto LAB_000471aa;\n        }\n      }\n      __tmp_marker = (tmp_reentrant_t *)0x0;\n      uVar9 = (vn + 8) * 0x10;\n      if (uVar9 < 0x7f01) {\n        local_b8 = (uint *)((int)&local_d0 + -(uVar9 + 0x10));\n        puVar16 = auStack_dc + -(uVar9 + 0x10);\n      }\n      else {\n        local_a8 = up;\n        local_b8 = (uint *)__gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n        up = local_a8;\n        puVar16 = auStack_dc;\n      }\n      local_bc = vn * 5;\n      local_a8 = (mp_srcptr)(un * 2);\n      local_b0 = (mp_srcptr)(vn * 7);\n      if (SBORROW4((int)local_a8,vn * 5) == (int)local_a8 + vn * -5 < 0) {\n        uVar9 = ((int)local_b0 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          local_a8 = (mp_srcptr)((uint)(puVar16 + iVar2 + 0xf) & 0xfffffff0);\n          puVar16 = puVar16 + iVar2;\n        }\n        else {\n          local_ac = up;\n          *(uint *)(puVar16 + -0xc) = uVar9;\n          *(tmp_reentrant_t ***)(puVar16 + -0x10) = &__tmp_marker;\n          *(undefined4 *)(puVar16 + -0x14) = 0x47eac;\n          local_a8 = (mp_srcptr)\n                     __gmp_tmp_reentrant_alloc\n                               (*(tmp_reentrant_t ***)(puVar16 + -0x10),*(size_t *)(puVar16 + -0xc))\n          ;\n          up = local_ac;\n        }\n        local_c8 = (uint *)(vn * 2);\n        if (vn < 0x6e) {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = (uint *)(vn * 2);\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          local_c4 = (mp_ptr)(vn * 8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x476c2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_ac);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x476eb;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = local_c8;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_c4 = (mp_ptr)(vn * 8);\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bb2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)local_ac + (int)prodp);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bda;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        if ((int)local_b4 < vn) {\n          *(mp_srcptr *)(puVar16 + -0x10) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x14) = local_b0;\n          *(mp_size_t *)(puVar16 + -0x18) = vn;\n          *(uint **)(puVar16 + -0x1c) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x4775a;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        else {\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x18) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47c49;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        pmVar11 = local_a0;\n        *(mp_size_t *)(puVar16 + -4) = vn;\n        *(mp_srcptr *)(puVar16 + -8) = local_a8;\n        *(mp_ptr *)(puVar16 + -0xc) = prodp;\n        *(mp_ptr *)(puVar16 + -0x10) = prodp;\n        pcVar4 = (code *)*pmVar11;\n        *(undefined4 *)(puVar16 + -0x14) = 0x4776e;\n        local_a8 = (mp_srcptr)(*pcVar4)();\n        pmVar11 = local_a0;\n        puVar13 = (uint *)((int)local_ac + (int)prodp);\n        *(mp_srcptr *)(puVar16 + -8) = local_b4;\n        local_a4 = puVar13;\n        *(void **)(puVar16 + -0xc) = local_c0;\n        *(uint **)(puVar16 + -0x10) = puVar13;\n        pcVar4 = (code *)pmVar11[10];\n        *(undefined4 *)(puVar16 + -0x14) = 0x4779b;\n        (*pcVar4)();\n        uVar9 = *local_a4;\n        *local_a4 = *local_a4 + (int)local_a8;\n        puVar13 = local_a4;\n        if (CARRY4(uVar9,(uint)local_a8)) {\n          do {\n            puVar14 = puVar13 + 1;\n            uVar9 = *puVar14;\n            *puVar14 = *puVar14 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        local_ac = (mp_srcptr)(vn + (int)local_b4);\n      }\n      else if (un * 6 < (int)local_b0) {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47d4a;\n        __gmpn_toom33_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else if (SBORROW4((int)local_a8,vn * 3) == (int)local_a8 + vn * -3 < 0) {\n        if (un * 6 < vn * 0xb) {\n          if (un * 4 < (int)local_b0) {\n            if (vn < 0x6e) goto LAB_00047dab;\n          }\n          else if (vn < 100) goto LAB_00047e74;\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47d26;\n          __gmpn_toom53_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else if (vn < 0x6e) {\nLAB_00047e74:\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e8e;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n      }\n      else if (vn < 100) {\nLAB_00047dab:\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47dc5;\n        __gmpn_toom32_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47a39;\n        __gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n        *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n        *(undefined4 *)(puVar16 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n      }\n      local_a0 = local_ac;\n      goto LAB_000471aa;\n    }\n  }\n  local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;\n  if ((un < 0x1f5) || (vn == 1)) {\n    amStackY_8010[0x1fc4] = 0x47451;\n    (**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68))();\n    local_a0 = (mp_srcptr)(vn + un);\n    puVar16 = auStack_dc;\n  }\n  else {\n    prodp = prodp + 500;\n    amStackY_8010[0x1fc4] = 0x46f33;\n    local_ac = up;\n    (**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68))();\n    local_a8 = tp;\n    (*(code *)local_a0[10])();\n    local_b0 = (mp_srcptr)(vn * 4);\n    pmVar11 = (mp_srcptr)(un + -500);\n    while (500 < (int)pmVar11) {\n      amStackY_8010[0x1fc4] = 0x46fa8;\n      local_ac = pmVar11;\n      (*(code *)local_a0[0x1a])();\n      uVar8 = (*(code *)*local_a0)();\n      puVar13 = (uint *)((int)prodp + (int)local_b0);\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar14 = puVar13 + 1;\n          uVar9 = *puVar14;\n          *puVar14 = *puVar14 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      prodp = prodp + 500;\n      (*(code *)local_a0[10])();\n      pmVar11 = local_ac + -0x7d;\n    }\n    if (vn < (int)pmVar11) {\n      amStackY_8010[0x1fc4] = 0x47033;\n      (*(code *)local_a0[0x1a])();\n    }\n    else {\n      amStackY_8010[0x1fc4] = 0x477f7;\n      (*(code *)local_a0[0x1a])();\n    }\n    uVar8 = (*(code *)*local_a0)();\n    puVar13 = (uint *)((int)local_b0 + (int)prodp);\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar14 = puVar13 + 1;\n        uVar9 = *puVar14;\n        *puVar14 = *puVar14 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    local_a0 = (mp_srcptr)(vn + (int)pmVar11);\n    puVar16 = auStack_dc;\n  }\nLAB_000471aa:\n  if (iVar3 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return prodp[(int)local_a0 + -1];\n  }\n                    /* WARNING: Subroutine does not return */\n  *(undefined4 *)(puVar16 + -4) = 0x47f0b;\n  __stack_chk_fail_local();\n}" { (declaration "uint *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "code *pcVar4;" type_identifier (pointer_declarator "*pcVar4" * identifier) ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "mp_ptr pmVar6;" type_identifier identifier ;) (declaration "mp_srcptr pmVar7;" type_identifier identifier ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "void *pvVar10;" primitive_type (pointer_declarator "*pvVar10" * identifier) ;) (declaration "mp_srcptr pmVar11;" type_identifier identifier ;) (declaration "mp_limb_t mVar12;" type_identifier identifier ;) (declaration "uint *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "uint *puVar14;" type_identifier (pointer_declarator "*puVar14" * identifier) ;) (declaration "undefined1 *puVar15;" type_identifier (pointer_declarator "*puVar15" * identifier) ;) (declaration "undefined1 *puVar16;" type_identifier (pointer_declarator "*puVar16" * identifier) ;) (declaration "int in_GS_OFFSET;" primitive_type identifier ;) (declaration "mp_size_t amStackY_8010 [8133];" type_identifier (array_declarator "amStackY_8010 [8133]" identifier [ number_literal ]) ;) (declaration "undefined1 auStack_dc [8];" type_identifier (array_declarator "auStack_dc [8]" identifier [ number_literal ]) ;) (declaration "int local_d4;" primitive_type identifier ;) (declaration "mp_limb_t local_d0;" type_identifier identifier ;) (declaration "uint local_cc;" type_identifier identifier ;) (declaration "uint *local_c8;" type_identifier (pointer_declarator "*local_c8" * identifier) ;) (declaration "mp_ptr local_c4;" type_identifier identifier ;) (declaration "void *local_c0;" primitive_type (pointer_declarator "*local_c0" * identifier) ;) (declaration "uint local_bc;" type_identifier identifier ;) (declaration "uint *local_b8;" type_identifier (pointer_declarator "*local_b8" * identifier) ;) (declaration "mp_srcptr local_b4;" type_identifier identifier ;) (declaration "mp_srcptr local_b0;" type_identifier identifier ;) (declaration "mp_srcptr local_ac;" type_identifier identifier ;) (declaration "mp_srcptr local_a8;" type_identifier identifier ;) (declaration "uint *local_a4;" type_identifier (pointer_declarator "*local_a4" * identifier) ;) (declaration "mp_srcptr local_a0;" type_identifier identifier ;) (declaration "tmp_reentrant_t *__tmp_marker;" type_identifier (pointer_declarator "*__tmp_marker" * identifier) ;) (declaration "mp_limb_t tp [29];" type_identifier (array_declarator "tp [29]" identifier [ number_literal ]) ;) (expression_statement "puVar15 = auStack_dc;" (assignment_expression "puVar15 = auStack_dc" identifier = identifier) ;) (expression_statement "puVar16 = auStack_dc;" (assignment_expression "puVar16 = auStack_dc" identifier = identifier) ;) (expression_statement "local_a4 = vp;" (assignment_expression "local_a4 = vp" identifier = identifier) ;) (expression_statement "iVar3 = *(int *)(in_GS_OFFSET + 0x14);" (assignment_expression "iVar3 = *(int *)(in_GS_OFFSET + 0x14)" identifier = (pointer_expression "*(int *)(in_GS_OFFSET + 0x14)" * (cast_expression "(int *)(in_GS_OFFSET + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_GS_OFFSET + 0x14)" ( (binary_expression "in_GS_OFFSET + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (un == vn) {\n    local_a0 = (mp_srcptr)(un * 2);\n    if (up == vp) {\n      __gmpn_sqr(prodp,up,un);\n      puVar16 = auStack_dc;\n    }\n    else {\n      __gmpn_mul_n(prodp,up,vp,un);\n      puVar16 = auStack_dc;\n    }\n    goto LAB_000471aa;\n  }" if (parenthesized_expression "(un == vn)" ( (binary_expression "un == vn" identifier == identifier) )) (compound_statement "{\n    local_a0 = (mp_srcptr)(un * 2);\n    if (up == vp) {\n      __gmpn_sqr(prodp,up,un);\n      puVar16 = auStack_dc;\n    }\n    else {\n      __gmpn_mul_n(prodp,up,vp,un);\n      puVar16 = auStack_dc;\n    }\n    goto LAB_000471aa;\n  }" { (expression_statement "local_a0 = (mp_srcptr)(un * 2);" (assignment_expression "local_a0 = (mp_srcptr)(un * 2)" identifier = (call_expression "(mp_srcptr)(un * 2)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(un * 2)" ( (binary_expression "un * 2" identifier * number_literal) )))) ;) (if_statement "if (up == vp) {\n      __gmpn_sqr(prodp,up,un);\n      puVar16 = auStack_dc;\n    }\n    else {\n      __gmpn_mul_n(prodp,up,vp,un);\n      puVar16 = auStack_dc;\n    }" if (parenthesized_expression "(up == vp)" ( (binary_expression "up == vp" identifier == identifier) )) (compound_statement "{\n      __gmpn_sqr(prodp,up,un);\n      puVar16 = auStack_dc;\n    }" { (expression_statement "__gmpn_sqr(prodp,up,un);" (call_expression "__gmpn_sqr(prodp,up,un)" identifier (argument_list "(prodp,up,un)" ( identifier , identifier , identifier ))) ;) (expression_statement "puVar16 = auStack_dc;" (assignment_expression "puVar16 = auStack_dc" identifier = identifier) ;) }) (else_clause "else {\n      __gmpn_mul_n(prodp,up,vp,un);\n      puVar16 = auStack_dc;\n    }" else (compound_statement "{\n      __gmpn_mul_n(prodp,up,vp,un);\n      puVar16 = auStack_dc;\n    }" { (expression_statement "__gmpn_mul_n(prodp,up,vp,un);" (call_expression "__gmpn_mul_n(prodp,up,vp,un)" identifier (argument_list "(prodp,up,vp,un)" ( identifier , identifier , identifier , identifier ))) ;) (expression_statement "puVar16 = auStack_dc;" (assignment_expression "puVar16 = auStack_dc" identifier = identifier) ;) }))) (goto_statement "goto LAB_000471aa;" goto statement_identifier ;) })) (if_statement "if (*(int *)PTR___gmpn_cpuvec_initialized_0009dd58 == 0) {\n    local_a8 = up;\n    local_ac = (mp_srcptr)PTR___gmpn_cpuvec_initialized_0009dd58;\n    __gmpn_cpuvec_init();\n    local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;\n    up = local_a8;\n    if (*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94) <= vn) {\n      if (*local_ac == 0) {\n        __gmpn_cpuvec_init();\n        up = local_a8;\n      }\n      goto LAB_000470c0;\n    }\n  }\n  else {\n    local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;\n    if (*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94) <= vn) {\nLAB_000470c0:\n      if (vn < (int)local_a0[0x26]) {\n        local_a8 = (mp_srcptr)(vn * 8);\n        local_c4 = (mp_ptr)(vn * 4);\n        local_d0 = vn * 5;\n        iVar2 = -(((vn * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        local_c0 = (void *)((int)&local_d0 + iVar2);\n        local_b8 = (uint *)(vn * 2);\n        local_c8 = (uint *)(vn * 3);\n        if (un < (int)(vn * 3)) {\n          local_a0 = (mp_srcptr)(un + vn);\n          if (un * 4 < vn * 5) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else if (un * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n        }\n        else {\n          local_b4 = up;\n          iVar5 = -(vn * 0x10 + 0x10);\n          *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n          *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n          *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n          *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = local_b8;\n          *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = up;\n          *(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = prodp;\n          local_b0 = (mp_srcptr)((int)&local_d0 + iVar5 + iVar2);\n          *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x4783a;\n          __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                            *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                            *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                            *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          puVar13 = local_b8;\n          prodp = (mp_ptr)((int)prodp + (int)local_a8);\n          local_ac = (mp_srcptr)(un - (int)local_b8);\n          local_b4 = (mp_srcptr)((int)local_b4 + (int)local_a8);\n          local_cc = (int)local_b0 + (int)local_c4;\n          if ((int)local_c8 <= (int)(un - (int)local_b8)) {\n            do {\n              *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n              *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n              *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n              *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;\n              __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n              pmVar7 = local_a0;\n              pmVar11 = local_a8;\n              *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n              local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);\n              *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n              local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);\n              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n              *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n              pcVar4 = (code *)*pmVar7;\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;\n              local_bc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_c4);\n              *(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;\n              local_b8 = puVar14;\n              *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n              *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;\n              (*pcVar4)();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_a8);\n            } while ((int)local_c8 <= (int)local_ac);\n          }\n          pmVar11 = local_ac;\n          if ((int)local_ac * 4 < (int)local_d0) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = pmVar11;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47cd2;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else if ((int)local_ac * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          pmVar11 = local_a0;\n          *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n          *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n          *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n          pcVar4 = (code *)*pmVar11;\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x4799b;\n          local_a4 = (uint *)(*pcVar4)();\n          pmVar11 = local_a0;\n          puVar13 = (uint *)((int)local_c4 + (int)prodp);\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_ac;\n          *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n          *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar13;\n          pcVar4 = (code *)pmVar11[10];\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x479c2;\n          (*pcVar4)();\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + (int)local_a4;\n          if (CARRY4(uVar9,(uint)local_a4)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_ac);\n          puVar16 = auStack_dc + iVar5 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      local_ac = (mp_srcptr)(un + vn);\n      if ((3999 < (int)local_ac) && (local_a8 = (mp_srcptr)(vn * 3), 1999 < (int)local_a8)) {\n        uVar9 = vn * 8;\n        if (uVar9 - un == 0 || (int)uVar9 < un) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_bc = uVar9;\n          local_b0 = up;\n          local_ac = (mp_srcptr)__gmp_tmp_reentrant_alloc(&__tmp_marker,(vn * 9 >> 1) << 2);\n          amStackY_8010[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul(prodp,local_b0,(mp_size_t)local_a8,local_a4,vn);\n          local_c0 = (void *)(vn * 4);\n          local_c8 = (uint *)(vn * -3);\n          puVar13 = (uint *)((int)local_c8 + un);\n          local_b4 = (mp_srcptr)((int)local_a8 * 4);\n          prodp = prodp + (int)local_a8;\n          local_b0 = local_b0 + (int)local_a8;\n          local_cc = local_bc - vn;\n          if ((int)puVar13 * 2 < (int)local_cc) {\n            local_c4 = local_ac + vn;\n          }\n          else {\n            local_c4 = local_ac + vn;\n            local_b8 = puVar13;\n            do {\n              amStackY_8010[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn);\n              puVar13 = (uint *)((int)puVar13 + (int)local_c8);\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4);\n              local_bc = (*(code *)*local_a0)();\n              local_b8 = (uint *)((int)prodp + (int)local_c0);\n              (*(code *)local_a0[10])();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_b4);\n            } while (local_cc == (int)puVar13 * 2 ||\n                     SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0)\n            ;\n          }\n          local_b8 = puVar13;\n          if ((int)local_b8 < vn) {\n            amStackY_8010[0x1fc4] = 0x473bd;\n            __gmpn_mul(local_ac,local_a4,vn,local_b0,(mp_size_t)local_b8);\n          }\n          else {\n            amStackY_8010[0x1fc4] = 0x47d73;\n            __gmpn_mul(local_ac,local_b0,(mp_size_t)local_b8,local_a4,vn);\n          }\n          local_a8 = (mp_srcptr)(*(code *)*local_a0)();\n          local_a4 = (uint *)((int)local_c0 + (int)prodp);\n          (*(code *)local_a0[10])();\n          uVar9 = *local_a4;\n          *local_a4 = *local_a4 + (int)local_a8;\n          puVar13 = local_a4;\n          if (CARRY4(uVar9,(uint)local_a8)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            __gmp_tmp_reentrant_free(__tmp_marker);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_b8);\n          puVar16 = auStack_dc;\n        }\n        else {\n          amStackY_8010[0x1fc4] = 0x47c6c;\n          __gmpn_nussbaumer_mul(prodp,up,un,local_a4,vn);\n          local_a0 = local_ac;\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < vn) {\n        local_a8 = (mp_srcptr)(un * 3 + 0xc);\n        if (SBORROW4((int)local_a8,vn * 4) != (int)(local_a8 + -vn) < 0) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_a0 = local_ac;\n          if (vn < 0x15e) {\n            iVar2 = -(un * 0xc + 0x9bU & 0xfffffff0);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else if (vn < 0x1c2) {\n            iVar2 = -((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else {\n            iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4;\n            uVar9 = iVar2 + 0x6dc;\n            if (uVar9 < 0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_dc + iVar2;\n              pvVar10 = (void *)((int)&local_d0 + iVar2);\n            }\n            else {\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }\n            *(void **)(puVar15 + -0xc) = pvVar10;\n            *(mp_size_t *)(puVar15 + -0x10) = vn;\n            *(uint **)(puVar15 + -0x14) = local_a4;\n            *(mp_size_t *)(puVar15 + -0x18) = un;\n            *(mp_srcptr *)(puVar15 + -0x1c) = up;\n            *(mp_ptr *)(puVar15 + -0x20) = prodp;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc));\n            puVar16 = puVar15;\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n            *(undefined4 *)(puVar16 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n          }\n          goto LAB_000471aa;\n        }\n      }\n      __tmp_marker = (tmp_reentrant_t *)0x0;\n      uVar9 = (vn + 8) * 0x10;\n      if (uVar9 < 0x7f01) {\n        local_b8 = (uint *)((int)&local_d0 + -(uVar9 + 0x10));\n        puVar16 = auStack_dc + -(uVar9 + 0x10);\n      }\n      else {\n        local_a8 = up;\n        local_b8 = (uint *)__gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n        up = local_a8;\n        puVar16 = auStack_dc;\n      }\n      local_bc = vn * 5;\n      local_a8 = (mp_srcptr)(un * 2);\n      local_b0 = (mp_srcptr)(vn * 7);\n      if (SBORROW4((int)local_a8,vn * 5) == (int)local_a8 + vn * -5 < 0) {\n        uVar9 = ((int)local_b0 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          local_a8 = (mp_srcptr)((uint)(puVar16 + iVar2 + 0xf) & 0xfffffff0);\n          puVar16 = puVar16 + iVar2;\n        }\n        else {\n          local_ac = up;\n          *(uint *)(puVar16 + -0xc) = uVar9;\n          *(tmp_reentrant_t ***)(puVar16 + -0x10) = &__tmp_marker;\n          *(undefined4 *)(puVar16 + -0x14) = 0x47eac;\n          local_a8 = (mp_srcptr)\n                     __gmp_tmp_reentrant_alloc\n                               (*(tmp_reentrant_t ***)(puVar16 + -0x10),*(size_t *)(puVar16 + -0xc))\n          ;\n          up = local_ac;\n        }\n        local_c8 = (uint *)(vn * 2);\n        if (vn < 0x6e) {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = (uint *)(vn * 2);\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          local_c4 = (mp_ptr)(vn * 8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x476c2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_ac);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x476eb;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = local_c8;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_c4 = (mp_ptr)(vn * 8);\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bb2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)local_ac + (int)prodp);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bda;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        if ((int)local_b4 < vn) {\n          *(mp_srcptr *)(puVar16 + -0x10) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x14) = local_b0;\n          *(mp_size_t *)(puVar16 + -0x18) = vn;\n          *(uint **)(puVar16 + -0x1c) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x4775a;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        else {\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x18) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47c49;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        pmVar11 = local_a0;\n        *(mp_size_t *)(puVar16 + -4) = vn;\n        *(mp_srcptr *)(puVar16 + -8) = local_a8;\n        *(mp_ptr *)(puVar16 + -0xc) = prodp;\n        *(mp_ptr *)(puVar16 + -0x10) = prodp;\n        pcVar4 = (code *)*pmVar11;\n        *(undefined4 *)(puVar16 + -0x14) = 0x4776e;\n        local_a8 = (mp_srcptr)(*pcVar4)();\n        pmVar11 = local_a0;\n        puVar13 = (uint *)((int)local_ac + (int)prodp);\n        *(mp_srcptr *)(puVar16 + -8) = local_b4;\n        local_a4 = puVar13;\n        *(void **)(puVar16 + -0xc) = local_c0;\n        *(uint **)(puVar16 + -0x10) = puVar13;\n        pcVar4 = (code *)pmVar11[10];\n        *(undefined4 *)(puVar16 + -0x14) = 0x4779b;\n        (*pcVar4)();\n        uVar9 = *local_a4;\n        *local_a4 = *local_a4 + (int)local_a8;\n        puVar13 = local_a4;\n        if (CARRY4(uVar9,(uint)local_a8)) {\n          do {\n            puVar14 = puVar13 + 1;\n            uVar9 = *puVar14;\n            *puVar14 = *puVar14 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        local_ac = (mp_srcptr)(vn + (int)local_b4);\n      }\n      else if (un * 6 < (int)local_b0) {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47d4a;\n        __gmpn_toom33_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else if (SBORROW4((int)local_a8,vn * 3) == (int)local_a8 + vn * -3 < 0) {\n        if (un * 6 < vn * 0xb) {\n          if (un * 4 < (int)local_b0) {\n            if (vn < 0x6e) goto LAB_00047dab;\n          }\n          else if (vn < 100) goto LAB_00047e74;\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47d26;\n          __gmpn_toom53_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else if (vn < 0x6e) {\nLAB_00047e74:\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e8e;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n      }\n      else if (vn < 100) {\nLAB_00047dab:\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47dc5;\n        __gmpn_toom32_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47a39;\n        __gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n        *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n        *(undefined4 *)(puVar16 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n      }\n      local_a0 = local_ac;\n      goto LAB_000471aa;\n    }\n  }" if (parenthesized_expression "(*(int *)PTR___gmpn_cpuvec_initialized_0009dd58 == 0)" ( (binary_expression "*(int *)PTR___gmpn_cpuvec_initialized_0009dd58 == 0" (pointer_expression "*(int *)PTR___gmpn_cpuvec_initialized_0009dd58" * (cast_expression "(int *)PTR___gmpn_cpuvec_initialized_0009dd58" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) == number_literal) )) (compound_statement "{\n    local_a8 = up;\n    local_ac = (mp_srcptr)PTR___gmpn_cpuvec_initialized_0009dd58;\n    __gmpn_cpuvec_init();\n    local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;\n    up = local_a8;\n    if (*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94) <= vn) {\n      if (*local_ac == 0) {\n        __gmpn_cpuvec_init();\n        up = local_a8;\n      }\n      goto LAB_000470c0;\n    }\n  }" { (expression_statement "local_a8 = up;" (assignment_expression "local_a8 = up" identifier = identifier) ;) (expression_statement "local_ac = (mp_srcptr)PTR___gmpn_cpuvec_initialized_0009dd58;" (assignment_expression "local_ac = (mp_srcptr)PTR___gmpn_cpuvec_initialized_0009dd58" identifier = (cast_expression "(mp_srcptr)PTR___gmpn_cpuvec_initialized_0009dd58" ( (type_descriptor "mp_srcptr" type_identifier) ) identifier)) ;) (expression_statement "__gmpn_cpuvec_init();" (call_expression "__gmpn_cpuvec_init()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;" (assignment_expression "local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94" identifier = (cast_expression "(mp_srcptr)PTR___gmpn_cpuvec_0009dd94" ( (type_descriptor "mp_srcptr" type_identifier) ) identifier)) ;) (expression_statement "up = local_a8;" (assignment_expression "up = local_a8" identifier = identifier) ;) (if_statement "if (*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94) <= vn) {\n      if (*local_ac == 0) {\n        __gmpn_cpuvec_init();\n        up = local_a8;\n      }\n      goto LAB_000470c0;\n    }" if (parenthesized_expression "(*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94) <= vn)" ( (binary_expression "*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94) <= vn" (pointer_expression "*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94)" * (cast_expression "(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR___gmpn_cpuvec_0009dd94 + 0x94)" ( (binary_expression "PTR___gmpn_cpuvec_0009dd94 + 0x94" identifier + number_literal) )))) <= identifier) )) (compound_statement "{\n      if (*local_ac == 0) {\n        __gmpn_cpuvec_init();\n        up = local_a8;\n      }\n      goto LAB_000470c0;\n    }" { (if_statement "if (*local_ac == 0) {\n        __gmpn_cpuvec_init();\n        up = local_a8;\n      }" if (parenthesized_expression "(*local_ac == 0)" ( (binary_expression "*local_ac == 0" (pointer_expression "*local_ac" * identifier) == number_literal) )) (compound_statement "{\n        __gmpn_cpuvec_init();\n        up = local_a8;\n      }" { (expression_statement "__gmpn_cpuvec_init();" (call_expression "__gmpn_cpuvec_init()" identifier (argument_list "()" ( ))) ;) (expression_statement "up = local_a8;" (assignment_expression "up = local_a8" identifier = identifier) ;) })) (goto_statement "goto LAB_000470c0;" goto statement_identifier ;) })) }) (else_clause "else {\n    local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;\n    if (*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94) <= vn) {\nLAB_000470c0:\n      if (vn < (int)local_a0[0x26]) {\n        local_a8 = (mp_srcptr)(vn * 8);\n        local_c4 = (mp_ptr)(vn * 4);\n        local_d0 = vn * 5;\n        iVar2 = -(((vn * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        local_c0 = (void *)((int)&local_d0 + iVar2);\n        local_b8 = (uint *)(vn * 2);\n        local_c8 = (uint *)(vn * 3);\n        if (un < (int)(vn * 3)) {\n          local_a0 = (mp_srcptr)(un + vn);\n          if (un * 4 < vn * 5) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else if (un * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n        }\n        else {\n          local_b4 = up;\n          iVar5 = -(vn * 0x10 + 0x10);\n          *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n          *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n          *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n          *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = local_b8;\n          *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = up;\n          *(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = prodp;\n          local_b0 = (mp_srcptr)((int)&local_d0 + iVar5 + iVar2);\n          *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x4783a;\n          __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                            *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                            *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                            *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          puVar13 = local_b8;\n          prodp = (mp_ptr)((int)prodp + (int)local_a8);\n          local_ac = (mp_srcptr)(un - (int)local_b8);\n          local_b4 = (mp_srcptr)((int)local_b4 + (int)local_a8);\n          local_cc = (int)local_b0 + (int)local_c4;\n          if ((int)local_c8 <= (int)(un - (int)local_b8)) {\n            do {\n              *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n              *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n              *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n              *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;\n              __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n              pmVar7 = local_a0;\n              pmVar11 = local_a8;\n              *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n              local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);\n              *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n              local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);\n              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n              *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n              pcVar4 = (code *)*pmVar7;\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;\n              local_bc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_c4);\n              *(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;\n              local_b8 = puVar14;\n              *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n              *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;\n              (*pcVar4)();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_a8);\n            } while ((int)local_c8 <= (int)local_ac);\n          }\n          pmVar11 = local_ac;\n          if ((int)local_ac * 4 < (int)local_d0) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = pmVar11;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47cd2;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else if ((int)local_ac * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          pmVar11 = local_a0;\n          *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n          *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n          *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n          pcVar4 = (code *)*pmVar11;\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x4799b;\n          local_a4 = (uint *)(*pcVar4)();\n          pmVar11 = local_a0;\n          puVar13 = (uint *)((int)local_c4 + (int)prodp);\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_ac;\n          *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n          *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar13;\n          pcVar4 = (code *)pmVar11[10];\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x479c2;\n          (*pcVar4)();\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + (int)local_a4;\n          if (CARRY4(uVar9,(uint)local_a4)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_ac);\n          puVar16 = auStack_dc + iVar5 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      local_ac = (mp_srcptr)(un + vn);\n      if ((3999 < (int)local_ac) && (local_a8 = (mp_srcptr)(vn * 3), 1999 < (int)local_a8)) {\n        uVar9 = vn * 8;\n        if (uVar9 - un == 0 || (int)uVar9 < un) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_bc = uVar9;\n          local_b0 = up;\n          local_ac = (mp_srcptr)__gmp_tmp_reentrant_alloc(&__tmp_marker,(vn * 9 >> 1) << 2);\n          amStackY_8010[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul(prodp,local_b0,(mp_size_t)local_a8,local_a4,vn);\n          local_c0 = (void *)(vn * 4);\n          local_c8 = (uint *)(vn * -3);\n          puVar13 = (uint *)((int)local_c8 + un);\n          local_b4 = (mp_srcptr)((int)local_a8 * 4);\n          prodp = prodp + (int)local_a8;\n          local_b0 = local_b0 + (int)local_a8;\n          local_cc = local_bc - vn;\n          if ((int)puVar13 * 2 < (int)local_cc) {\n            local_c4 = local_ac + vn;\n          }\n          else {\n            local_c4 = local_ac + vn;\n            local_b8 = puVar13;\n            do {\n              amStackY_8010[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn);\n              puVar13 = (uint *)((int)puVar13 + (int)local_c8);\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4);\n              local_bc = (*(code *)*local_a0)();\n              local_b8 = (uint *)((int)prodp + (int)local_c0);\n              (*(code *)local_a0[10])();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_b4);\n            } while (local_cc == (int)puVar13 * 2 ||\n                     SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0)\n            ;\n          }\n          local_b8 = puVar13;\n          if ((int)local_b8 < vn) {\n            amStackY_8010[0x1fc4] = 0x473bd;\n            __gmpn_mul(local_ac,local_a4,vn,local_b0,(mp_size_t)local_b8);\n          }\n          else {\n            amStackY_8010[0x1fc4] = 0x47d73;\n            __gmpn_mul(local_ac,local_b0,(mp_size_t)local_b8,local_a4,vn);\n          }\n          local_a8 = (mp_srcptr)(*(code *)*local_a0)();\n          local_a4 = (uint *)((int)local_c0 + (int)prodp);\n          (*(code *)local_a0[10])();\n          uVar9 = *local_a4;\n          *local_a4 = *local_a4 + (int)local_a8;\n          puVar13 = local_a4;\n          if (CARRY4(uVar9,(uint)local_a8)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            __gmp_tmp_reentrant_free(__tmp_marker);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_b8);\n          puVar16 = auStack_dc;\n        }\n        else {\n          amStackY_8010[0x1fc4] = 0x47c6c;\n          __gmpn_nussbaumer_mul(prodp,up,un,local_a4,vn);\n          local_a0 = local_ac;\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < vn) {\n        local_a8 = (mp_srcptr)(un * 3 + 0xc);\n        if (SBORROW4((int)local_a8,vn * 4) != (int)(local_a8 + -vn) < 0) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_a0 = local_ac;\n          if (vn < 0x15e) {\n            iVar2 = -(un * 0xc + 0x9bU & 0xfffffff0);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else if (vn < 0x1c2) {\n            iVar2 = -((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else {\n            iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4;\n            uVar9 = iVar2 + 0x6dc;\n            if (uVar9 < 0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_dc + iVar2;\n              pvVar10 = (void *)((int)&local_d0 + iVar2);\n            }\n            else {\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }\n            *(void **)(puVar15 + -0xc) = pvVar10;\n            *(mp_size_t *)(puVar15 + -0x10) = vn;\n            *(uint **)(puVar15 + -0x14) = local_a4;\n            *(mp_size_t *)(puVar15 + -0x18) = un;\n            *(mp_srcptr *)(puVar15 + -0x1c) = up;\n            *(mp_ptr *)(puVar15 + -0x20) = prodp;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc));\n            puVar16 = puVar15;\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n            *(undefined4 *)(puVar16 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n          }\n          goto LAB_000471aa;\n        }\n      }\n      __tmp_marker = (tmp_reentrant_t *)0x0;\n      uVar9 = (vn + 8) * 0x10;\n      if (uVar9 < 0x7f01) {\n        local_b8 = (uint *)((int)&local_d0 + -(uVar9 + 0x10));\n        puVar16 = auStack_dc + -(uVar9 + 0x10);\n      }\n      else {\n        local_a8 = up;\n        local_b8 = (uint *)__gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n        up = local_a8;\n        puVar16 = auStack_dc;\n      }\n      local_bc = vn * 5;\n      local_a8 = (mp_srcptr)(un * 2);\n      local_b0 = (mp_srcptr)(vn * 7);\n      if (SBORROW4((int)local_a8,vn * 5) == (int)local_a8 + vn * -5 < 0) {\n        uVar9 = ((int)local_b0 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          local_a8 = (mp_srcptr)((uint)(puVar16 + iVar2 + 0xf) & 0xfffffff0);\n          puVar16 = puVar16 + iVar2;\n        }\n        else {\n          local_ac = up;\n          *(uint *)(puVar16 + -0xc) = uVar9;\n          *(tmp_reentrant_t ***)(puVar16 + -0x10) = &__tmp_marker;\n          *(undefined4 *)(puVar16 + -0x14) = 0x47eac;\n          local_a8 = (mp_srcptr)\n                     __gmp_tmp_reentrant_alloc\n                               (*(tmp_reentrant_t ***)(puVar16 + -0x10),*(size_t *)(puVar16 + -0xc))\n          ;\n          up = local_ac;\n        }\n        local_c8 = (uint *)(vn * 2);\n        if (vn < 0x6e) {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = (uint *)(vn * 2);\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          local_c4 = (mp_ptr)(vn * 8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x476c2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_ac);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x476eb;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = local_c8;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_c4 = (mp_ptr)(vn * 8);\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bb2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)local_ac + (int)prodp);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bda;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        if ((int)local_b4 < vn) {\n          *(mp_srcptr *)(puVar16 + -0x10) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x14) = local_b0;\n          *(mp_size_t *)(puVar16 + -0x18) = vn;\n          *(uint **)(puVar16 + -0x1c) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x4775a;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        else {\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x18) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47c49;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        pmVar11 = local_a0;\n        *(mp_size_t *)(puVar16 + -4) = vn;\n        *(mp_srcptr *)(puVar16 + -8) = local_a8;\n        *(mp_ptr *)(puVar16 + -0xc) = prodp;\n        *(mp_ptr *)(puVar16 + -0x10) = prodp;\n        pcVar4 = (code *)*pmVar11;\n        *(undefined4 *)(puVar16 + -0x14) = 0x4776e;\n        local_a8 = (mp_srcptr)(*pcVar4)();\n        pmVar11 = local_a0;\n        puVar13 = (uint *)((int)local_ac + (int)prodp);\n        *(mp_srcptr *)(puVar16 + -8) = local_b4;\n        local_a4 = puVar13;\n        *(void **)(puVar16 + -0xc) = local_c0;\n        *(uint **)(puVar16 + -0x10) = puVar13;\n        pcVar4 = (code *)pmVar11[10];\n        *(undefined4 *)(puVar16 + -0x14) = 0x4779b;\n        (*pcVar4)();\n        uVar9 = *local_a4;\n        *local_a4 = *local_a4 + (int)local_a8;\n        puVar13 = local_a4;\n        if (CARRY4(uVar9,(uint)local_a8)) {\n          do {\n            puVar14 = puVar13 + 1;\n            uVar9 = *puVar14;\n            *puVar14 = *puVar14 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        local_ac = (mp_srcptr)(vn + (int)local_b4);\n      }\n      else if (un * 6 < (int)local_b0) {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47d4a;\n        __gmpn_toom33_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else if (SBORROW4((int)local_a8,vn * 3) == (int)local_a8 + vn * -3 < 0) {\n        if (un * 6 < vn * 0xb) {\n          if (un * 4 < (int)local_b0) {\n            if (vn < 0x6e) goto LAB_00047dab;\n          }\n          else if (vn < 100) goto LAB_00047e74;\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47d26;\n          __gmpn_toom53_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else if (vn < 0x6e) {\nLAB_00047e74:\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e8e;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n      }\n      else if (vn < 100) {\nLAB_00047dab:\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47dc5;\n        __gmpn_toom32_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47a39;\n        __gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n        *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n        *(undefined4 *)(puVar16 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n      }\n      local_a0 = local_ac;\n      goto LAB_000471aa;\n    }\n  }" else (compound_statement "{\n    local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;\n    if (*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94) <= vn) {\nLAB_000470c0:\n      if (vn < (int)local_a0[0x26]) {\n        local_a8 = (mp_srcptr)(vn * 8);\n        local_c4 = (mp_ptr)(vn * 4);\n        local_d0 = vn * 5;\n        iVar2 = -(((vn * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        local_c0 = (void *)((int)&local_d0 + iVar2);\n        local_b8 = (uint *)(vn * 2);\n        local_c8 = (uint *)(vn * 3);\n        if (un < (int)(vn * 3)) {\n          local_a0 = (mp_srcptr)(un + vn);\n          if (un * 4 < vn * 5) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else if (un * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n        }\n        else {\n          local_b4 = up;\n          iVar5 = -(vn * 0x10 + 0x10);\n          *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n          *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n          *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n          *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = local_b8;\n          *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = up;\n          *(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = prodp;\n          local_b0 = (mp_srcptr)((int)&local_d0 + iVar5 + iVar2);\n          *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x4783a;\n          __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                            *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                            *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                            *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          puVar13 = local_b8;\n          prodp = (mp_ptr)((int)prodp + (int)local_a8);\n          local_ac = (mp_srcptr)(un - (int)local_b8);\n          local_b4 = (mp_srcptr)((int)local_b4 + (int)local_a8);\n          local_cc = (int)local_b0 + (int)local_c4;\n          if ((int)local_c8 <= (int)(un - (int)local_b8)) {\n            do {\n              *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n              *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n              *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n              *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;\n              __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n              pmVar7 = local_a0;\n              pmVar11 = local_a8;\n              *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n              local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);\n              *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n              local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);\n              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n              *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n              pcVar4 = (code *)*pmVar7;\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;\n              local_bc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_c4);\n              *(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;\n              local_b8 = puVar14;\n              *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n              *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;\n              (*pcVar4)();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_a8);\n            } while ((int)local_c8 <= (int)local_ac);\n          }\n          pmVar11 = local_ac;\n          if ((int)local_ac * 4 < (int)local_d0) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = pmVar11;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47cd2;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else if ((int)local_ac * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          pmVar11 = local_a0;\n          *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n          *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n          *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n          pcVar4 = (code *)*pmVar11;\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x4799b;\n          local_a4 = (uint *)(*pcVar4)();\n          pmVar11 = local_a0;\n          puVar13 = (uint *)((int)local_c4 + (int)prodp);\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_ac;\n          *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n          *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar13;\n          pcVar4 = (code *)pmVar11[10];\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x479c2;\n          (*pcVar4)();\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + (int)local_a4;\n          if (CARRY4(uVar9,(uint)local_a4)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_ac);\n          puVar16 = auStack_dc + iVar5 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      local_ac = (mp_srcptr)(un + vn);\n      if ((3999 < (int)local_ac) && (local_a8 = (mp_srcptr)(vn * 3), 1999 < (int)local_a8)) {\n        uVar9 = vn * 8;\n        if (uVar9 - un == 0 || (int)uVar9 < un) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_bc = uVar9;\n          local_b0 = up;\n          local_ac = (mp_srcptr)__gmp_tmp_reentrant_alloc(&__tmp_marker,(vn * 9 >> 1) << 2);\n          amStackY_8010[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul(prodp,local_b0,(mp_size_t)local_a8,local_a4,vn);\n          local_c0 = (void *)(vn * 4);\n          local_c8 = (uint *)(vn * -3);\n          puVar13 = (uint *)((int)local_c8 + un);\n          local_b4 = (mp_srcptr)((int)local_a8 * 4);\n          prodp = prodp + (int)local_a8;\n          local_b0 = local_b0 + (int)local_a8;\n          local_cc = local_bc - vn;\n          if ((int)puVar13 * 2 < (int)local_cc) {\n            local_c4 = local_ac + vn;\n          }\n          else {\n            local_c4 = local_ac + vn;\n            local_b8 = puVar13;\n            do {\n              amStackY_8010[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn);\n              puVar13 = (uint *)((int)puVar13 + (int)local_c8);\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4);\n              local_bc = (*(code *)*local_a0)();\n              local_b8 = (uint *)((int)prodp + (int)local_c0);\n              (*(code *)local_a0[10])();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_b4);\n            } while (local_cc == (int)puVar13 * 2 ||\n                     SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0)\n            ;\n          }\n          local_b8 = puVar13;\n          if ((int)local_b8 < vn) {\n            amStackY_8010[0x1fc4] = 0x473bd;\n            __gmpn_mul(local_ac,local_a4,vn,local_b0,(mp_size_t)local_b8);\n          }\n          else {\n            amStackY_8010[0x1fc4] = 0x47d73;\n            __gmpn_mul(local_ac,local_b0,(mp_size_t)local_b8,local_a4,vn);\n          }\n          local_a8 = (mp_srcptr)(*(code *)*local_a0)();\n          local_a4 = (uint *)((int)local_c0 + (int)prodp);\n          (*(code *)local_a0[10])();\n          uVar9 = *local_a4;\n          *local_a4 = *local_a4 + (int)local_a8;\n          puVar13 = local_a4;\n          if (CARRY4(uVar9,(uint)local_a8)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            __gmp_tmp_reentrant_free(__tmp_marker);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_b8);\n          puVar16 = auStack_dc;\n        }\n        else {\n          amStackY_8010[0x1fc4] = 0x47c6c;\n          __gmpn_nussbaumer_mul(prodp,up,un,local_a4,vn);\n          local_a0 = local_ac;\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < vn) {\n        local_a8 = (mp_srcptr)(un * 3 + 0xc);\n        if (SBORROW4((int)local_a8,vn * 4) != (int)(local_a8 + -vn) < 0) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_a0 = local_ac;\n          if (vn < 0x15e) {\n            iVar2 = -(un * 0xc + 0x9bU & 0xfffffff0);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else if (vn < 0x1c2) {\n            iVar2 = -((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else {\n            iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4;\n            uVar9 = iVar2 + 0x6dc;\n            if (uVar9 < 0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_dc + iVar2;\n              pvVar10 = (void *)((int)&local_d0 + iVar2);\n            }\n            else {\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }\n            *(void **)(puVar15 + -0xc) = pvVar10;\n            *(mp_size_t *)(puVar15 + -0x10) = vn;\n            *(uint **)(puVar15 + -0x14) = local_a4;\n            *(mp_size_t *)(puVar15 + -0x18) = un;\n            *(mp_srcptr *)(puVar15 + -0x1c) = up;\n            *(mp_ptr *)(puVar15 + -0x20) = prodp;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc));\n            puVar16 = puVar15;\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n            *(undefined4 *)(puVar16 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n          }\n          goto LAB_000471aa;\n        }\n      }\n      __tmp_marker = (tmp_reentrant_t *)0x0;\n      uVar9 = (vn + 8) * 0x10;\n      if (uVar9 < 0x7f01) {\n        local_b8 = (uint *)((int)&local_d0 + -(uVar9 + 0x10));\n        puVar16 = auStack_dc + -(uVar9 + 0x10);\n      }\n      else {\n        local_a8 = up;\n        local_b8 = (uint *)__gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n        up = local_a8;\n        puVar16 = auStack_dc;\n      }\n      local_bc = vn * 5;\n      local_a8 = (mp_srcptr)(un * 2);\n      local_b0 = (mp_srcptr)(vn * 7);\n      if (SBORROW4((int)local_a8,vn * 5) == (int)local_a8 + vn * -5 < 0) {\n        uVar9 = ((int)local_b0 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          local_a8 = (mp_srcptr)((uint)(puVar16 + iVar2 + 0xf) & 0xfffffff0);\n          puVar16 = puVar16 + iVar2;\n        }\n        else {\n          local_ac = up;\n          *(uint *)(puVar16 + -0xc) = uVar9;\n          *(tmp_reentrant_t ***)(puVar16 + -0x10) = &__tmp_marker;\n          *(undefined4 *)(puVar16 + -0x14) = 0x47eac;\n          local_a8 = (mp_srcptr)\n                     __gmp_tmp_reentrant_alloc\n                               (*(tmp_reentrant_t ***)(puVar16 + -0x10),*(size_t *)(puVar16 + -0xc))\n          ;\n          up = local_ac;\n        }\n        local_c8 = (uint *)(vn * 2);\n        if (vn < 0x6e) {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = (uint *)(vn * 2);\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          local_c4 = (mp_ptr)(vn * 8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x476c2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_ac);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x476eb;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = local_c8;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_c4 = (mp_ptr)(vn * 8);\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bb2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)local_ac + (int)prodp);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bda;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        if ((int)local_b4 < vn) {\n          *(mp_srcptr *)(puVar16 + -0x10) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x14) = local_b0;\n          *(mp_size_t *)(puVar16 + -0x18) = vn;\n          *(uint **)(puVar16 + -0x1c) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x4775a;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        else {\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x18) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47c49;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        pmVar11 = local_a0;\n        *(mp_size_t *)(puVar16 + -4) = vn;\n        *(mp_srcptr *)(puVar16 + -8) = local_a8;\n        *(mp_ptr *)(puVar16 + -0xc) = prodp;\n        *(mp_ptr *)(puVar16 + -0x10) = prodp;\n        pcVar4 = (code *)*pmVar11;\n        *(undefined4 *)(puVar16 + -0x14) = 0x4776e;\n        local_a8 = (mp_srcptr)(*pcVar4)();\n        pmVar11 = local_a0;\n        puVar13 = (uint *)((int)local_ac + (int)prodp);\n        *(mp_srcptr *)(puVar16 + -8) = local_b4;\n        local_a4 = puVar13;\n        *(void **)(puVar16 + -0xc) = local_c0;\n        *(uint **)(puVar16 + -0x10) = puVar13;\n        pcVar4 = (code *)pmVar11[10];\n        *(undefined4 *)(puVar16 + -0x14) = 0x4779b;\n        (*pcVar4)();\n        uVar9 = *local_a4;\n        *local_a4 = *local_a4 + (int)local_a8;\n        puVar13 = local_a4;\n        if (CARRY4(uVar9,(uint)local_a8)) {\n          do {\n            puVar14 = puVar13 + 1;\n            uVar9 = *puVar14;\n            *puVar14 = *puVar14 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        local_ac = (mp_srcptr)(vn + (int)local_b4);\n      }\n      else if (un * 6 < (int)local_b0) {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47d4a;\n        __gmpn_toom33_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else if (SBORROW4((int)local_a8,vn * 3) == (int)local_a8 + vn * -3 < 0) {\n        if (un * 6 < vn * 0xb) {\n          if (un * 4 < (int)local_b0) {\n            if (vn < 0x6e) goto LAB_00047dab;\n          }\n          else if (vn < 100) goto LAB_00047e74;\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47d26;\n          __gmpn_toom53_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else if (vn < 0x6e) {\nLAB_00047e74:\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e8e;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n      }\n      else if (vn < 100) {\nLAB_00047dab:\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47dc5;\n        __gmpn_toom32_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47a39;\n        __gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n        *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n        *(undefined4 *)(puVar16 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n      }\n      local_a0 = local_ac;\n      goto LAB_000471aa;\n    }\n  }" { (expression_statement "local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;" (assignment_expression "local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94" identifier = (cast_expression "(mp_srcptr)PTR___gmpn_cpuvec_0009dd94" ( (type_descriptor "mp_srcptr" type_identifier) ) identifier)) ;) (if_statement "if (*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94) <= vn) {\nLAB_000470c0:\n      if (vn < (int)local_a0[0x26]) {\n        local_a8 = (mp_srcptr)(vn * 8);\n        local_c4 = (mp_ptr)(vn * 4);\n        local_d0 = vn * 5;\n        iVar2 = -(((vn * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        local_c0 = (void *)((int)&local_d0 + iVar2);\n        local_b8 = (uint *)(vn * 2);\n        local_c8 = (uint *)(vn * 3);\n        if (un < (int)(vn * 3)) {\n          local_a0 = (mp_srcptr)(un + vn);\n          if (un * 4 < vn * 5) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else if (un * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n        }\n        else {\n          local_b4 = up;\n          iVar5 = -(vn * 0x10 + 0x10);\n          *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n          *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n          *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n          *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = local_b8;\n          *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = up;\n          *(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = prodp;\n          local_b0 = (mp_srcptr)((int)&local_d0 + iVar5 + iVar2);\n          *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x4783a;\n          __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                            *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                            *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                            *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          puVar13 = local_b8;\n          prodp = (mp_ptr)((int)prodp + (int)local_a8);\n          local_ac = (mp_srcptr)(un - (int)local_b8);\n          local_b4 = (mp_srcptr)((int)local_b4 + (int)local_a8);\n          local_cc = (int)local_b0 + (int)local_c4;\n          if ((int)local_c8 <= (int)(un - (int)local_b8)) {\n            do {\n              *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n              *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n              *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n              *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;\n              __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n              pmVar7 = local_a0;\n              pmVar11 = local_a8;\n              *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n              local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);\n              *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n              local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);\n              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n              *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n              pcVar4 = (code *)*pmVar7;\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;\n              local_bc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_c4);\n              *(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;\n              local_b8 = puVar14;\n              *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n              *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;\n              (*pcVar4)();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_a8);\n            } while ((int)local_c8 <= (int)local_ac);\n          }\n          pmVar11 = local_ac;\n          if ((int)local_ac * 4 < (int)local_d0) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = pmVar11;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47cd2;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else if ((int)local_ac * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          pmVar11 = local_a0;\n          *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n          *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n          *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n          pcVar4 = (code *)*pmVar11;\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x4799b;\n          local_a4 = (uint *)(*pcVar4)();\n          pmVar11 = local_a0;\n          puVar13 = (uint *)((int)local_c4 + (int)prodp);\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_ac;\n          *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n          *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar13;\n          pcVar4 = (code *)pmVar11[10];\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x479c2;\n          (*pcVar4)();\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + (int)local_a4;\n          if (CARRY4(uVar9,(uint)local_a4)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_ac);\n          puVar16 = auStack_dc + iVar5 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      local_ac = (mp_srcptr)(un + vn);\n      if ((3999 < (int)local_ac) && (local_a8 = (mp_srcptr)(vn * 3), 1999 < (int)local_a8)) {\n        uVar9 = vn * 8;\n        if (uVar9 - un == 0 || (int)uVar9 < un) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_bc = uVar9;\n          local_b0 = up;\n          local_ac = (mp_srcptr)__gmp_tmp_reentrant_alloc(&__tmp_marker,(vn * 9 >> 1) << 2);\n          amStackY_8010[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul(prodp,local_b0,(mp_size_t)local_a8,local_a4,vn);\n          local_c0 = (void *)(vn * 4);\n          local_c8 = (uint *)(vn * -3);\n          puVar13 = (uint *)((int)local_c8 + un);\n          local_b4 = (mp_srcptr)((int)local_a8 * 4);\n          prodp = prodp + (int)local_a8;\n          local_b0 = local_b0 + (int)local_a8;\n          local_cc = local_bc - vn;\n          if ((int)puVar13 * 2 < (int)local_cc) {\n            local_c4 = local_ac + vn;\n          }\n          else {\n            local_c4 = local_ac + vn;\n            local_b8 = puVar13;\n            do {\n              amStackY_8010[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn);\n              puVar13 = (uint *)((int)puVar13 + (int)local_c8);\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4);\n              local_bc = (*(code *)*local_a0)();\n              local_b8 = (uint *)((int)prodp + (int)local_c0);\n              (*(code *)local_a0[10])();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_b4);\n            } while (local_cc == (int)puVar13 * 2 ||\n                     SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0)\n            ;\n          }\n          local_b8 = puVar13;\n          if ((int)local_b8 < vn) {\n            amStackY_8010[0x1fc4] = 0x473bd;\n            __gmpn_mul(local_ac,local_a4,vn,local_b0,(mp_size_t)local_b8);\n          }\n          else {\n            amStackY_8010[0x1fc4] = 0x47d73;\n            __gmpn_mul(local_ac,local_b0,(mp_size_t)local_b8,local_a4,vn);\n          }\n          local_a8 = (mp_srcptr)(*(code *)*local_a0)();\n          local_a4 = (uint *)((int)local_c0 + (int)prodp);\n          (*(code *)local_a0[10])();\n          uVar9 = *local_a4;\n          *local_a4 = *local_a4 + (int)local_a8;\n          puVar13 = local_a4;\n          if (CARRY4(uVar9,(uint)local_a8)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            __gmp_tmp_reentrant_free(__tmp_marker);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_b8);\n          puVar16 = auStack_dc;\n        }\n        else {\n          amStackY_8010[0x1fc4] = 0x47c6c;\n          __gmpn_nussbaumer_mul(prodp,up,un,local_a4,vn);\n          local_a0 = local_ac;\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < vn) {\n        local_a8 = (mp_srcptr)(un * 3 + 0xc);\n        if (SBORROW4((int)local_a8,vn * 4) != (int)(local_a8 + -vn) < 0) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_a0 = local_ac;\n          if (vn < 0x15e) {\n            iVar2 = -(un * 0xc + 0x9bU & 0xfffffff0);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else if (vn < 0x1c2) {\n            iVar2 = -((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else {\n            iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4;\n            uVar9 = iVar2 + 0x6dc;\n            if (uVar9 < 0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_dc + iVar2;\n              pvVar10 = (void *)((int)&local_d0 + iVar2);\n            }\n            else {\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }\n            *(void **)(puVar15 + -0xc) = pvVar10;\n            *(mp_size_t *)(puVar15 + -0x10) = vn;\n            *(uint **)(puVar15 + -0x14) = local_a4;\n            *(mp_size_t *)(puVar15 + -0x18) = un;\n            *(mp_srcptr *)(puVar15 + -0x1c) = up;\n            *(mp_ptr *)(puVar15 + -0x20) = prodp;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc));\n            puVar16 = puVar15;\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n            *(undefined4 *)(puVar16 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n          }\n          goto LAB_000471aa;\n        }\n      }\n      __tmp_marker = (tmp_reentrant_t *)0x0;\n      uVar9 = (vn + 8) * 0x10;\n      if (uVar9 < 0x7f01) {\n        local_b8 = (uint *)((int)&local_d0 + -(uVar9 + 0x10));\n        puVar16 = auStack_dc + -(uVar9 + 0x10);\n      }\n      else {\n        local_a8 = up;\n        local_b8 = (uint *)__gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n        up = local_a8;\n        puVar16 = auStack_dc;\n      }\n      local_bc = vn * 5;\n      local_a8 = (mp_srcptr)(un * 2);\n      local_b0 = (mp_srcptr)(vn * 7);\n      if (SBORROW4((int)local_a8,vn * 5) == (int)local_a8 + vn * -5 < 0) {\n        uVar9 = ((int)local_b0 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          local_a8 = (mp_srcptr)((uint)(puVar16 + iVar2 + 0xf) & 0xfffffff0);\n          puVar16 = puVar16 + iVar2;\n        }\n        else {\n          local_ac = up;\n          *(uint *)(puVar16 + -0xc) = uVar9;\n          *(tmp_reentrant_t ***)(puVar16 + -0x10) = &__tmp_marker;\n          *(undefined4 *)(puVar16 + -0x14) = 0x47eac;\n          local_a8 = (mp_srcptr)\n                     __gmp_tmp_reentrant_alloc\n                               (*(tmp_reentrant_t ***)(puVar16 + -0x10),*(size_t *)(puVar16 + -0xc))\n          ;\n          up = local_ac;\n        }\n        local_c8 = (uint *)(vn * 2);\n        if (vn < 0x6e) {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = (uint *)(vn * 2);\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          local_c4 = (mp_ptr)(vn * 8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x476c2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_ac);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x476eb;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = local_c8;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_c4 = (mp_ptr)(vn * 8);\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bb2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)local_ac + (int)prodp);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bda;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        if ((int)local_b4 < vn) {\n          *(mp_srcptr *)(puVar16 + -0x10) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x14) = local_b0;\n          *(mp_size_t *)(puVar16 + -0x18) = vn;\n          *(uint **)(puVar16 + -0x1c) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x4775a;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        else {\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x18) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47c49;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        pmVar11 = local_a0;\n        *(mp_size_t *)(puVar16 + -4) = vn;\n        *(mp_srcptr *)(puVar16 + -8) = local_a8;\n        *(mp_ptr *)(puVar16 + -0xc) = prodp;\n        *(mp_ptr *)(puVar16 + -0x10) = prodp;\n        pcVar4 = (code *)*pmVar11;\n        *(undefined4 *)(puVar16 + -0x14) = 0x4776e;\n        local_a8 = (mp_srcptr)(*pcVar4)();\n        pmVar11 = local_a0;\n        puVar13 = (uint *)((int)local_ac + (int)prodp);\n        *(mp_srcptr *)(puVar16 + -8) = local_b4;\n        local_a4 = puVar13;\n        *(void **)(puVar16 + -0xc) = local_c0;\n        *(uint **)(puVar16 + -0x10) = puVar13;\n        pcVar4 = (code *)pmVar11[10];\n        *(undefined4 *)(puVar16 + -0x14) = 0x4779b;\n        (*pcVar4)();\n        uVar9 = *local_a4;\n        *local_a4 = *local_a4 + (int)local_a8;\n        puVar13 = local_a4;\n        if (CARRY4(uVar9,(uint)local_a8)) {\n          do {\n            puVar14 = puVar13 + 1;\n            uVar9 = *puVar14;\n            *puVar14 = *puVar14 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        local_ac = (mp_srcptr)(vn + (int)local_b4);\n      }\n      else if (un * 6 < (int)local_b0) {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47d4a;\n        __gmpn_toom33_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else if (SBORROW4((int)local_a8,vn * 3) == (int)local_a8 + vn * -3 < 0) {\n        if (un * 6 < vn * 0xb) {\n          if (un * 4 < (int)local_b0) {\n            if (vn < 0x6e) goto LAB_00047dab;\n          }\n          else if (vn < 100) goto LAB_00047e74;\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47d26;\n          __gmpn_toom53_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else if (vn < 0x6e) {\nLAB_00047e74:\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e8e;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n      }\n      else if (vn < 100) {\nLAB_00047dab:\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47dc5;\n        __gmpn_toom32_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47a39;\n        __gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n        *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n        *(undefined4 *)(puVar16 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n      }\n      local_a0 = local_ac;\n      goto LAB_000471aa;\n    }" if (parenthesized_expression "(*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94) <= vn)" ( (binary_expression "*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94) <= vn" (pointer_expression "*(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94)" * (cast_expression "(int *)(PTR___gmpn_cpuvec_0009dd94 + 0x94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR___gmpn_cpuvec_0009dd94 + 0x94)" ( (binary_expression "PTR___gmpn_cpuvec_0009dd94 + 0x94" identifier + number_literal) )))) <= identifier) )) (compound_statement "{\nLAB_000470c0:\n      if (vn < (int)local_a0[0x26]) {\n        local_a8 = (mp_srcptr)(vn * 8);\n        local_c4 = (mp_ptr)(vn * 4);\n        local_d0 = vn * 5;\n        iVar2 = -(((vn * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        local_c0 = (void *)((int)&local_d0 + iVar2);\n        local_b8 = (uint *)(vn * 2);\n        local_c8 = (uint *)(vn * 3);\n        if (un < (int)(vn * 3)) {\n          local_a0 = (mp_srcptr)(un + vn);\n          if (un * 4 < vn * 5) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else if (un * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n        }\n        else {\n          local_b4 = up;\n          iVar5 = -(vn * 0x10 + 0x10);\n          *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n          *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n          *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n          *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = local_b8;\n          *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = up;\n          *(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = prodp;\n          local_b0 = (mp_srcptr)((int)&local_d0 + iVar5 + iVar2);\n          *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x4783a;\n          __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                            *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                            *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                            *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          puVar13 = local_b8;\n          prodp = (mp_ptr)((int)prodp + (int)local_a8);\n          local_ac = (mp_srcptr)(un - (int)local_b8);\n          local_b4 = (mp_srcptr)((int)local_b4 + (int)local_a8);\n          local_cc = (int)local_b0 + (int)local_c4;\n          if ((int)local_c8 <= (int)(un - (int)local_b8)) {\n            do {\n              *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n              *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n              *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n              *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;\n              __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n              pmVar7 = local_a0;\n              pmVar11 = local_a8;\n              *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n              local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);\n              *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n              local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);\n              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n              *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n              pcVar4 = (code *)*pmVar7;\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;\n              local_bc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_c4);\n              *(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;\n              local_b8 = puVar14;\n              *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n              *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;\n              (*pcVar4)();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_a8);\n            } while ((int)local_c8 <= (int)local_ac);\n          }\n          pmVar11 = local_ac;\n          if ((int)local_ac * 4 < (int)local_d0) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = pmVar11;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47cd2;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else if ((int)local_ac * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          pmVar11 = local_a0;\n          *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n          *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n          *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n          pcVar4 = (code *)*pmVar11;\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x4799b;\n          local_a4 = (uint *)(*pcVar4)();\n          pmVar11 = local_a0;\n          puVar13 = (uint *)((int)local_c4 + (int)prodp);\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_ac;\n          *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n          *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar13;\n          pcVar4 = (code *)pmVar11[10];\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x479c2;\n          (*pcVar4)();\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + (int)local_a4;\n          if (CARRY4(uVar9,(uint)local_a4)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_ac);\n          puVar16 = auStack_dc + iVar5 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      local_ac = (mp_srcptr)(un + vn);\n      if ((3999 < (int)local_ac) && (local_a8 = (mp_srcptr)(vn * 3), 1999 < (int)local_a8)) {\n        uVar9 = vn * 8;\n        if (uVar9 - un == 0 || (int)uVar9 < un) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_bc = uVar9;\n          local_b0 = up;\n          local_ac = (mp_srcptr)__gmp_tmp_reentrant_alloc(&__tmp_marker,(vn * 9 >> 1) << 2);\n          amStackY_8010[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul(prodp,local_b0,(mp_size_t)local_a8,local_a4,vn);\n          local_c0 = (void *)(vn * 4);\n          local_c8 = (uint *)(vn * -3);\n          puVar13 = (uint *)((int)local_c8 + un);\n          local_b4 = (mp_srcptr)((int)local_a8 * 4);\n          prodp = prodp + (int)local_a8;\n          local_b0 = local_b0 + (int)local_a8;\n          local_cc = local_bc - vn;\n          if ((int)puVar13 * 2 < (int)local_cc) {\n            local_c4 = local_ac + vn;\n          }\n          else {\n            local_c4 = local_ac + vn;\n            local_b8 = puVar13;\n            do {\n              amStackY_8010[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn);\n              puVar13 = (uint *)((int)puVar13 + (int)local_c8);\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4);\n              local_bc = (*(code *)*local_a0)();\n              local_b8 = (uint *)((int)prodp + (int)local_c0);\n              (*(code *)local_a0[10])();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_b4);\n            } while (local_cc == (int)puVar13 * 2 ||\n                     SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0)\n            ;\n          }\n          local_b8 = puVar13;\n          if ((int)local_b8 < vn) {\n            amStackY_8010[0x1fc4] = 0x473bd;\n            __gmpn_mul(local_ac,local_a4,vn,local_b0,(mp_size_t)local_b8);\n          }\n          else {\n            amStackY_8010[0x1fc4] = 0x47d73;\n            __gmpn_mul(local_ac,local_b0,(mp_size_t)local_b8,local_a4,vn);\n          }\n          local_a8 = (mp_srcptr)(*(code *)*local_a0)();\n          local_a4 = (uint *)((int)local_c0 + (int)prodp);\n          (*(code *)local_a0[10])();\n          uVar9 = *local_a4;\n          *local_a4 = *local_a4 + (int)local_a8;\n          puVar13 = local_a4;\n          if (CARRY4(uVar9,(uint)local_a8)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            __gmp_tmp_reentrant_free(__tmp_marker);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_b8);\n          puVar16 = auStack_dc;\n        }\n        else {\n          amStackY_8010[0x1fc4] = 0x47c6c;\n          __gmpn_nussbaumer_mul(prodp,up,un,local_a4,vn);\n          local_a0 = local_ac;\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < vn) {\n        local_a8 = (mp_srcptr)(un * 3 + 0xc);\n        if (SBORROW4((int)local_a8,vn * 4) != (int)(local_a8 + -vn) < 0) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_a0 = local_ac;\n          if (vn < 0x15e) {\n            iVar2 = -(un * 0xc + 0x9bU & 0xfffffff0);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else if (vn < 0x1c2) {\n            iVar2 = -((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else {\n            iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4;\n            uVar9 = iVar2 + 0x6dc;\n            if (uVar9 < 0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_dc + iVar2;\n              pvVar10 = (void *)((int)&local_d0 + iVar2);\n            }\n            else {\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }\n            *(void **)(puVar15 + -0xc) = pvVar10;\n            *(mp_size_t *)(puVar15 + -0x10) = vn;\n            *(uint **)(puVar15 + -0x14) = local_a4;\n            *(mp_size_t *)(puVar15 + -0x18) = un;\n            *(mp_srcptr *)(puVar15 + -0x1c) = up;\n            *(mp_ptr *)(puVar15 + -0x20) = prodp;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc));\n            puVar16 = puVar15;\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n            *(undefined4 *)(puVar16 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n          }\n          goto LAB_000471aa;\n        }\n      }\n      __tmp_marker = (tmp_reentrant_t *)0x0;\n      uVar9 = (vn + 8) * 0x10;\n      if (uVar9 < 0x7f01) {\n        local_b8 = (uint *)((int)&local_d0 + -(uVar9 + 0x10));\n        puVar16 = auStack_dc + -(uVar9 + 0x10);\n      }\n      else {\n        local_a8 = up;\n        local_b8 = (uint *)__gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n        up = local_a8;\n        puVar16 = auStack_dc;\n      }\n      local_bc = vn * 5;\n      local_a8 = (mp_srcptr)(un * 2);\n      local_b0 = (mp_srcptr)(vn * 7);\n      if (SBORROW4((int)local_a8,vn * 5) == (int)local_a8 + vn * -5 < 0) {\n        uVar9 = ((int)local_b0 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          local_a8 = (mp_srcptr)((uint)(puVar16 + iVar2 + 0xf) & 0xfffffff0);\n          puVar16 = puVar16 + iVar2;\n        }\n        else {\n          local_ac = up;\n          *(uint *)(puVar16 + -0xc) = uVar9;\n          *(tmp_reentrant_t ***)(puVar16 + -0x10) = &__tmp_marker;\n          *(undefined4 *)(puVar16 + -0x14) = 0x47eac;\n          local_a8 = (mp_srcptr)\n                     __gmp_tmp_reentrant_alloc\n                               (*(tmp_reentrant_t ***)(puVar16 + -0x10),*(size_t *)(puVar16 + -0xc))\n          ;\n          up = local_ac;\n        }\n        local_c8 = (uint *)(vn * 2);\n        if (vn < 0x6e) {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = (uint *)(vn * 2);\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          local_c4 = (mp_ptr)(vn * 8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x476c2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_ac);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x476eb;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = local_c8;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_c4 = (mp_ptr)(vn * 8);\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bb2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)local_ac + (int)prodp);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bda;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        if ((int)local_b4 < vn) {\n          *(mp_srcptr *)(puVar16 + -0x10) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x14) = local_b0;\n          *(mp_size_t *)(puVar16 + -0x18) = vn;\n          *(uint **)(puVar16 + -0x1c) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x4775a;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        else {\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x18) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47c49;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        pmVar11 = local_a0;\n        *(mp_size_t *)(puVar16 + -4) = vn;\n        *(mp_srcptr *)(puVar16 + -8) = local_a8;\n        *(mp_ptr *)(puVar16 + -0xc) = prodp;\n        *(mp_ptr *)(puVar16 + -0x10) = prodp;\n        pcVar4 = (code *)*pmVar11;\n        *(undefined4 *)(puVar16 + -0x14) = 0x4776e;\n        local_a8 = (mp_srcptr)(*pcVar4)();\n        pmVar11 = local_a0;\n        puVar13 = (uint *)((int)local_ac + (int)prodp);\n        *(mp_srcptr *)(puVar16 + -8) = local_b4;\n        local_a4 = puVar13;\n        *(void **)(puVar16 + -0xc) = local_c0;\n        *(uint **)(puVar16 + -0x10) = puVar13;\n        pcVar4 = (code *)pmVar11[10];\n        *(undefined4 *)(puVar16 + -0x14) = 0x4779b;\n        (*pcVar4)();\n        uVar9 = *local_a4;\n        *local_a4 = *local_a4 + (int)local_a8;\n        puVar13 = local_a4;\n        if (CARRY4(uVar9,(uint)local_a8)) {\n          do {\n            puVar14 = puVar13 + 1;\n            uVar9 = *puVar14;\n            *puVar14 = *puVar14 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        local_ac = (mp_srcptr)(vn + (int)local_b4);\n      }\n      else if (un * 6 < (int)local_b0) {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47d4a;\n        __gmpn_toom33_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else if (SBORROW4((int)local_a8,vn * 3) == (int)local_a8 + vn * -3 < 0) {\n        if (un * 6 < vn * 0xb) {\n          if (un * 4 < (int)local_b0) {\n            if (vn < 0x6e) goto LAB_00047dab;\n          }\n          else if (vn < 100) goto LAB_00047e74;\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47d26;\n          __gmpn_toom53_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else if (vn < 0x6e) {\nLAB_00047e74:\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e8e;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n      }\n      else if (vn < 100) {\nLAB_00047dab:\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47dc5;\n        __gmpn_toom32_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47a39;\n        __gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n        *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n        *(undefined4 *)(puVar16 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n      }\n      local_a0 = local_ac;\n      goto LAB_000471aa;\n    }" { (labeled_statement "LAB_000470c0:\n      if (vn < (int)local_a0[0x26]) {\n        local_a8 = (mp_srcptr)(vn * 8);\n        local_c4 = (mp_ptr)(vn * 4);\n        local_d0 = vn * 5;\n        iVar2 = -(((vn * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        local_c0 = (void *)((int)&local_d0 + iVar2);\n        local_b8 = (uint *)(vn * 2);\n        local_c8 = (uint *)(vn * 3);\n        if (un < (int)(vn * 3)) {\n          local_a0 = (mp_srcptr)(un + vn);\n          if (un * 4 < vn * 5) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else if (un * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n        }\n        else {\n          local_b4 = up;\n          iVar5 = -(vn * 0x10 + 0x10);\n          *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n          *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n          *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n          *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = local_b8;\n          *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = up;\n          *(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = prodp;\n          local_b0 = (mp_srcptr)((int)&local_d0 + iVar5 + iVar2);\n          *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x4783a;\n          __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                            *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                            *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                            *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          puVar13 = local_b8;\n          prodp = (mp_ptr)((int)prodp + (int)local_a8);\n          local_ac = (mp_srcptr)(un - (int)local_b8);\n          local_b4 = (mp_srcptr)((int)local_b4 + (int)local_a8);\n          local_cc = (int)local_b0 + (int)local_c4;\n          if ((int)local_c8 <= (int)(un - (int)local_b8)) {\n            do {\n              *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n              *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n              *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n              *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;\n              __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n              pmVar7 = local_a0;\n              pmVar11 = local_a8;\n              *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n              local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);\n              *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n              local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);\n              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n              *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n              pcVar4 = (code *)*pmVar7;\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;\n              local_bc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_c4);\n              *(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;\n              local_b8 = puVar14;\n              *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n              *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;\n              (*pcVar4)();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_a8);\n            } while ((int)local_c8 <= (int)local_ac);\n          }\n          pmVar11 = local_ac;\n          if ((int)local_ac * 4 < (int)local_d0) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = pmVar11;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47cd2;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else if ((int)local_ac * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          pmVar11 = local_a0;\n          *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n          *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n          *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n          pcVar4 = (code *)*pmVar11;\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x4799b;\n          local_a4 = (uint *)(*pcVar4)();\n          pmVar11 = local_a0;\n          puVar13 = (uint *)((int)local_c4 + (int)prodp);\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_ac;\n          *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n          *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar13;\n          pcVar4 = (code *)pmVar11[10];\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x479c2;\n          (*pcVar4)();\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + (int)local_a4;\n          if (CARRY4(uVar9,(uint)local_a4)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_ac);\n          puVar16 = auStack_dc + iVar5 + iVar2;\n        }\n        goto LAB_000471aa;\n      }" statement_identifier : (if_statement "if (vn < (int)local_a0[0x26]) {\n        local_a8 = (mp_srcptr)(vn * 8);\n        local_c4 = (mp_ptr)(vn * 4);\n        local_d0 = vn * 5;\n        iVar2 = -(((vn * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        local_c0 = (void *)((int)&local_d0 + iVar2);\n        local_b8 = (uint *)(vn * 2);\n        local_c8 = (uint *)(vn * 3);\n        if (un < (int)(vn * 3)) {\n          local_a0 = (mp_srcptr)(un + vn);\n          if (un * 4 < vn * 5) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else if (un * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n        }\n        else {\n          local_b4 = up;\n          iVar5 = -(vn * 0x10 + 0x10);\n          *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n          *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n          *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n          *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = local_b8;\n          *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = up;\n          *(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = prodp;\n          local_b0 = (mp_srcptr)((int)&local_d0 + iVar5 + iVar2);\n          *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x4783a;\n          __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                            *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                            *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                            *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          puVar13 = local_b8;\n          prodp = (mp_ptr)((int)prodp + (int)local_a8);\n          local_ac = (mp_srcptr)(un - (int)local_b8);\n          local_b4 = (mp_srcptr)((int)local_b4 + (int)local_a8);\n          local_cc = (int)local_b0 + (int)local_c4;\n          if ((int)local_c8 <= (int)(un - (int)local_b8)) {\n            do {\n              *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n              *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n              *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n              *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;\n              __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n              pmVar7 = local_a0;\n              pmVar11 = local_a8;\n              *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n              local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);\n              *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n              local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);\n              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n              *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n              pcVar4 = (code *)*pmVar7;\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;\n              local_bc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_c4);\n              *(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;\n              local_b8 = puVar14;\n              *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n              *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;\n              (*pcVar4)();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_a8);\n            } while ((int)local_c8 <= (int)local_ac);\n          }\n          pmVar11 = local_ac;\n          if ((int)local_ac * 4 < (int)local_d0) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = pmVar11;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47cd2;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else if ((int)local_ac * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          pmVar11 = local_a0;\n          *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n          *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n          *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n          pcVar4 = (code *)*pmVar11;\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x4799b;\n          local_a4 = (uint *)(*pcVar4)();\n          pmVar11 = local_a0;\n          puVar13 = (uint *)((int)local_c4 + (int)prodp);\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_ac;\n          *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n          *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar13;\n          pcVar4 = (code *)pmVar11[10];\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x479c2;\n          (*pcVar4)();\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + (int)local_a4;\n          if (CARRY4(uVar9,(uint)local_a4)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_ac);\n          puVar16 = auStack_dc + iVar5 + iVar2;\n        }\n        goto LAB_000471aa;\n      }" if (parenthesized_expression "(vn < (int)local_a0[0x26])" ( (binary_expression "vn < (int)local_a0[0x26]" identifier < (cast_expression "(int)local_a0[0x26]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "local_a0[0x26]" identifier [ number_literal ]))) )) (compound_statement "{\n        local_a8 = (mp_srcptr)(vn * 8);\n        local_c4 = (mp_ptr)(vn * 4);\n        local_d0 = vn * 5;\n        iVar2 = -(((vn * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        local_c0 = (void *)((int)&local_d0 + iVar2);\n        local_b8 = (uint *)(vn * 2);\n        local_c8 = (uint *)(vn * 3);\n        if (un < (int)(vn * 3)) {\n          local_a0 = (mp_srcptr)(un + vn);\n          if (un * 4 < vn * 5) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else if (un * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n        }\n        else {\n          local_b4 = up;\n          iVar5 = -(vn * 0x10 + 0x10);\n          *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n          *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n          *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n          *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = local_b8;\n          *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = up;\n          *(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = prodp;\n          local_b0 = (mp_srcptr)((int)&local_d0 + iVar5 + iVar2);\n          *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x4783a;\n          __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                            *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                            *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                            *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          puVar13 = local_b8;\n          prodp = (mp_ptr)((int)prodp + (int)local_a8);\n          local_ac = (mp_srcptr)(un - (int)local_b8);\n          local_b4 = (mp_srcptr)((int)local_b4 + (int)local_a8);\n          local_cc = (int)local_b0 + (int)local_c4;\n          if ((int)local_c8 <= (int)(un - (int)local_b8)) {\n            do {\n              *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n              *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n              *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n              *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;\n              __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n              pmVar7 = local_a0;\n              pmVar11 = local_a8;\n              *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n              local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);\n              *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n              local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);\n              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n              *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n              pcVar4 = (code *)*pmVar7;\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;\n              local_bc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_c4);\n              *(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;\n              local_b8 = puVar14;\n              *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n              *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;\n              (*pcVar4)();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_a8);\n            } while ((int)local_c8 <= (int)local_ac);\n          }\n          pmVar11 = local_ac;\n          if ((int)local_ac * 4 < (int)local_d0) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = pmVar11;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47cd2;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else if ((int)local_ac * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          pmVar11 = local_a0;\n          *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n          *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n          *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n          pcVar4 = (code *)*pmVar11;\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x4799b;\n          local_a4 = (uint *)(*pcVar4)();\n          pmVar11 = local_a0;\n          puVar13 = (uint *)((int)local_c4 + (int)prodp);\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_ac;\n          *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n          *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar13;\n          pcVar4 = (code *)pmVar11[10];\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x479c2;\n          (*pcVar4)();\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + (int)local_a4;\n          if (CARRY4(uVar9,(uint)local_a4)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_ac);\n          puVar16 = auStack_dc + iVar5 + iVar2;\n        }\n        goto LAB_000471aa;\n      }" { (expression_statement "local_a8 = (mp_srcptr)(vn * 8);" (assignment_expression "local_a8 = (mp_srcptr)(vn * 8)" identifier = (call_expression "(mp_srcptr)(vn * 8)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(vn * 8)" ( (binary_expression "vn * 8" identifier * number_literal) )))) ;) (expression_statement "local_c4 = (mp_ptr)(vn * 4);" (assignment_expression "local_c4 = (mp_ptr)(vn * 4)" identifier = (call_expression "(mp_ptr)(vn * 4)" (parenthesized_expression "(mp_ptr)" ( identifier )) (argument_list "(vn * 4)" ( (binary_expression "vn * 4" identifier * number_literal) )))) ;) (expression_statement "local_d0 = vn * 5;" (assignment_expression "local_d0 = vn * 5" identifier = (binary_expression "vn * 5" identifier * number_literal)) ;) (expression_statement "iVar2 = -(((vn * 9) / 2) * 4 + 0x11bU & 0xfffffff0);" (assignment_expression "iVar2 = -(((vn * 9) / 2) * 4 + 0x11bU & 0xfffffff0)" identifier = (unary_expression "-(((vn * 9) / 2) * 4 + 0x11bU & 0xfffffff0)" - (parenthesized_expression "(((vn * 9) / 2) * 4 + 0x11bU & 0xfffffff0)" ( (binary_expression "((vn * 9) / 2) * 4 + 0x11bU & 0xfffffff0" (binary_expression "((vn * 9) / 2) * 4 + 0x11bU" (binary_expression "((vn * 9) / 2) * 4" (parenthesized_expression "((vn * 9) / 2)" ( (binary_expression "(vn * 9) / 2" (parenthesized_expression "(vn * 9)" ( (binary_expression "vn * 9" identifier * number_literal) )) / number_literal) )) * number_literal) + number_literal) & number_literal) )))) ;) (expression_statement "local_c0 = (void *)((int)&local_d0 + iVar2);" (assignment_expression "local_c0 = (void *)((int)&local_d0 + iVar2)" identifier = (cast_expression "(void *)((int)&local_d0 + iVar2)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_d0 + iVar2)" ( (binary_expression "(int)&local_d0 + iVar2" (cast_expression "(int)&local_d0" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_d0" & identifier)) + identifier) )))) ;) (expression_statement "local_b8 = (uint *)(vn * 2);" (assignment_expression "local_b8 = (uint *)(vn * 2)" identifier = (cast_expression "(uint *)(vn * 2)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(vn * 2)" ( (binary_expression "vn * 2" identifier * number_literal) )))) ;) (expression_statement "local_c8 = (uint *)(vn * 3);" (assignment_expression "local_c8 = (uint *)(vn * 3)" identifier = (cast_expression "(uint *)(vn * 3)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(vn * 3)" ( (binary_expression "vn * 3" identifier * number_literal) )))) ;) (if_statement "if (un < (int)(vn * 3)) {\n          local_a0 = (mp_srcptr)(un + vn);\n          if (un * 4 < vn * 5) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else if (un * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n        }\n        else {\n          local_b4 = up;\n          iVar5 = -(vn * 0x10 + 0x10);\n          *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n          *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n          *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n          *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = local_b8;\n          *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = up;\n          *(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = prodp;\n          local_b0 = (mp_srcptr)((int)&local_d0 + iVar5 + iVar2);\n          *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x4783a;\n          __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                            *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                            *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                            *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          puVar13 = local_b8;\n          prodp = (mp_ptr)((int)prodp + (int)local_a8);\n          local_ac = (mp_srcptr)(un - (int)local_b8);\n          local_b4 = (mp_srcptr)((int)local_b4 + (int)local_a8);\n          local_cc = (int)local_b0 + (int)local_c4;\n          if ((int)local_c8 <= (int)(un - (int)local_b8)) {\n            do {\n              *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n              *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n              *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n              *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;\n              __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n              pmVar7 = local_a0;\n              pmVar11 = local_a8;\n              *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n              local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);\n              *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n              local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);\n              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n              *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n              pcVar4 = (code *)*pmVar7;\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;\n              local_bc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_c4);\n              *(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;\n              local_b8 = puVar14;\n              *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n              *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;\n              (*pcVar4)();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_a8);\n            } while ((int)local_c8 <= (int)local_ac);\n          }\n          pmVar11 = local_ac;\n          if ((int)local_ac * 4 < (int)local_d0) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = pmVar11;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47cd2;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else if ((int)local_ac * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          pmVar11 = local_a0;\n          *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n          *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n          *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n          pcVar4 = (code *)*pmVar11;\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x4799b;\n          local_a4 = (uint *)(*pcVar4)();\n          pmVar11 = local_a0;\n          puVar13 = (uint *)((int)local_c4 + (int)prodp);\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_ac;\n          *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n          *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar13;\n          pcVar4 = (code *)pmVar11[10];\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x479c2;\n          (*pcVar4)();\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + (int)local_a4;\n          if (CARRY4(uVar9,(uint)local_a4)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_ac);\n          puVar16 = auStack_dc + iVar5 + iVar2;\n        }" if (parenthesized_expression "(un < (int)(vn * 3))" ( (binary_expression "un < (int)(vn * 3)" identifier < (cast_expression "(int)(vn * 3)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(vn * 3)" ( (binary_expression "vn * 3" identifier * number_literal) )))) )) (compound_statement "{\n          local_a0 = (mp_srcptr)(un + vn);\n          if (un * 4 < vn * 5) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else if (un * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n        }" { (expression_statement "local_a0 = (mp_srcptr)(un + vn);" (assignment_expression "local_a0 = (mp_srcptr)(un + vn)" identifier = (call_expression "(mp_srcptr)(un + vn)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(un + vn)" ( (binary_expression "un + vn" identifier + identifier) )))) ;) (if_statement "if (un * 4 < vn * 5) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else if (un * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }" if (parenthesized_expression "(un * 4 < vn * 5)" ( (binary_expression "un * 4 < vn * 5" (binary_expression "un * 4" identifier * number_literal) < (binary_expression "vn * 5" identifier * number_literal)) )) (compound_statement "{\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }" { (expression_statement "*(void **)(&stack0xffffff18 + iVar2) = local_c0;" (assignment_expression "*(void **)(&stack0xffffff18 + iVar2) = local_c0" (pointer_expression "*(void **)(&stack0xffffff18 + iVar2)" * (cast_expression "(void **)(&stack0xffffff18 + iVar2)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff18 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar2" (pointer_expression "&stack0xffffff18" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;" (assignment_expression "*(mp_size_t *)(&stack0xffffff14 + iVar2) = vn" (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar2" (pointer_expression "&stack0xffffff14" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(uint **)(&stack0xffffff10 + iVar2) = local_a4;" (assignment_expression "*(uint **)(&stack0xffffff10 + iVar2) = local_a4" (pointer_expression "*(uint **)(&stack0xffffff10 + iVar2)" * (cast_expression "(uint **)(&stack0xffffff10 + iVar2)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff10 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar2" (pointer_expression "&stack0xffffff10" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(&stack0xffffff0c + iVar2) = un;" (assignment_expression "*(mp_size_t *)(&stack0xffffff0c + iVar2) = un" (pointer_expression "*(mp_size_t *)(&stack0xffffff0c + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff0c + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff0c + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar2" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;" (assignment_expression "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up" (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;" (assignment_expression "*(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp" (pointer_expression "*(mp_ptr *)(auStack_dc + iVar2 + -0x20)" * (cast_expression "(mp_ptr *)(auStack_dc + iVar2 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar2 + -0x20" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47aaa;" (assignment_expression "*(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47aaa" (pointer_expression "*(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)amStackY_8010 + iVar2 + 0x7f10)" ( (binary_expression "(int)amStackY_8010 + iVar2 + 0x7f10" (binary_expression "(int)amStackY_8010 + iVar2" (cast_expression "(int)amStackY_8010" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));" (call_expression "__gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2))" identifier (argument_list "(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2))" ( (pointer_expression "*(mp_ptr *)(auStack_dc + iVar2 + -0x20)" * (cast_expression "(mp_ptr *)(auStack_dc + iVar2 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar2 + -0x20" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff0c + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff0c + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff0c + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar2" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) )))) , (pointer_expression "*(mp_srcptr *)(&stack0xffffff10 + iVar2)" * (cast_expression "(mp_srcptr *)(&stack0xffffff10 + iVar2)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff10 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar2" (pointer_expression "&stack0xffffff10" & identifier) + identifier) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar2" (pointer_expression "&stack0xffffff14" & identifier) + identifier) )))) , (pointer_expression "*(mp_ptr *)(&stack0xffffff18 + iVar2)" * (cast_expression "(mp_ptr *)(&stack0xffffff18 + iVar2)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff18 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar2" (pointer_expression "&stack0xffffff18" & identifier) + identifier) )))) ))) ;) (expression_statement "puVar16 = auStack_dc + iVar2;" (assignment_expression "puVar16 = auStack_dc + iVar2" identifier = (binary_expression "auStack_dc + iVar2" identifier + identifier)) ;) }) (else_clause "else if (un * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }" else (if_statement "if (un * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }" if (parenthesized_expression "(un * 4 < vn * 7)" ( (binary_expression "un * 4 < vn * 7" (binary_expression "un * 4" identifier * number_literal) < (binary_expression "vn * 7" identifier * number_literal)) )) (compound_statement "{\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }" { (expression_statement "*(void **)(&stack0xffffff18 + iVar2) = local_c0;" (assignment_expression "*(void **)(&stack0xffffff18 + iVar2) = local_c0" (pointer_expression "*(void **)(&stack0xffffff18 + iVar2)" * (cast_expression "(void **)(&stack0xffffff18 + iVar2)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff18 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar2" (pointer_expression "&stack0xffffff18" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;" (assignment_expression "*(mp_size_t *)(&stack0xffffff14 + iVar2) = vn" (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar2" (pointer_expression "&stack0xffffff14" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(uint **)(&stack0xffffff10 + iVar2) = local_a4;" (assignment_expression "*(uint **)(&stack0xffffff10 + iVar2) = local_a4" (pointer_expression "*(uint **)(&stack0xffffff10 + iVar2)" * (cast_expression "(uint **)(&stack0xffffff10 + iVar2)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff10 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar2" (pointer_expression "&stack0xffffff10" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(&stack0xffffff0c + iVar2) = un;" (assignment_expression "*(mp_size_t *)(&stack0xffffff0c + iVar2) = un" (pointer_expression "*(mp_size_t *)(&stack0xffffff0c + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff0c + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff0c + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar2" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;" (assignment_expression "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up" (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;" (assignment_expression "*(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp" (pointer_expression "*(mp_ptr *)(auStack_dc + iVar2 + -0x20)" * (cast_expression "(mp_ptr *)(auStack_dc + iVar2 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar2 + -0x20" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a;" (assignment_expression "*(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x4717a" (pointer_expression "*(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)amStackY_8010 + iVar2 + 0x7f10)" ( (binary_expression "(int)amStackY_8010 + iVar2 + 0x7f10" (binary_expression "(int)amStackY_8010 + iVar2" (cast_expression "(int)amStackY_8010" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));" (call_expression "__gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2))" identifier (argument_list "(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2))" ( (pointer_expression "*(mp_ptr *)(auStack_dc + iVar2 + -0x20)" * (cast_expression "(mp_ptr *)(auStack_dc + iVar2 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar2 + -0x20" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff0c + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff0c + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff0c + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar2" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) )))) , (pointer_expression "*(mp_srcptr *)(&stack0xffffff10 + iVar2)" * (cast_expression "(mp_srcptr *)(&stack0xffffff10 + iVar2)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff10 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar2" (pointer_expression "&stack0xffffff10" & identifier) + identifier) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar2" (pointer_expression "&stack0xffffff14" & identifier) + identifier) )))) , (pointer_expression "*(mp_ptr *)(&stack0xffffff18 + iVar2)" * (cast_expression "(mp_ptr *)(&stack0xffffff18 + iVar2)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff18 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar2" (pointer_expression "&stack0xffffff18" & identifier) + identifier) )))) ))) ;) (expression_statement "puVar16 = auStack_dc + iVar2;" (assignment_expression "puVar16 = auStack_dc + iVar2" identifier = (binary_expression "auStack_dc + iVar2" identifier + identifier)) ;) }) (else_clause "else {\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }" else (compound_statement "{\n            *(void **)(&stack0xffffff18 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n            puVar16 = auStack_dc + iVar2;\n          }" { (expression_statement "*(void **)(&stack0xffffff18 + iVar2) = local_c0;" (assignment_expression "*(void **)(&stack0xffffff18 + iVar2) = local_c0" (pointer_expression "*(void **)(&stack0xffffff18 + iVar2)" * (cast_expression "(void **)(&stack0xffffff18 + iVar2)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff18 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar2" (pointer_expression "&stack0xffffff18" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;" (assignment_expression "*(mp_size_t *)(&stack0xffffff14 + iVar2) = vn" (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar2" (pointer_expression "&stack0xffffff14" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(uint **)(&stack0xffffff10 + iVar2) = local_a4;" (assignment_expression "*(uint **)(&stack0xffffff10 + iVar2) = local_a4" (pointer_expression "*(uint **)(&stack0xffffff10 + iVar2)" * (cast_expression "(uint **)(&stack0xffffff10 + iVar2)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff10 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar2" (pointer_expression "&stack0xffffff10" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(&stack0xffffff0c + iVar2) = un;" (assignment_expression "*(mp_size_t *)(&stack0xffffff0c + iVar2) = un" (pointer_expression "*(mp_size_t *)(&stack0xffffff0c + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff0c + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff0c + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar2" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;" (assignment_expression "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up" (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;" (assignment_expression "*(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp" (pointer_expression "*(mp_ptr *)(auStack_dc + iVar2 + -0x20)" * (cast_expression "(mp_ptr *)(auStack_dc + iVar2 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar2 + -0x20" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a;" (assignment_expression "*(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47a7a" (pointer_expression "*(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)amStackY_8010 + iVar2 + 0x7f10)" ( (binary_expression "(int)amStackY_8010 + iVar2 + 0x7f10" (binary_expression "(int)amStackY_8010 + iVar2" (cast_expression "(int)amStackY_8010" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));" (call_expression "__gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2))" identifier (argument_list "(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2))" ( (pointer_expression "*(mp_ptr *)(auStack_dc + iVar2 + -0x20)" * (cast_expression "(mp_ptr *)(auStack_dc + iVar2 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar2 + -0x20" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff0c + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff0c + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff0c + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar2" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) )))) , (pointer_expression "*(mp_srcptr *)(&stack0xffffff10 + iVar2)" * (cast_expression "(mp_srcptr *)(&stack0xffffff10 + iVar2)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff10 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar2" (pointer_expression "&stack0xffffff10" & identifier) + identifier) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar2" (pointer_expression "&stack0xffffff14" & identifier) + identifier) )))) , (pointer_expression "*(mp_ptr *)(&stack0xffffff18 + iVar2)" * (cast_expression "(mp_ptr *)(&stack0xffffff18 + iVar2)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff18 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar2" (pointer_expression "&stack0xffffff18" & identifier) + identifier) )))) ))) ;) (expression_statement "puVar16 = auStack_dc + iVar2;" (assignment_expression "puVar16 = auStack_dc + iVar2" identifier = (binary_expression "auStack_dc + iVar2" identifier + identifier)) ;) }))))) }) (else_clause "else {\n          local_b4 = up;\n          iVar5 = -(vn * 0x10 + 0x10);\n          *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n          *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n          *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n          *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = local_b8;\n          *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = up;\n          *(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = prodp;\n          local_b0 = (mp_srcptr)((int)&local_d0 + iVar5 + iVar2);\n          *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x4783a;\n          __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                            *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                            *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                            *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          puVar13 = local_b8;\n          prodp = (mp_ptr)((int)prodp + (int)local_a8);\n          local_ac = (mp_srcptr)(un - (int)local_b8);\n          local_b4 = (mp_srcptr)((int)local_b4 + (int)local_a8);\n          local_cc = (int)local_b0 + (int)local_c4;\n          if ((int)local_c8 <= (int)(un - (int)local_b8)) {\n            do {\n              *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n              *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n              *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n              *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;\n              __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n              pmVar7 = local_a0;\n              pmVar11 = local_a8;\n              *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n              local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);\n              *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n              local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);\n              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n              *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n              pcVar4 = (code *)*pmVar7;\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;\n              local_bc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_c4);\n              *(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;\n              local_b8 = puVar14;\n              *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n              *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;\n              (*pcVar4)();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_a8);\n            } while ((int)local_c8 <= (int)local_ac);\n          }\n          pmVar11 = local_ac;\n          if ((int)local_ac * 4 < (int)local_d0) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = pmVar11;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47cd2;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else if ((int)local_ac * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          pmVar11 = local_a0;\n          *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n          *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n          *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n          pcVar4 = (code *)*pmVar11;\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x4799b;\n          local_a4 = (uint *)(*pcVar4)();\n          pmVar11 = local_a0;\n          puVar13 = (uint *)((int)local_c4 + (int)prodp);\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_ac;\n          *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n          *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar13;\n          pcVar4 = (code *)pmVar11[10];\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x479c2;\n          (*pcVar4)();\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + (int)local_a4;\n          if (CARRY4(uVar9,(uint)local_a4)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_ac);\n          puVar16 = auStack_dc + iVar5 + iVar2;\n        }" else (compound_statement "{\n          local_b4 = up;\n          iVar5 = -(vn * 0x10 + 0x10);\n          *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n          *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n          *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n          *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = local_b8;\n          *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = up;\n          *(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = prodp;\n          local_b0 = (mp_srcptr)((int)&local_d0 + iVar5 + iVar2);\n          *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x4783a;\n          __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                            *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                            *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                            *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          puVar13 = local_b8;\n          prodp = (mp_ptr)((int)prodp + (int)local_a8);\n          local_ac = (mp_srcptr)(un - (int)local_b8);\n          local_b4 = (mp_srcptr)((int)local_b4 + (int)local_a8);\n          local_cc = (int)local_b0 + (int)local_c4;\n          if ((int)local_c8 <= (int)(un - (int)local_b8)) {\n            do {\n              *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n              *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n              *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n              *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;\n              __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n              pmVar7 = local_a0;\n              pmVar11 = local_a8;\n              *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n              local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);\n              *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n              local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);\n              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n              *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n              pcVar4 = (code *)*pmVar7;\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;\n              local_bc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_c4);\n              *(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;\n              local_b8 = puVar14;\n              *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n              *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;\n              (*pcVar4)();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_a8);\n            } while ((int)local_c8 <= (int)local_ac);\n          }\n          pmVar11 = local_ac;\n          if ((int)local_ac * 4 < (int)local_d0) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = pmVar11;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47cd2;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else if ((int)local_ac * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          pmVar11 = local_a0;\n          *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n          *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n          *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n          pcVar4 = (code *)*pmVar11;\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x4799b;\n          local_a4 = (uint *)(*pcVar4)();\n          pmVar11 = local_a0;\n          puVar13 = (uint *)((int)local_c4 + (int)prodp);\n          *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_ac;\n          *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n          *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar13;\n          pcVar4 = (code *)pmVar11[10];\n          *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x479c2;\n          (*pcVar4)();\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + (int)local_a4;\n          if (CARRY4(uVar9,(uint)local_a4)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_ac);\n          puVar16 = auStack_dc + iVar5 + iVar2;\n        }" { (expression_statement "local_b4 = up;" (assignment_expression "local_b4 = up" identifier = identifier) ;) (expression_statement "iVar5 = -(vn * 0x10 + 0x10);" (assignment_expression "iVar5 = -(vn * 0x10 + 0x10)" identifier = (unary_expression "-(vn * 0x10 + 0x10)" - (parenthesized_expression "(vn * 0x10 + 0x10)" ( (binary_expression "vn * 0x10 + 0x10" (binary_expression "vn * 0x10" identifier * number_literal) + number_literal) )))) ;) (expression_statement "*(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;" (assignment_expression "*(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0" (pointer_expression "*(void **)(&stack0xffffff18 + iVar5 + iVar2)" * (cast_expression "(void **)(&stack0xffffff18 + iVar5 + iVar2)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff18 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar5 + iVar2" (binary_expression "&stack0xffffff18 + iVar5" (pointer_expression "&stack0xffffff18" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;" (assignment_expression "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn" (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar5 + iVar2" (binary_expression "&stack0xffffff14 + iVar5" (pointer_expression "&stack0xffffff14" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;" (assignment_expression "*(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4" (pointer_expression "*(uint **)(&stack0xffffff10 + iVar5 + iVar2)" * (cast_expression "(uint **)(&stack0xffffff10 + iVar5 + iVar2)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff10 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar5 + iVar2" (binary_expression "&stack0xffffff10 + iVar5" (pointer_expression "&stack0xffffff10" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(uint **)(&stack0xffffff0c + iVar5 + iVar2) = local_b8;" (assignment_expression "*(uint **)(&stack0xffffff0c + iVar5 + iVar2) = local_b8" (pointer_expression "*(uint **)(&stack0xffffff0c + iVar5 + iVar2)" * (cast_expression "(uint **)(&stack0xffffff0c + iVar5 + iVar2)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff0c + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar5 + iVar2" (binary_expression "&stack0xffffff0c + iVar5" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = up;" (assignment_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = up" (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = prodp;" (assignment_expression "*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = prodp" (pointer_expression "*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" * (cast_expression "(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x20" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "local_b0 = (mp_srcptr)((int)&local_d0 + iVar5 + iVar2);" (assignment_expression "local_b0 = (mp_srcptr)((int)&local_d0 + iVar5 + iVar2)" identifier = (call_expression "(mp_srcptr)((int)&local_d0 + iVar5 + iVar2)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "((int)&local_d0 + iVar5 + iVar2)" ( (binary_expression "(int)&local_d0 + iVar5 + iVar2" (binary_expression "(int)&local_d0 + iVar5" (cast_expression "(int)&local_d0" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_d0" & identifier)) + identifier) + identifier) )))) ;) (expression_statement "*(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x4783a;" (assignment_expression "*(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x4783a" (pointer_expression "*(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10)" ( (binary_expression "(int)amStackY_8010 + iVar5 + iVar2 + 0x7f10" (binary_expression "(int)amStackY_8010 + iVar5 + iVar2" (binary_expression "(int)amStackY_8010 + iVar5" (cast_expression "(int)amStackY_8010" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                            *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                            *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                            *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));" (call_expression "__gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                            *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                            *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                            *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2))" identifier (argument_list "(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                            *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                            *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                            *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2))" ( (pointer_expression "*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" * (cast_expression "(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x20" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff0c + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar5 + iVar2" (binary_expression "&stack0xffffff0c + iVar5" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) + identifier) )))) , (pointer_expression "*(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2)" * (cast_expression "(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff10 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar5 + iVar2" (binary_expression "&stack0xffffff10 + iVar5" (pointer_expression "&stack0xffffff10" & identifier) + identifier) + identifier) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar5 + iVar2" (binary_expression "&stack0xffffff14 + iVar5" (pointer_expression "&stack0xffffff14" & identifier) + identifier) + identifier) )))) , (pointer_expression "*(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2)" * (cast_expression "(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff18 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar5 + iVar2" (binary_expression "&stack0xffffff18 + iVar5" (pointer_expression "&stack0xffffff18" & identifier) + identifier) + identifier) )))) ))) ;) (expression_statement "puVar13 = local_b8;" (assignment_expression "puVar13 = local_b8" identifier = identifier) ;) (expression_statement "prodp = (mp_ptr)((int)prodp + (int)local_a8);" (assignment_expression "prodp = (mp_ptr)((int)prodp + (int)local_a8)" identifier = (call_expression "(mp_ptr)((int)prodp + (int)local_a8)" (parenthesized_expression "(mp_ptr)" ( identifier )) (argument_list "((int)prodp + (int)local_a8)" ( (binary_expression "(int)prodp + (int)local_a8" (cast_expression "(int)prodp" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_a8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_ac = (mp_srcptr)(un - (int)local_b8);" (assignment_expression "local_ac = (mp_srcptr)(un - (int)local_b8)" identifier = (call_expression "(mp_srcptr)(un - (int)local_b8)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(un - (int)local_b8)" ( (binary_expression "un - (int)local_b8" identifier - (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_b4 = (mp_srcptr)((int)local_b4 + (int)local_a8);" (assignment_expression "local_b4 = (mp_srcptr)((int)local_b4 + (int)local_a8)" identifier = (call_expression "(mp_srcptr)((int)local_b4 + (int)local_a8)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "((int)local_b4 + (int)local_a8)" ( (binary_expression "(int)local_b4 + (int)local_a8" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_a8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_cc = (int)local_b0 + (int)local_c4;" (assignment_expression "local_cc = (int)local_b0 + (int)local_c4" identifier = (binary_expression "(int)local_b0 + (int)local_c4" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_c4" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if ((int)local_c8 <= (int)(un - (int)local_b8)) {\n            do {\n              *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n              *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n              *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n              *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;\n              __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n              pmVar7 = local_a0;\n              pmVar11 = local_a8;\n              *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n              local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);\n              *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n              local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);\n              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n              *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n              pcVar4 = (code *)*pmVar7;\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;\n              local_bc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_c4);\n              *(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;\n              local_b8 = puVar14;\n              *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n              *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;\n              (*pcVar4)();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_a8);\n            } while ((int)local_c8 <= (int)local_ac);\n          }" if (parenthesized_expression "((int)local_c8 <= (int)(un - (int)local_b8))" ( (binary_expression "(int)local_c8 <= (int)(un - (int)local_b8)" (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier) <= (cast_expression "(int)(un - (int)local_b8)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(un - (int)local_b8)" ( (binary_expression "un - (int)local_b8" identifier - (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) )) (compound_statement "{\n            do {\n              *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n              *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n              *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n              *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;\n              __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n              pmVar7 = local_a0;\n              pmVar11 = local_a8;\n              *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n              local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);\n              *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n              local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);\n              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n              *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n              pcVar4 = (code *)*pmVar7;\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;\n              local_bc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_c4);\n              *(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;\n              local_b8 = puVar14;\n              *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n              *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;\n              (*pcVar4)();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_a8);\n            } while ((int)local_c8 <= (int)local_ac);\n          }" { (do_statement "do {\n              *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n              *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n              *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n              *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;\n              __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n              pmVar7 = local_a0;\n              pmVar11 = local_a8;\n              *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n              local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);\n              *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n              local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);\n              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n              *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n              pcVar4 = (code *)*pmVar7;\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;\n              local_bc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_c4);\n              *(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;\n              local_b8 = puVar14;\n              *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n              *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;\n              (*pcVar4)();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_a8);\n            } while ((int)local_c8 <= (int)local_ac);" do (compound_statement "{\n              *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n              *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n              *(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n              *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;\n              __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n              pmVar7 = local_a0;\n              pmVar11 = local_a8;\n              *(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;\n              local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);\n              *(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;\n              local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);\n              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;\n              *(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;\n              pcVar4 = (code *)*pmVar7;\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;\n              local_bc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_c4);\n              *(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;\n              local_b8 = puVar14;\n              *(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;\n              *(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;\n              (*pcVar4)();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_a8);\n            }" { (expression_statement "*(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;" (assignment_expression "*(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0" (pointer_expression "*(void **)(&stack0xffffff18 + iVar5 + iVar2)" * (cast_expression "(void **)(&stack0xffffff18 + iVar5 + iVar2)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff18 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar5 + iVar2" (binary_expression "&stack0xffffff18 + iVar5" (pointer_expression "&stack0xffffff18" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;" (assignment_expression "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn" (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar5 + iVar2" (binary_expression "&stack0xffffff14 + iVar5" (pointer_expression "&stack0xffffff14" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;" (assignment_expression "*(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4" (pointer_expression "*(uint **)(&stack0xffffff10 + iVar5 + iVar2)" * (cast_expression "(uint **)(&stack0xffffff10 + iVar5 + iVar2)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff10 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar5 + iVar2" (binary_expression "&stack0xffffff10 + iVar5" (pointer_expression "&stack0xffffff10" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13;" (assignment_expression "*(uint **)(&stack0xffffff0c + iVar5 + iVar2) = puVar13" (pointer_expression "*(uint **)(&stack0xffffff0c + iVar5 + iVar2)" * (cast_expression "(uint **)(&stack0xffffff0c + iVar5 + iVar2)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff0c + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar5 + iVar2" (binary_expression "&stack0xffffff0c + iVar5" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;" (assignment_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4" (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;" (assignment_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0" (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x20" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4;" (assignment_expression "*(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x478b4" (pointer_expression "*(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10)" ( (binary_expression "(int)amStackY_8010 + iVar5 + iVar2 + 0x7f10" (binary_expression "(int)amStackY_8010 + iVar5 + iVar2" (binary_expression "(int)amStackY_8010 + iVar5" (cast_expression "(int)amStackY_8010" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));" (call_expression "__gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2))" identifier (argument_list "(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                                *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                                *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                                *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                                *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                                *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2))" ( (pointer_expression "*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" * (cast_expression "(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x20" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff0c + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar5 + iVar2" (binary_expression "&stack0xffffff0c + iVar5" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) + identifier) )))) , (pointer_expression "*(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2)" * (cast_expression "(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff10 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar5 + iVar2" (binary_expression "&stack0xffffff10 + iVar5" (pointer_expression "&stack0xffffff10" & identifier) + identifier) + identifier) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar5 + iVar2" (binary_expression "&stack0xffffff14 + iVar5" (pointer_expression "&stack0xffffff14" & identifier) + identifier) + identifier) )))) , (pointer_expression "*(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2)" * (cast_expression "(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff18 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar5 + iVar2" (binary_expression "&stack0xffffff18 + iVar5" (pointer_expression "&stack0xffffff18" & identifier) + identifier) + identifier) )))) ))) ;) (expression_statement "pmVar7 = local_a0;" (assignment_expression "pmVar7 = local_a0" identifier = identifier) ;) (expression_statement "pmVar11 = local_a8;" (assignment_expression "pmVar11 = local_a8" identifier = identifier) ;) (expression_statement "*(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;" (assignment_expression "*(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn" (pointer_expression "*(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff20 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff20 + iVar5 + iVar2" (binary_expression "&stack0xffffff20 + iVar5" (pointer_expression "&stack0xffffff20" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11);" (assignment_expression "local_b4 = (mp_srcptr)((int)local_b4 + (int)pmVar11)" identifier = (call_expression "(mp_srcptr)((int)local_b4 + (int)pmVar11)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "((int)local_b4 + (int)pmVar11)" ( (binary_expression "(int)local_b4 + (int)pmVar11" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)pmVar11" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "*(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;" (assignment_expression "*(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0" (pointer_expression "*(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2)" * (cast_expression "(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff1c + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff1c + iVar5 + iVar2" (binary_expression "&stack0xffffff1c + iVar5" (pointer_expression "&stack0xffffff1c" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "local_ac = (mp_srcptr)((int)local_ac - (int)puVar13);" (assignment_expression "local_ac = (mp_srcptr)((int)local_ac - (int)puVar13)" identifier = (call_expression "(mp_srcptr)((int)local_ac - (int)puVar13)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "((int)local_ac - (int)puVar13)" ( (binary_expression "(int)local_ac - (int)puVar13" (cast_expression "(int)local_ac" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "*(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;" (assignment_expression "*(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp" (pointer_expression "*(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2)" * (cast_expression "(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff18 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar5 + iVar2" (binary_expression "&stack0xffffff18 + iVar5" (pointer_expression "&stack0xffffff18" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;" (assignment_expression "*(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp" (pointer_expression "*(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2)" * (cast_expression "(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar5 + iVar2" (binary_expression "&stack0xffffff14 + iVar5" (pointer_expression "&stack0xffffff14" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "pcVar4 = (code *)*pmVar7;" (assignment_expression "pcVar4 = (code *)*pmVar7" identifier = (cast_expression "(code *)*pmVar7" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*pmVar7" * identifier))) ;) (expression_statement "*(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc;" (assignment_expression "*(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x478dc" (pointer_expression "*(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2)" * (cast_expression "(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff10 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar5 + iVar2" (binary_expression "&stack0xffffff10 + iVar5" (pointer_expression "&stack0xffffff10" & identifier) + identifier) + identifier) )))) = number_literal) ;) (expression_statement "local_bc = (*pcVar4)();" (assignment_expression "local_bc = (*pcVar4)()" identifier = (call_expression "(*pcVar4)()" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "()" ( )))) ;) (expression_statement "pmVar11 = local_a0;" (assignment_expression "pmVar11 = local_a0" identifier = identifier) ;) (expression_statement "puVar14 = (uint *)((int)prodp + (int)local_c4);" (assignment_expression "puVar14 = (uint *)((int)prodp + (int)local_c4)" identifier = (cast_expression "(uint *)((int)prodp + (int)local_c4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)prodp + (int)local_c4)" ( (binary_expression "(int)prodp + (int)local_c4" (cast_expression "(int)prodp" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_c4" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "*(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13;" (assignment_expression "*(uint **)(&stack0xffffff1c + iVar5 + iVar2) = puVar13" (pointer_expression "*(uint **)(&stack0xffffff1c + iVar5 + iVar2)" * (cast_expression "(uint **)(&stack0xffffff1c + iVar5 + iVar2)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff1c + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff1c + iVar5 + iVar2" (binary_expression "&stack0xffffff1c + iVar5" (pointer_expression "&stack0xffffff1c" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "local_b8 = puVar14;" (assignment_expression "local_b8 = puVar14" identifier = identifier) ;) (expression_statement "*(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;" (assignment_expression "*(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc" (pointer_expression "*(uint *)(&stack0xffffff18 + iVar5 + iVar2)" * (cast_expression "(uint *)(&stack0xffffff18 + iVar5 + iVar2)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff18 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar5 + iVar2" (binary_expression "&stack0xffffff18 + iVar5" (pointer_expression "&stack0xffffff18" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14;" (assignment_expression "*(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar14" (pointer_expression "*(uint **)(&stack0xffffff14 + iVar5 + iVar2)" * (cast_expression "(uint **)(&stack0xffffff14 + iVar5 + iVar2)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff14 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar5 + iVar2" (binary_expression "&stack0xffffff14 + iVar5" (pointer_expression "&stack0xffffff14" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "pcVar4 = (code *)pmVar11[10];" (assignment_expression "pcVar4 = (code *)pmVar11[10]" identifier = (cast_expression "(code *)pmVar11[10]" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "pmVar11[10]" identifier [ number_literal ]))) ;) (expression_statement "*(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905;" (assignment_expression "*(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x47905" (pointer_expression "*(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2)" * (cast_expression "(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff10 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar5 + iVar2" (binary_expression "&stack0xffffff10 + iVar5" (pointer_expression "&stack0xffffff10" & identifier) + identifier) + identifier) )))) = number_literal) ;) (expression_statement "(*pcVar4)();" (call_expression "(*pcVar4)()" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "uVar9 = *local_b8;" (assignment_expression "uVar9 = *local_b8" identifier = (pointer_expression "*local_b8" * identifier)) ;) (expression_statement "*local_b8 = *local_b8 + local_bc;" (assignment_expression "*local_b8 = *local_b8 + local_bc" (pointer_expression "*local_b8" * identifier) = (binary_expression "*local_b8 + local_bc" (pointer_expression "*local_b8" * identifier) + identifier)) ;) (expression_statement "puVar14 = local_b8;" (assignment_expression "puVar14 = local_b8" identifier = identifier) ;) (if_statement "if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }" if (parenthesized_expression "(CARRY4(uVar9,local_bc))" ( (call_expression "CARRY4(uVar9,local_bc)" identifier (argument_list "(uVar9,local_bc)" ( identifier , identifier ))) )) (compound_statement "{\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }" { (do_statement "do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);" do (compound_statement "{\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                }" { (expression_statement "puVar1 = puVar14 + 1;" (assignment_expression "puVar1 = puVar14 + 1" identifier = (binary_expression "puVar14 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar14 = puVar14 + 1;" (assignment_expression "puVar14 = puVar14 + 1" identifier = (binary_expression "puVar14 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "prodp = (mp_ptr)((int)prodp + (int)local_a8);" (assignment_expression "prodp = (mp_ptr)((int)prodp + (int)local_a8)" identifier = (call_expression "(mp_ptr)((int)prodp + (int)local_a8)" (parenthesized_expression "(mp_ptr)" ( identifier )) (argument_list "((int)prodp + (int)local_a8)" ( (binary_expression "(int)prodp + (int)local_a8" (cast_expression "(int)prodp" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_a8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) }) while (parenthesized_expression "((int)local_c8 <= (int)local_ac)" ( (binary_expression "(int)local_c8 <= (int)local_ac" (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier) <= (cast_expression "(int)local_ac" ( (type_descriptor "int" primitive_type) ) identifier)) )) ;) })) (expression_statement "pmVar11 = local_ac;" (assignment_expression "pmVar11 = local_ac" identifier = identifier) ;) (if_statement "if ((int)local_ac * 4 < (int)local_d0) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = pmVar11;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47cd2;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else if ((int)local_ac * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }" if (parenthesized_expression "((int)local_ac * 4 < (int)local_d0)" ( (binary_expression "(int)local_ac * 4 < (int)local_d0" (binary_expression "(int)local_ac * 4" (cast_expression "(int)local_ac" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) < (cast_expression "(int)local_d0" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = pmVar11;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47cd2;\n            __gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }" { (expression_statement "*(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;" (assignment_expression "*(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0" (pointer_expression "*(void **)(&stack0xffffff18 + iVar5 + iVar2)" * (cast_expression "(void **)(&stack0xffffff18 + iVar5 + iVar2)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff18 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar5 + iVar2" (binary_expression "&stack0xffffff18 + iVar5" (pointer_expression "&stack0xffffff18" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;" (assignment_expression "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn" (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar5 + iVar2" (binary_expression "&stack0xffffff14 + iVar5" (pointer_expression "&stack0xffffff14" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;" (assignment_expression "*(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4" (pointer_expression "*(uint **)(&stack0xffffff10 + iVar5 + iVar2)" * (cast_expression "(uint **)(&stack0xffffff10 + iVar5 + iVar2)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff10 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar5 + iVar2" (binary_expression "&stack0xffffff10 + iVar5" (pointer_expression "&stack0xffffff10" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = pmVar11;" (assignment_expression "*(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = pmVar11" (pointer_expression "*(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2)" * (cast_expression "(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff0c + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar5 + iVar2" (binary_expression "&stack0xffffff0c + iVar5" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;" (assignment_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4" (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;" (assignment_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0" (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x20" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47cd2;" (assignment_expression "*(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47cd2" (pointer_expression "*(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10)" ( (binary_expression "(int)amStackY_8010 + iVar5 + iVar2 + 0x7f10" (binary_expression "(int)amStackY_8010 + iVar5 + iVar2" (binary_expression "(int)amStackY_8010 + iVar5" (cast_expression "(int)amStackY_8010" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));" (call_expression "__gmpn_toom22_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2))" identifier (argument_list "(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2))" ( (pointer_expression "*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" * (cast_expression "(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x20" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff0c + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar5 + iVar2" (binary_expression "&stack0xffffff0c + iVar5" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) + identifier) )))) , (pointer_expression "*(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2)" * (cast_expression "(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff10 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar5 + iVar2" (binary_expression "&stack0xffffff10 + iVar5" (pointer_expression "&stack0xffffff10" & identifier) + identifier) + identifier) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar5 + iVar2" (binary_expression "&stack0xffffff14 + iVar5" (pointer_expression "&stack0xffffff14" & identifier) + identifier) + identifier) )))) , (pointer_expression "*(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2)" * (cast_expression "(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff18 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar5 + iVar2" (binary_expression "&stack0xffffff18 + iVar5" (pointer_expression "&stack0xffffff18" & identifier) + identifier) + identifier) )))) ))) ;) }) (else_clause "else if ((int)local_ac * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }" else (if_statement "if ((int)local_ac * 4 < vn * 7) {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }\n          else {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }" if (parenthesized_expression "((int)local_ac * 4 < vn * 7)" ( (binary_expression "(int)local_ac * 4 < vn * 7" (binary_expression "(int)local_ac * 4" (cast_expression "(int)local_ac" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) < (binary_expression "vn * 7" identifier * number_literal)) )) (compound_statement "{\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;\n            __gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }" { (expression_statement "*(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;" (assignment_expression "*(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0" (pointer_expression "*(void **)(&stack0xffffff18 + iVar5 + iVar2)" * (cast_expression "(void **)(&stack0xffffff18 + iVar5 + iVar2)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff18 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar5 + iVar2" (binary_expression "&stack0xffffff18 + iVar5" (pointer_expression "&stack0xffffff18" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;" (assignment_expression "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn" (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar5 + iVar2" (binary_expression "&stack0xffffff14 + iVar5" (pointer_expression "&stack0xffffff14" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;" (assignment_expression "*(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4" (pointer_expression "*(uint **)(&stack0xffffff10 + iVar5 + iVar2)" * (cast_expression "(uint **)(&stack0xffffff10 + iVar5 + iVar2)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff10 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar5 + iVar2" (binary_expression "&stack0xffffff10 + iVar5" (pointer_expression "&stack0xffffff10" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;" (assignment_expression "*(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac" (pointer_expression "*(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2)" * (cast_expression "(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff0c + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar5 + iVar2" (binary_expression "&stack0xffffff0c + iVar5" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;" (assignment_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4" (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;" (assignment_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0" (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x20" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987;" (assignment_expression "*(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47987" (pointer_expression "*(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10)" ( (binary_expression "(int)amStackY_8010 + iVar5 + iVar2 + 0x7f10" (binary_expression "(int)amStackY_8010 + iVar5 + iVar2" (binary_expression "(int)amStackY_8010 + iVar5" (cast_expression "(int)amStackY_8010" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));" (call_expression "__gmpn_toom32_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2))" identifier (argument_list "(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2))" ( (pointer_expression "*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" * (cast_expression "(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x20" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff0c + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar5 + iVar2" (binary_expression "&stack0xffffff0c + iVar5" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) + identifier) )))) , (pointer_expression "*(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2)" * (cast_expression "(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff10 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar5 + iVar2" (binary_expression "&stack0xffffff10 + iVar5" (pointer_expression "&stack0xffffff10" & identifier) + identifier) + identifier) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar5 + iVar2" (binary_expression "&stack0xffffff14 + iVar5" (pointer_expression "&stack0xffffff14" & identifier) + identifier) + identifier) )))) , (pointer_expression "*(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2)" * (cast_expression "(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff18 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar5 + iVar2" (binary_expression "&stack0xffffff18 + iVar5" (pointer_expression "&stack0xffffff18" & identifier) + identifier) + identifier) )))) ))) ;) }) (else_clause "else {\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }" else (compound_statement "{\n            *(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;\n            *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;\n            *(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;\n            *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;\n            *(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;\n            __gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));\n          }" { (expression_statement "*(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0;" (assignment_expression "*(void **)(&stack0xffffff18 + iVar5 + iVar2) = local_c0" (pointer_expression "*(void **)(&stack0xffffff18 + iVar5 + iVar2)" * (cast_expression "(void **)(&stack0xffffff18 + iVar5 + iVar2)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff18 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar5 + iVar2" (binary_expression "&stack0xffffff18 + iVar5" (pointer_expression "&stack0xffffff18" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn;" (assignment_expression "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2) = vn" (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar5 + iVar2" (binary_expression "&stack0xffffff14 + iVar5" (pointer_expression "&stack0xffffff14" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4;" (assignment_expression "*(uint **)(&stack0xffffff10 + iVar5 + iVar2) = local_a4" (pointer_expression "*(uint **)(&stack0xffffff10 + iVar5 + iVar2)" * (cast_expression "(uint **)(&stack0xffffff10 + iVar5 + iVar2)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff10 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar5 + iVar2" (binary_expression "&stack0xffffff10 + iVar5" (pointer_expression "&stack0xffffff10" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac;" (assignment_expression "*(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2) = local_ac" (pointer_expression "*(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2)" * (cast_expression "(mp_srcptr *)(&stack0xffffff0c + iVar5 + iVar2)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff0c + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar5 + iVar2" (binary_expression "&stack0xffffff0c + iVar5" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4;" (assignment_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c) = local_b4" (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0;" (assignment_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20) = local_b0" (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x20" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7;" (assignment_expression "*(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10) = 0x47ca7" (pointer_expression "*(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)amStackY_8010 + iVar5 + iVar2 + 0x7f10)" ( (binary_expression "(int)amStackY_8010 + iVar5 + iVar2 + 0x7f10" (binary_expression "(int)amStackY_8010 + iVar5 + iVar2" (binary_expression "(int)amStackY_8010 + iVar5" (cast_expression "(int)amStackY_8010" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2));" (call_expression "__gmpn_toom42_mul(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2))" identifier (argument_list "(*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2))" ( (pointer_expression "*(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" * (cast_expression "(mp_ptr *)(auStack_dc + iVar5 + iVar2 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x20" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar5 + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar5 + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier) + number_literal) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff0c + iVar5 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff0c + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar5 + iVar2" (binary_expression "&stack0xffffff0c + iVar5" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) + identifier) )))) , (pointer_expression "*(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2)" * (cast_expression "(mp_srcptr *)(&stack0xffffff10 + iVar5 + iVar2)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff10 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar5 + iVar2" (binary_expression "&stack0xffffff10 + iVar5" (pointer_expression "&stack0xffffff10" & identifier) + identifier) + identifier) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar5 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar5 + iVar2" (binary_expression "&stack0xffffff14 + iVar5" (pointer_expression "&stack0xffffff14" & identifier) + identifier) + identifier) )))) , (pointer_expression "*(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2)" * (cast_expression "(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff18 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar5 + iVar2" (binary_expression "&stack0xffffff18 + iVar5" (pointer_expression "&stack0xffffff18" & identifier) + identifier) + identifier) )))) ))) ;) }))))) (expression_statement "pmVar11 = local_a0;" (assignment_expression "pmVar11 = local_a0" identifier = identifier) ;) (expression_statement "*(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn;" (assignment_expression "*(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2) = vn" (pointer_expression "*(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff20 + iVar5 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff20 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff20 + iVar5 + iVar2" (binary_expression "&stack0xffffff20 + iVar5" (pointer_expression "&stack0xffffff20" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0;" (assignment_expression "*(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_b0" (pointer_expression "*(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2)" * (cast_expression "(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff1c + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff1c + iVar5 + iVar2" (binary_expression "&stack0xffffff1c + iVar5" (pointer_expression "&stack0xffffff1c" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp;" (assignment_expression "*(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2) = prodp" (pointer_expression "*(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2)" * (cast_expression "(mp_ptr *)(&stack0xffffff18 + iVar5 + iVar2)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff18 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar5 + iVar2" (binary_expression "&stack0xffffff18 + iVar5" (pointer_expression "&stack0xffffff18" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp;" (assignment_expression "*(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2) = prodp" (pointer_expression "*(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2)" * (cast_expression "(mp_ptr *)(&stack0xffffff14 + iVar5 + iVar2)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar5 + iVar2" (binary_expression "&stack0xffffff14 + iVar5" (pointer_expression "&stack0xffffff14" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "pcVar4 = (code *)*pmVar11;" (assignment_expression "pcVar4 = (code *)*pmVar11" identifier = (cast_expression "(code *)*pmVar11" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*pmVar11" * identifier))) ;) (expression_statement "*(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x4799b;" (assignment_expression "*(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x4799b" (pointer_expression "*(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2)" * (cast_expression "(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff10 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar5 + iVar2" (binary_expression "&stack0xffffff10 + iVar5" (pointer_expression "&stack0xffffff10" & identifier) + identifier) + identifier) )))) = number_literal) ;) (expression_statement "local_a4 = (uint *)(*pcVar4)();" (assignment_expression "local_a4 = (uint *)(*pcVar4)()" identifier = (cast_expression "(uint *)(*pcVar4)()" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*pcVar4)()" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "()" ( ))))) ;) (expression_statement "pmVar11 = local_a0;" (assignment_expression "pmVar11 = local_a0" identifier = identifier) ;) (expression_statement "puVar13 = (uint *)((int)local_c4 + (int)prodp);" (assignment_expression "puVar13 = (uint *)((int)local_c4 + (int)prodp)" identifier = (cast_expression "(uint *)((int)local_c4 + (int)prodp)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_c4 + (int)prodp)" ( (binary_expression "(int)local_c4 + (int)prodp" (cast_expression "(int)local_c4" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)prodp" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "*(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_ac;" (assignment_expression "*(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2) = local_ac" (pointer_expression "*(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2)" * (cast_expression "(mp_srcptr *)(&stack0xffffff1c + iVar5 + iVar2)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff1c + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff1c + iVar5 + iVar2" (binary_expression "&stack0xffffff1c + iVar5" (pointer_expression "&stack0xffffff1c" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc;" (assignment_expression "*(uint *)(&stack0xffffff18 + iVar5 + iVar2) = local_cc" (pointer_expression "*(uint *)(&stack0xffffff18 + iVar5 + iVar2)" * (cast_expression "(uint *)(&stack0xffffff18 + iVar5 + iVar2)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff18 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar5 + iVar2" (binary_expression "&stack0xffffff18 + iVar5" (pointer_expression "&stack0xffffff18" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "*(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar13;" (assignment_expression "*(uint **)(&stack0xffffff14 + iVar5 + iVar2) = puVar13" (pointer_expression "*(uint **)(&stack0xffffff14 + iVar5 + iVar2)" * (cast_expression "(uint **)(&stack0xffffff14 + iVar5 + iVar2)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff14 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar5 + iVar2" (binary_expression "&stack0xffffff14 + iVar5" (pointer_expression "&stack0xffffff14" & identifier) + identifier) + identifier) )))) = identifier) ;) (expression_statement "pcVar4 = (code *)pmVar11[10];" (assignment_expression "pcVar4 = (code *)pmVar11[10]" identifier = (cast_expression "(code *)pmVar11[10]" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "pmVar11[10]" identifier [ number_literal ]))) ;) (expression_statement "*(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x479c2;" (assignment_expression "*(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2) = 0x479c2" (pointer_expression "*(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2)" * (cast_expression "(undefined4 *)(&stack0xffffff10 + iVar5 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff10 + iVar5 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar5 + iVar2" (binary_expression "&stack0xffffff10 + iVar5" (pointer_expression "&stack0xffffff10" & identifier) + identifier) + identifier) )))) = number_literal) ;) (expression_statement "(*pcVar4)();" (call_expression "(*pcVar4)()" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + (int)local_a4;" (assignment_expression "*puVar13 = *puVar13 + (int)local_a4" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + (int)local_a4" (pointer_expression "*puVar13" * identifier) + (cast_expression "(int)local_a4" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (CARRY4(uVar9,(uint)local_a4)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }" if (parenthesized_expression "(CARRY4(uVar9,(uint)local_a4))" ( (call_expression "CARRY4(uVar9,(uint)local_a4)" identifier (argument_list "(uVar9,(uint)local_a4)" ( identifier , (cast_expression "(uint)local_a4" ( (type_descriptor "uint" type_identifier) ) identifier) ))) )) (compound_statement "{\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }" { (do_statement "do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);" do (compound_statement "{\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            }" { (expression_statement "puVar14 = puVar13 + 1;" (assignment_expression "puVar14 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar14;" (assignment_expression "uVar9 = *puVar14" identifier = (pointer_expression "*puVar14" * identifier)) ;) (expression_statement "*puVar14 = *puVar14 + 1;" (assignment_expression "*puVar14 = *puVar14 + 1" (pointer_expression "*puVar14" * identifier) = (binary_expression "*puVar14 + 1" (pointer_expression "*puVar14" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "local_a0 = (mp_srcptr)(vn + (int)local_ac);" (assignment_expression "local_a0 = (mp_srcptr)(vn + (int)local_ac)" identifier = (call_expression "(mp_srcptr)(vn + (int)local_ac)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(vn + (int)local_ac)" ( (binary_expression "vn + (int)local_ac" identifier + (cast_expression "(int)local_ac" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "puVar16 = auStack_dc + iVar5 + iVar2;" (assignment_expression "puVar16 = auStack_dc + iVar5 + iVar2" identifier = (binary_expression "auStack_dc + iVar5 + iVar2" (binary_expression "auStack_dc + iVar5" identifier + identifier) + identifier)) ;) }))) (goto_statement "goto LAB_000471aa;" goto statement_identifier ;) }))) (expression_statement "local_ac = (mp_srcptr)(un + vn);" (assignment_expression "local_ac = (mp_srcptr)(un + vn)" identifier = (call_expression "(mp_srcptr)(un + vn)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(un + vn)" ( (binary_expression "un + vn" identifier + identifier) )))) ;) (if_statement "if ((3999 < (int)local_ac) && (local_a8 = (mp_srcptr)(vn * 3), 1999 < (int)local_a8)) {\n        uVar9 = vn * 8;\n        if (uVar9 - un == 0 || (int)uVar9 < un) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_bc = uVar9;\n          local_b0 = up;\n          local_ac = (mp_srcptr)__gmp_tmp_reentrant_alloc(&__tmp_marker,(vn * 9 >> 1) << 2);\n          amStackY_8010[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul(prodp,local_b0,(mp_size_t)local_a8,local_a4,vn);\n          local_c0 = (void *)(vn * 4);\n          local_c8 = (uint *)(vn * -3);\n          puVar13 = (uint *)((int)local_c8 + un);\n          local_b4 = (mp_srcptr)((int)local_a8 * 4);\n          prodp = prodp + (int)local_a8;\n          local_b0 = local_b0 + (int)local_a8;\n          local_cc = local_bc - vn;\n          if ((int)puVar13 * 2 < (int)local_cc) {\n            local_c4 = local_ac + vn;\n          }\n          else {\n            local_c4 = local_ac + vn;\n            local_b8 = puVar13;\n            do {\n              amStackY_8010[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn);\n              puVar13 = (uint *)((int)puVar13 + (int)local_c8);\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4);\n              local_bc = (*(code *)*local_a0)();\n              local_b8 = (uint *)((int)prodp + (int)local_c0);\n              (*(code *)local_a0[10])();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_b4);\n            } while (local_cc == (int)puVar13 * 2 ||\n                     SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0)\n            ;\n          }\n          local_b8 = puVar13;\n          if ((int)local_b8 < vn) {\n            amStackY_8010[0x1fc4] = 0x473bd;\n            __gmpn_mul(local_ac,local_a4,vn,local_b0,(mp_size_t)local_b8);\n          }\n          else {\n            amStackY_8010[0x1fc4] = 0x47d73;\n            __gmpn_mul(local_ac,local_b0,(mp_size_t)local_b8,local_a4,vn);\n          }\n          local_a8 = (mp_srcptr)(*(code *)*local_a0)();\n          local_a4 = (uint *)((int)local_c0 + (int)prodp);\n          (*(code *)local_a0[10])();\n          uVar9 = *local_a4;\n          *local_a4 = *local_a4 + (int)local_a8;\n          puVar13 = local_a4;\n          if (CARRY4(uVar9,(uint)local_a8)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            __gmp_tmp_reentrant_free(__tmp_marker);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_b8);\n          puVar16 = auStack_dc;\n        }\n        else {\n          amStackY_8010[0x1fc4] = 0x47c6c;\n          __gmpn_nussbaumer_mul(prodp,up,un,local_a4,vn);\n          local_a0 = local_ac;\n        }\n        goto LAB_000471aa;\n      }" if (parenthesized_expression "((3999 < (int)local_ac) && (local_a8 = (mp_srcptr)(vn * 3), 1999 < (int)local_a8))" ( (binary_expression "(3999 < (int)local_ac) && (local_a8 = (mp_srcptr)(vn * 3), 1999 < (int)local_a8)" (parenthesized_expression "(3999 < (int)local_ac)" ( (binary_expression "3999 < (int)local_ac" number_literal < (cast_expression "(int)local_ac" ( (type_descriptor "int" primitive_type) ) identifier)) )) && (parenthesized_expression "(local_a8 = (mp_srcptr)(vn * 3), 1999 < (int)local_a8)" ( (comma_expression "local_a8 = (mp_srcptr)(vn * 3), 1999 < (int)local_a8" (assignment_expression "local_a8 = (mp_srcptr)(vn * 3)" identifier = (call_expression "(mp_srcptr)(vn * 3)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(vn * 3)" ( (binary_expression "vn * 3" identifier * number_literal) )))) , (binary_expression "1999 < (int)local_a8" number_literal < (cast_expression "(int)local_a8" ( (type_descriptor "int" primitive_type) ) identifier))) ))) )) (compound_statement "{\n        uVar9 = vn * 8;\n        if (uVar9 - un == 0 || (int)uVar9 < un) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_bc = uVar9;\n          local_b0 = up;\n          local_ac = (mp_srcptr)__gmp_tmp_reentrant_alloc(&__tmp_marker,(vn * 9 >> 1) << 2);\n          amStackY_8010[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul(prodp,local_b0,(mp_size_t)local_a8,local_a4,vn);\n          local_c0 = (void *)(vn * 4);\n          local_c8 = (uint *)(vn * -3);\n          puVar13 = (uint *)((int)local_c8 + un);\n          local_b4 = (mp_srcptr)((int)local_a8 * 4);\n          prodp = prodp + (int)local_a8;\n          local_b0 = local_b0 + (int)local_a8;\n          local_cc = local_bc - vn;\n          if ((int)puVar13 * 2 < (int)local_cc) {\n            local_c4 = local_ac + vn;\n          }\n          else {\n            local_c4 = local_ac + vn;\n            local_b8 = puVar13;\n            do {\n              amStackY_8010[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn);\n              puVar13 = (uint *)((int)puVar13 + (int)local_c8);\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4);\n              local_bc = (*(code *)*local_a0)();\n              local_b8 = (uint *)((int)prodp + (int)local_c0);\n              (*(code *)local_a0[10])();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_b4);\n            } while (local_cc == (int)puVar13 * 2 ||\n                     SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0)\n            ;\n          }\n          local_b8 = puVar13;\n          if ((int)local_b8 < vn) {\n            amStackY_8010[0x1fc4] = 0x473bd;\n            __gmpn_mul(local_ac,local_a4,vn,local_b0,(mp_size_t)local_b8);\n          }\n          else {\n            amStackY_8010[0x1fc4] = 0x47d73;\n            __gmpn_mul(local_ac,local_b0,(mp_size_t)local_b8,local_a4,vn);\n          }\n          local_a8 = (mp_srcptr)(*(code *)*local_a0)();\n          local_a4 = (uint *)((int)local_c0 + (int)prodp);\n          (*(code *)local_a0[10])();\n          uVar9 = *local_a4;\n          *local_a4 = *local_a4 + (int)local_a8;\n          puVar13 = local_a4;\n          if (CARRY4(uVar9,(uint)local_a8)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            __gmp_tmp_reentrant_free(__tmp_marker);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_b8);\n          puVar16 = auStack_dc;\n        }\n        else {\n          amStackY_8010[0x1fc4] = 0x47c6c;\n          __gmpn_nussbaumer_mul(prodp,up,un,local_a4,vn);\n          local_a0 = local_ac;\n        }\n        goto LAB_000471aa;\n      }" { (expression_statement "uVar9 = vn * 8;" (assignment_expression "uVar9 = vn * 8" identifier = (binary_expression "vn * 8" identifier * number_literal)) ;) (if_statement "if (uVar9 - un == 0 || (int)uVar9 < un) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_bc = uVar9;\n          local_b0 = up;\n          local_ac = (mp_srcptr)__gmp_tmp_reentrant_alloc(&__tmp_marker,(vn * 9 >> 1) << 2);\n          amStackY_8010[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul(prodp,local_b0,(mp_size_t)local_a8,local_a4,vn);\n          local_c0 = (void *)(vn * 4);\n          local_c8 = (uint *)(vn * -3);\n          puVar13 = (uint *)((int)local_c8 + un);\n          local_b4 = (mp_srcptr)((int)local_a8 * 4);\n          prodp = prodp + (int)local_a8;\n          local_b0 = local_b0 + (int)local_a8;\n          local_cc = local_bc - vn;\n          if ((int)puVar13 * 2 < (int)local_cc) {\n            local_c4 = local_ac + vn;\n          }\n          else {\n            local_c4 = local_ac + vn;\n            local_b8 = puVar13;\n            do {\n              amStackY_8010[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn);\n              puVar13 = (uint *)((int)puVar13 + (int)local_c8);\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4);\n              local_bc = (*(code *)*local_a0)();\n              local_b8 = (uint *)((int)prodp + (int)local_c0);\n              (*(code *)local_a0[10])();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_b4);\n            } while (local_cc == (int)puVar13 * 2 ||\n                     SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0)\n            ;\n          }\n          local_b8 = puVar13;\n          if ((int)local_b8 < vn) {\n            amStackY_8010[0x1fc4] = 0x473bd;\n            __gmpn_mul(local_ac,local_a4,vn,local_b0,(mp_size_t)local_b8);\n          }\n          else {\n            amStackY_8010[0x1fc4] = 0x47d73;\n            __gmpn_mul(local_ac,local_b0,(mp_size_t)local_b8,local_a4,vn);\n          }\n          local_a8 = (mp_srcptr)(*(code *)*local_a0)();\n          local_a4 = (uint *)((int)local_c0 + (int)prodp);\n          (*(code *)local_a0[10])();\n          uVar9 = *local_a4;\n          *local_a4 = *local_a4 + (int)local_a8;\n          puVar13 = local_a4;\n          if (CARRY4(uVar9,(uint)local_a8)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            __gmp_tmp_reentrant_free(__tmp_marker);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_b8);\n          puVar16 = auStack_dc;\n        }\n        else {\n          amStackY_8010[0x1fc4] = 0x47c6c;\n          __gmpn_nussbaumer_mul(prodp,up,un,local_a4,vn);\n          local_a0 = local_ac;\n        }" if (parenthesized_expression "(uVar9 - un == 0 || (int)uVar9 < un)" ( (binary_expression "uVar9 - un == 0 || (int)uVar9 < un" (binary_expression "uVar9 - un == 0" (binary_expression "uVar9 - un" identifier - identifier) == number_literal) || (binary_expression "(int)uVar9 < un" (cast_expression "(int)uVar9" ( (type_descriptor "int" primitive_type) ) identifier) < identifier)) )) (compound_statement "{\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_bc = uVar9;\n          local_b0 = up;\n          local_ac = (mp_srcptr)__gmp_tmp_reentrant_alloc(&__tmp_marker,(vn * 9 >> 1) << 2);\n          amStackY_8010[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul(prodp,local_b0,(mp_size_t)local_a8,local_a4,vn);\n          local_c0 = (void *)(vn * 4);\n          local_c8 = (uint *)(vn * -3);\n          puVar13 = (uint *)((int)local_c8 + un);\n          local_b4 = (mp_srcptr)((int)local_a8 * 4);\n          prodp = prodp + (int)local_a8;\n          local_b0 = local_b0 + (int)local_a8;\n          local_cc = local_bc - vn;\n          if ((int)puVar13 * 2 < (int)local_cc) {\n            local_c4 = local_ac + vn;\n          }\n          else {\n            local_c4 = local_ac + vn;\n            local_b8 = puVar13;\n            do {\n              amStackY_8010[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn);\n              puVar13 = (uint *)((int)puVar13 + (int)local_c8);\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4);\n              local_bc = (*(code *)*local_a0)();\n              local_b8 = (uint *)((int)prodp + (int)local_c0);\n              (*(code *)local_a0[10])();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_b4);\n            } while (local_cc == (int)puVar13 * 2 ||\n                     SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0)\n            ;\n          }\n          local_b8 = puVar13;\n          if ((int)local_b8 < vn) {\n            amStackY_8010[0x1fc4] = 0x473bd;\n            __gmpn_mul(local_ac,local_a4,vn,local_b0,(mp_size_t)local_b8);\n          }\n          else {\n            amStackY_8010[0x1fc4] = 0x47d73;\n            __gmpn_mul(local_ac,local_b0,(mp_size_t)local_b8,local_a4,vn);\n          }\n          local_a8 = (mp_srcptr)(*(code *)*local_a0)();\n          local_a4 = (uint *)((int)local_c0 + (int)prodp);\n          (*(code *)local_a0[10])();\n          uVar9 = *local_a4;\n          *local_a4 = *local_a4 + (int)local_a8;\n          puVar13 = local_a4;\n          if (CARRY4(uVar9,(uint)local_a8)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            __gmp_tmp_reentrant_free(__tmp_marker);\n          }\n          local_a0 = (mp_srcptr)(vn + (int)local_b8);\n          puVar16 = auStack_dc;\n        }" { (expression_statement "__tmp_marker = (tmp_reentrant_t *)0x0;" (assignment_expression "__tmp_marker = (tmp_reentrant_t *)0x0" identifier = (cast_expression "(tmp_reentrant_t *)0x0" ( (type_descriptor "tmp_reentrant_t *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_bc = uVar9;" (assignment_expression "local_bc = uVar9" identifier = identifier) ;) (expression_statement "local_b0 = up;" (assignment_expression "local_b0 = up" identifier = identifier) ;) (expression_statement "local_ac = (mp_srcptr)__gmp_tmp_reentrant_alloc(&__tmp_marker,(vn * 9 >> 1) << 2);" (assignment_expression "local_ac = (mp_srcptr)__gmp_tmp_reentrant_alloc(&__tmp_marker,(vn * 9 >> 1) << 2)" identifier = (cast_expression "(mp_srcptr)__gmp_tmp_reentrant_alloc(&__tmp_marker,(vn * 9 >> 1) << 2)" ( (type_descriptor "mp_srcptr" type_identifier) ) (call_expression "__gmp_tmp_reentrant_alloc(&__tmp_marker,(vn * 9 >> 1) << 2)" identifier (argument_list "(&__tmp_marker,(vn * 9 >> 1) << 2)" ( (pointer_expression "&__tmp_marker" & identifier) , (binary_expression "(vn * 9 >> 1) << 2" (parenthesized_expression "(vn * 9 >> 1)" ( (binary_expression "vn * 9 >> 1" (binary_expression "vn * 9" identifier * number_literal) >> number_literal) )) << number_literal) ))))) ;) (expression_statement "amStackY_8010[0x1fc4] = 0x4725a;" (assignment_expression "amStackY_8010[0x1fc4] = 0x4725a" (subscript_expression "amStackY_8010[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "__gmpn_nussbaumer_mul(prodp,local_b0,(mp_size_t)local_a8,local_a4,vn);" (call_expression "__gmpn_nussbaumer_mul(prodp,local_b0,(mp_size_t)local_a8,local_a4,vn)" identifier (argument_list "(prodp,local_b0,(mp_size_t)local_a8,local_a4,vn)" ( identifier , identifier , (cast_expression "(mp_size_t)local_a8" ( (type_descriptor "mp_size_t" type_identifier) ) identifier) , identifier , identifier ))) ;) (expression_statement "local_c0 = (void *)(vn * 4);" (assignment_expression "local_c0 = (void *)(vn * 4)" identifier = (cast_expression "(void *)(vn * 4)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(vn * 4)" ( (binary_expression "vn * 4" identifier * number_literal) )))) ;) (expression_statement "local_c8 = (uint *)(vn * -3);" (assignment_expression "local_c8 = (uint *)(vn * -3)" identifier = (cast_expression "(uint *)(vn * -3)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(vn * -3)" ( (binary_expression "vn * -3" identifier * number_literal) )))) ;) (expression_statement "puVar13 = (uint *)((int)local_c8 + un);" (assignment_expression "puVar13 = (uint *)((int)local_c8 + un)" identifier = (cast_expression "(uint *)((int)local_c8 + un)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_c8 + un)" ( (binary_expression "(int)local_c8 + un" (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) ;) (expression_statement "local_b4 = (mp_srcptr)((int)local_a8 * 4);" (assignment_expression "local_b4 = (mp_srcptr)((int)local_a8 * 4)" identifier = (call_expression "(mp_srcptr)((int)local_a8 * 4)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "((int)local_a8 * 4)" ( (binary_expression "(int)local_a8 * 4" (cast_expression "(int)local_a8" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (expression_statement "prodp = prodp + (int)local_a8;" (assignment_expression "prodp = prodp + (int)local_a8" identifier = (binary_expression "prodp + (int)local_a8" identifier + (cast_expression "(int)local_a8" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "local_b0 = local_b0 + (int)local_a8;" (assignment_expression "local_b0 = local_b0 + (int)local_a8" identifier = (binary_expression "local_b0 + (int)local_a8" identifier + (cast_expression "(int)local_a8" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "local_cc = local_bc - vn;" (assignment_expression "local_cc = local_bc - vn" identifier = (binary_expression "local_bc - vn" identifier - identifier)) ;) (if_statement "if ((int)puVar13 * 2 < (int)local_cc) {\n            local_c4 = local_ac + vn;\n          }\n          else {\n            local_c4 = local_ac + vn;\n            local_b8 = puVar13;\n            do {\n              amStackY_8010[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn);\n              puVar13 = (uint *)((int)puVar13 + (int)local_c8);\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4);\n              local_bc = (*(code *)*local_a0)();\n              local_b8 = (uint *)((int)prodp + (int)local_c0);\n              (*(code *)local_a0[10])();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_b4);\n            } while (local_cc == (int)puVar13 * 2 ||\n                     SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0)\n            ;\n          }" if (parenthesized_expression "((int)puVar13 * 2 < (int)local_cc)" ( (binary_expression "(int)puVar13 * 2 < (int)local_cc" (binary_expression "(int)puVar13 * 2" (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) < (cast_expression "(int)local_cc" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n            local_c4 = local_ac + vn;\n          }" { (expression_statement "local_c4 = local_ac + vn;" (assignment_expression "local_c4 = local_ac + vn" identifier = (binary_expression "local_ac + vn" identifier + identifier)) ;) }) (else_clause "else {\n            local_c4 = local_ac + vn;\n            local_b8 = puVar13;\n            do {\n              amStackY_8010[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn);\n              puVar13 = (uint *)((int)puVar13 + (int)local_c8);\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4);\n              local_bc = (*(code *)*local_a0)();\n              local_b8 = (uint *)((int)prodp + (int)local_c0);\n              (*(code *)local_a0[10])();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_b4);\n            } while (local_cc == (int)puVar13 * 2 ||\n                     SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0)\n            ;\n          }" else (compound_statement "{\n            local_c4 = local_ac + vn;\n            local_b8 = puVar13;\n            do {\n              amStackY_8010[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn);\n              puVar13 = (uint *)((int)puVar13 + (int)local_c8);\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4);\n              local_bc = (*(code *)*local_a0)();\n              local_b8 = (uint *)((int)prodp + (int)local_c0);\n              (*(code *)local_a0[10])();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_b4);\n            } while (local_cc == (int)puVar13 * 2 ||\n                     SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0)\n            ;\n          }" { (expression_statement "local_c4 = local_ac + vn;" (assignment_expression "local_c4 = local_ac + vn" identifier = (binary_expression "local_ac + vn" identifier + identifier)) ;) (expression_statement "local_b8 = puVar13;" (assignment_expression "local_b8 = puVar13" identifier = identifier) ;) (do_statement "do {\n              amStackY_8010[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn);\n              puVar13 = (uint *)((int)puVar13 + (int)local_c8);\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4);\n              local_bc = (*(code *)*local_a0)();\n              local_b8 = (uint *)((int)prodp + (int)local_c0);\n              (*(code *)local_a0[10])();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_b4);\n            } while (local_cc == (int)puVar13 * 2 ||\n                     SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0)\n            ;" do (compound_statement "{\n              amStackY_8010[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn);\n              puVar13 = (uint *)((int)puVar13 + (int)local_c8);\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4);\n              local_bc = (*(code *)*local_a0)();\n              local_b8 = (uint *)((int)prodp + (int)local_c0);\n              (*(code *)local_a0[10])();\n              uVar9 = *local_b8;\n              *local_b8 = *local_b8 + local_bc;\n              puVar14 = local_b8;\n              if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              prodp = (mp_ptr)((int)prodp + (int)local_b4);\n            }" { (expression_statement "amStackY_8010[0x1fc4] = 0x47303;" (assignment_expression "amStackY_8010[0x1fc4] = 0x47303" (subscript_expression "amStackY_8010[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "__gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn);" (call_expression "__gmpn_nussbaumer_mul(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn)" identifier (argument_list "(local_ac,local_b0,(mp_size_t)local_a8,local_a4,vn)" ( identifier , identifier , (cast_expression "(mp_size_t)local_a8" ( (type_descriptor "mp_size_t" type_identifier) ) identifier) , identifier , identifier ))) ;) (expression_statement "puVar13 = (uint *)((int)puVar13 + (int)local_c8);" (assignment_expression "puVar13 = (uint *)((int)puVar13 + (int)local_c8)" identifier = (cast_expression "(uint *)((int)puVar13 + (int)local_c8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar13 + (int)local_c8)" ( (binary_expression "(int)puVar13 + (int)local_c8" (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4);" (assignment_expression "local_b0 = (mp_srcptr)((int)local_b0 + (int)local_b4)" identifier = (call_expression "(mp_srcptr)((int)local_b0 + (int)local_b4)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "((int)local_b0 + (int)local_b4)" ( (binary_expression "(int)local_b0 + (int)local_b4" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_bc = (*(code *)*local_a0)();" (assignment_expression "local_bc = (*(code *)*local_a0)()" identifier = (call_expression "(*(code *)*local_a0)()" (parenthesized_expression "(*(code *)*local_a0)" ( (pointer_expression "*(code *)*local_a0" * (cast_expression "(code *)*local_a0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_a0" * identifier))) )) (argument_list "()" ( )))) ;) (expression_statement "local_b8 = (uint *)((int)prodp + (int)local_c0);" (assignment_expression "local_b8 = (uint *)((int)prodp + (int)local_c0)" identifier = (cast_expression "(uint *)((int)prodp + (int)local_c0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)prodp + (int)local_c0)" ( (binary_expression "(int)prodp + (int)local_c0" (cast_expression "(int)prodp" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_c0" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "(*(code *)local_a0[10])();" (call_expression "(*(code *)local_a0[10])()" (parenthesized_expression "(*(code *)local_a0[10])" ( (pointer_expression "*(code *)local_a0[10]" * (cast_expression "(code *)local_a0[10]" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "local_a0[10]" identifier [ number_literal ]))) )) (argument_list "()" ( ))) ;) (expression_statement "uVar9 = *local_b8;" (assignment_expression "uVar9 = *local_b8" identifier = (pointer_expression "*local_b8" * identifier)) ;) (expression_statement "*local_b8 = *local_b8 + local_bc;" (assignment_expression "*local_b8 = *local_b8 + local_bc" (pointer_expression "*local_b8" * identifier) = (binary_expression "*local_b8 + local_bc" (pointer_expression "*local_b8" * identifier) + identifier)) ;) (expression_statement "puVar14 = local_b8;" (assignment_expression "puVar14 = local_b8" identifier = identifier) ;) (if_statement "if (CARRY4(uVar9,local_bc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }" if (parenthesized_expression "(CARRY4(uVar9,local_bc))" ( (call_expression "CARRY4(uVar9,local_bc)" identifier (argument_list "(uVar9,local_bc)" ( identifier , identifier ))) )) (compound_statement "{\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }" { (do_statement "do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);" do (compound_statement "{\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                }" { (expression_statement "puVar1 = puVar14 + 1;" (assignment_expression "puVar1 = puVar14 + 1" identifier = (binary_expression "puVar14 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar14 = puVar14 + 1;" (assignment_expression "puVar14 = puVar14 + 1" identifier = (binary_expression "puVar14 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "prodp = (mp_ptr)((int)prodp + (int)local_b4);" (assignment_expression "prodp = (mp_ptr)((int)prodp + (int)local_b4)" identifier = (call_expression "(mp_ptr)((int)prodp + (int)local_b4)" (parenthesized_expression "(mp_ptr)" ( identifier )) (argument_list "((int)prodp + (int)local_b4)" ( (binary_expression "(int)prodp + (int)local_b4" (cast_expression "(int)prodp" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) }) while (parenthesized_expression "(local_cc == (int)puVar13 * 2 ||\n                     SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0)" ( (binary_expression "local_cc == (int)puVar13 * 2 ||\n                     SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0" (binary_expression "local_cc == (int)puVar13 * 2" identifier == (binary_expression "(int)puVar13 * 2" (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) || (binary_expression "SBORROW4(local_cc,(int)puVar13 * 2) != (int)(local_cc + (int)puVar13 * -2) < 0" (call_expression "SBORROW4(local_cc,(int)puVar13 * 2)" identifier (argument_list "(local_cc,(int)puVar13 * 2)" ( identifier , (binary_expression "(int)puVar13 * 2" (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ))) != (binary_expression "(int)(local_cc + (int)puVar13 * -2) < 0" (cast_expression "(int)(local_cc + (int)puVar13 * -2)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(local_cc + (int)puVar13 * -2)" ( (binary_expression "local_cc + (int)puVar13 * -2" identifier + (binary_expression "(int)puVar13 * -2" (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ))) < number_literal))) )) ;) }))) (expression_statement "local_b8 = puVar13;" (assignment_expression "local_b8 = puVar13" identifier = identifier) ;) (if_statement "if ((int)local_b8 < vn) {\n            amStackY_8010[0x1fc4] = 0x473bd;\n            __gmpn_mul(local_ac,local_a4,vn,local_b0,(mp_size_t)local_b8);\n          }\n          else {\n            amStackY_8010[0x1fc4] = 0x47d73;\n            __gmpn_mul(local_ac,local_b0,(mp_size_t)local_b8,local_a4,vn);\n          }" if (parenthesized_expression "((int)local_b8 < vn)" ( (binary_expression "(int)local_b8 < vn" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) < identifier) )) (compound_statement "{\n            amStackY_8010[0x1fc4] = 0x473bd;\n            __gmpn_mul(local_ac,local_a4,vn,local_b0,(mp_size_t)local_b8);\n          }" { (expression_statement "amStackY_8010[0x1fc4] = 0x473bd;" (assignment_expression "amStackY_8010[0x1fc4] = 0x473bd" (subscript_expression "amStackY_8010[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "__gmpn_mul(local_ac,local_a4,vn,local_b0,(mp_size_t)local_b8);" (call_expression "__gmpn_mul(local_ac,local_a4,vn,local_b0,(mp_size_t)local_b8)" identifier (argument_list "(local_ac,local_a4,vn,local_b0,(mp_size_t)local_b8)" ( identifier , identifier , identifier , identifier , (cast_expression "(mp_size_t)local_b8" ( (type_descriptor "mp_size_t" type_identifier) ) identifier) ))) ;) }) (else_clause "else {\n            amStackY_8010[0x1fc4] = 0x47d73;\n            __gmpn_mul(local_ac,local_b0,(mp_size_t)local_b8,local_a4,vn);\n          }" else (compound_statement "{\n            amStackY_8010[0x1fc4] = 0x47d73;\n            __gmpn_mul(local_ac,local_b0,(mp_size_t)local_b8,local_a4,vn);\n          }" { (expression_statement "amStackY_8010[0x1fc4] = 0x47d73;" (assignment_expression "amStackY_8010[0x1fc4] = 0x47d73" (subscript_expression "amStackY_8010[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "__gmpn_mul(local_ac,local_b0,(mp_size_t)local_b8,local_a4,vn);" (call_expression "__gmpn_mul(local_ac,local_b0,(mp_size_t)local_b8,local_a4,vn)" identifier (argument_list "(local_ac,local_b0,(mp_size_t)local_b8,local_a4,vn)" ( identifier , identifier , (cast_expression "(mp_size_t)local_b8" ( (type_descriptor "mp_size_t" type_identifier) ) identifier) , identifier , identifier ))) ;) }))) (expression_statement "local_a8 = (mp_srcptr)(*(code *)*local_a0)();" (assignment_expression "local_a8 = (mp_srcptr)(*(code *)*local_a0)()" identifier = (call_expression "(mp_srcptr)(*(code *)*local_a0)()" (call_expression "(mp_srcptr)(*(code *)*local_a0)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(*(code *)*local_a0)" ( (pointer_expression "*(code *)*local_a0" * (cast_expression "(code *)*local_a0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_a0" * identifier))) ))) (argument_list "()" ( )))) ;) (expression_statement "local_a4 = (uint *)((int)local_c0 + (int)prodp);" (assignment_expression "local_a4 = (uint *)((int)local_c0 + (int)prodp)" identifier = (cast_expression "(uint *)((int)local_c0 + (int)prodp)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_c0 + (int)prodp)" ( (binary_expression "(int)local_c0 + (int)prodp" (cast_expression "(int)local_c0" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)prodp" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "(*(code *)local_a0[10])();" (call_expression "(*(code *)local_a0[10])()" (parenthesized_expression "(*(code *)local_a0[10])" ( (pointer_expression "*(code *)local_a0[10]" * (cast_expression "(code *)local_a0[10]" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "local_a0[10]" identifier [ number_literal ]))) )) (argument_list "()" ( ))) ;) (expression_statement "uVar9 = *local_a4;" (assignment_expression "uVar9 = *local_a4" identifier = (pointer_expression "*local_a4" * identifier)) ;) (expression_statement "*local_a4 = *local_a4 + (int)local_a8;" (assignment_expression "*local_a4 = *local_a4 + (int)local_a8" (pointer_expression "*local_a4" * identifier) = (binary_expression "*local_a4 + (int)local_a8" (pointer_expression "*local_a4" * identifier) + (cast_expression "(int)local_a8" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "puVar13 = local_a4;" (assignment_expression "puVar13 = local_a4" identifier = identifier) ;) (if_statement "if (CARRY4(uVar9,(uint)local_a8)) {\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }" if (parenthesized_expression "(CARRY4(uVar9,(uint)local_a8))" ( (call_expression "CARRY4(uVar9,(uint)local_a8)" identifier (argument_list "(uVar9,(uint)local_a8)" ( identifier , (cast_expression "(uint)local_a8" ( (type_descriptor "uint" type_identifier) ) identifier) ))) )) (compound_statement "{\n            do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }" { (do_statement "do {\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);" do (compound_statement "{\n              puVar14 = puVar13 + 1;\n              uVar9 = *puVar14;\n              *puVar14 = *puVar14 + 1;\n              puVar13 = puVar13 + 1;\n            }" { (expression_statement "puVar14 = puVar13 + 1;" (assignment_expression "puVar14 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar14;" (assignment_expression "uVar9 = *puVar14" identifier = (pointer_expression "*puVar14" * identifier)) ;) (expression_statement "*puVar14 = *puVar14 + 1;" (assignment_expression "*puVar14 = *puVar14 + 1" (pointer_expression "*puVar14" * identifier) = (binary_expression "*puVar14 + 1" (pointer_expression "*puVar14" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (if_statement "if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            __gmp_tmp_reentrant_free(__tmp_marker);\n          }" if (parenthesized_expression "(__tmp_marker != (tmp_reentrant_t *)0x0)" ( (binary_expression "__tmp_marker != (tmp_reentrant_t *)0x0" identifier != (cast_expression "(tmp_reentrant_t *)0x0" ( (type_descriptor "tmp_reentrant_t *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            __gmp_tmp_reentrant_free(__tmp_marker);\n          }" { (expression_statement "__gmp_tmp_reentrant_free(__tmp_marker);" (call_expression "__gmp_tmp_reentrant_free(__tmp_marker)" identifier (argument_list "(__tmp_marker)" ( identifier ))) ;) })) (expression_statement "local_a0 = (mp_srcptr)(vn + (int)local_b8);" (assignment_expression "local_a0 = (mp_srcptr)(vn + (int)local_b8)" identifier = (call_expression "(mp_srcptr)(vn + (int)local_b8)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(vn + (int)local_b8)" ( (binary_expression "vn + (int)local_b8" identifier + (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "puVar16 = auStack_dc;" (assignment_expression "puVar16 = auStack_dc" identifier = identifier) ;) }) (else_clause "else {\n          amStackY_8010[0x1fc4] = 0x47c6c;\n          __gmpn_nussbaumer_mul(prodp,up,un,local_a4,vn);\n          local_a0 = local_ac;\n        }" else (compound_statement "{\n          amStackY_8010[0x1fc4] = 0x47c6c;\n          __gmpn_nussbaumer_mul(prodp,up,un,local_a4,vn);\n          local_a0 = local_ac;\n        }" { (expression_statement "amStackY_8010[0x1fc4] = 0x47c6c;" (assignment_expression "amStackY_8010[0x1fc4] = 0x47c6c" (subscript_expression "amStackY_8010[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "__gmpn_nussbaumer_mul(prodp,up,un,local_a4,vn);" (call_expression "__gmpn_nussbaumer_mul(prodp,up,un,local_a4,vn)" identifier (argument_list "(prodp,up,un,local_a4,vn)" ( identifier , identifier , identifier , identifier , identifier ))) ;) (expression_statement "local_a0 = local_ac;" (assignment_expression "local_a0 = local_ac" identifier = identifier) ;) }))) (goto_statement "goto LAB_000471aa;" goto statement_identifier ;) })) (if_statement "if (299 < vn) {\n        local_a8 = (mp_srcptr)(un * 3 + 0xc);\n        if (SBORROW4((int)local_a8,vn * 4) != (int)(local_a8 + -vn) < 0) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_a0 = local_ac;\n          if (vn < 0x15e) {\n            iVar2 = -(un * 0xc + 0x9bU & 0xfffffff0);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else if (vn < 0x1c2) {\n            iVar2 = -((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else {\n            iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4;\n            uVar9 = iVar2 + 0x6dc;\n            if (uVar9 < 0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_dc + iVar2;\n              pvVar10 = (void *)((int)&local_d0 + iVar2);\n            }\n            else {\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }\n            *(void **)(puVar15 + -0xc) = pvVar10;\n            *(mp_size_t *)(puVar15 + -0x10) = vn;\n            *(uint **)(puVar15 + -0x14) = local_a4;\n            *(mp_size_t *)(puVar15 + -0x18) = un;\n            *(mp_srcptr *)(puVar15 + -0x1c) = up;\n            *(mp_ptr *)(puVar15 + -0x20) = prodp;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc));\n            puVar16 = puVar15;\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n            *(undefined4 *)(puVar16 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n          }\n          goto LAB_000471aa;\n        }\n      }" if (parenthesized_expression "(299 < vn)" ( (binary_expression "299 < vn" number_literal < identifier) )) (compound_statement "{\n        local_a8 = (mp_srcptr)(un * 3 + 0xc);\n        if (SBORROW4((int)local_a8,vn * 4) != (int)(local_a8 + -vn) < 0) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_a0 = local_ac;\n          if (vn < 0x15e) {\n            iVar2 = -(un * 0xc + 0x9bU & 0xfffffff0);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else if (vn < 0x1c2) {\n            iVar2 = -((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else {\n            iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4;\n            uVar9 = iVar2 + 0x6dc;\n            if (uVar9 < 0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_dc + iVar2;\n              pvVar10 = (void *)((int)&local_d0 + iVar2);\n            }\n            else {\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }\n            *(void **)(puVar15 + -0xc) = pvVar10;\n            *(mp_size_t *)(puVar15 + -0x10) = vn;\n            *(uint **)(puVar15 + -0x14) = local_a4;\n            *(mp_size_t *)(puVar15 + -0x18) = un;\n            *(mp_srcptr *)(puVar15 + -0x1c) = up;\n            *(mp_ptr *)(puVar15 + -0x20) = prodp;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc));\n            puVar16 = puVar15;\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n            *(undefined4 *)(puVar16 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n          }\n          goto LAB_000471aa;\n        }\n      }" { (expression_statement "local_a8 = (mp_srcptr)(un * 3 + 0xc);" (assignment_expression "local_a8 = (mp_srcptr)(un * 3 + 0xc)" identifier = (call_expression "(mp_srcptr)(un * 3 + 0xc)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(un * 3 + 0xc)" ( (binary_expression "un * 3 + 0xc" (binary_expression "un * 3" identifier * number_literal) + number_literal) )))) ;) (if_statement "if (SBORROW4((int)local_a8,vn * 4) != (int)(local_a8 + -vn) < 0) {\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_a0 = local_ac;\n          if (vn < 0x15e) {\n            iVar2 = -(un * 0xc + 0x9bU & 0xfffffff0);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else if (vn < 0x1c2) {\n            iVar2 = -((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else {\n            iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4;\n            uVar9 = iVar2 + 0x6dc;\n            if (uVar9 < 0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_dc + iVar2;\n              pvVar10 = (void *)((int)&local_d0 + iVar2);\n            }\n            else {\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }\n            *(void **)(puVar15 + -0xc) = pvVar10;\n            *(mp_size_t *)(puVar15 + -0x10) = vn;\n            *(uint **)(puVar15 + -0x14) = local_a4;\n            *(mp_size_t *)(puVar15 + -0x18) = un;\n            *(mp_srcptr *)(puVar15 + -0x1c) = up;\n            *(mp_ptr *)(puVar15 + -0x20) = prodp;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc));\n            puVar16 = puVar15;\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n            *(undefined4 *)(puVar16 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n          }\n          goto LAB_000471aa;\n        }" if (parenthesized_expression "(SBORROW4((int)local_a8,vn * 4) != (int)(local_a8 + -vn) < 0)" ( (binary_expression "SBORROW4((int)local_a8,vn * 4) != (int)(local_a8 + -vn) < 0" (call_expression "SBORROW4((int)local_a8,vn * 4)" identifier (argument_list "((int)local_a8,vn * 4)" ( (cast_expression "(int)local_a8" ( (type_descriptor "int" primitive_type) ) identifier) , (binary_expression "vn * 4" identifier * number_literal) ))) != (binary_expression "(int)(local_a8 + -vn) < 0" (cast_expression "(int)(local_a8 + -vn)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(local_a8 + -vn)" ( (binary_expression "local_a8 + -vn" identifier + (unary_expression "-vn" - identifier)) ))) < number_literal)) )) (compound_statement "{\n          __tmp_marker = (tmp_reentrant_t *)0x0;\n          local_a0 = local_ac;\n          if (vn < 0x15e) {\n            iVar2 = -(un * 0xc + 0x9bU & 0xfffffff0);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else if (vn < 0x1c2) {\n            iVar2 = -((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else {\n            iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4;\n            uVar9 = iVar2 + 0x6dc;\n            if (uVar9 < 0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_dc + iVar2;\n              pvVar10 = (void *)((int)&local_d0 + iVar2);\n            }\n            else {\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }\n            *(void **)(puVar15 + -0xc) = pvVar10;\n            *(mp_size_t *)(puVar15 + -0x10) = vn;\n            *(uint **)(puVar15 + -0x14) = local_a4;\n            *(mp_size_t *)(puVar15 + -0x18) = un;\n            *(mp_srcptr *)(puVar15 + -0x1c) = up;\n            *(mp_ptr *)(puVar15 + -0x20) = prodp;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc));\n            puVar16 = puVar15;\n          }\n          if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n            *(undefined4 *)(puVar16 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n          }\n          goto LAB_000471aa;\n        }" { (expression_statement "__tmp_marker = (tmp_reentrant_t *)0x0;" (assignment_expression "__tmp_marker = (tmp_reentrant_t *)0x0" identifier = (cast_expression "(tmp_reentrant_t *)0x0" ( (type_descriptor "tmp_reentrant_t *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_a0 = local_ac;" (assignment_expression "local_a0 = local_ac" identifier = identifier) ;) (if_statement "if (vn < 0x15e) {\n            iVar2 = -(un * 0xc + 0x9bU & 0xfffffff0);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else if (vn < 0x1c2) {\n            iVar2 = -((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else {\n            iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4;\n            uVar9 = iVar2 + 0x6dc;\n            if (uVar9 < 0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_dc + iVar2;\n              pvVar10 = (void *)((int)&local_d0 + iVar2);\n            }\n            else {\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }\n            *(void **)(puVar15 + -0xc) = pvVar10;\n            *(mp_size_t *)(puVar15 + -0x10) = vn;\n            *(uint **)(puVar15 + -0x14) = local_a4;\n            *(mp_size_t *)(puVar15 + -0x18) = un;\n            *(mp_srcptr *)(puVar15 + -0x1c) = up;\n            *(mp_ptr *)(puVar15 + -0x20) = prodp;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc));\n            puVar16 = puVar15;\n          }" if (parenthesized_expression "(vn < 0x15e)" ( (binary_expression "vn < 0x15e" identifier < number_literal) )) (compound_statement "{\n            iVar2 = -(un * 0xc + 0x9bU & 0xfffffff0);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }" { (expression_statement "iVar2 = -(un * 0xc + 0x9bU & 0xfffffff0);" (assignment_expression "iVar2 = -(un * 0xc + 0x9bU & 0xfffffff0)" identifier = (unary_expression "-(un * 0xc + 0x9bU & 0xfffffff0)" - (parenthesized_expression "(un * 0xc + 0x9bU & 0xfffffff0)" ( (binary_expression "un * 0xc + 0x9bU & 0xfffffff0" (binary_expression "un * 0xc + 0x9bU" (binary_expression "un * 0xc" identifier * number_literal) + number_literal) & number_literal) )))) ;) (expression_statement "puVar16 = auStack_dc + iVar2;" (assignment_expression "puVar16 = auStack_dc + iVar2" identifier = (binary_expression "auStack_dc + iVar2" identifier + identifier)) ;) (expression_statement "*(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;" (assignment_expression "*(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2" (pointer_expression "*(int *)(&stack0xffffff18 + iVar2)" * (cast_expression "(int *)(&stack0xffffff18 + iVar2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff18 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar2" (pointer_expression "&stack0xffffff18" & identifier) + identifier) )))) = (binary_expression "(int)&local_d0 + iVar2" (cast_expression "(int)&local_d0" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_d0" & identifier)) + identifier)) ;) (expression_statement "*(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;" (assignment_expression "*(mp_size_t *)(&stack0xffffff14 + iVar2) = vn" (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar2" (pointer_expression "&stack0xffffff14" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(uint **)(&stack0xffffff10 + iVar2) = local_a4;" (assignment_expression "*(uint **)(&stack0xffffff10 + iVar2) = local_a4" (pointer_expression "*(uint **)(&stack0xffffff10 + iVar2)" * (cast_expression "(uint **)(&stack0xffffff10 + iVar2)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff10 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar2" (pointer_expression "&stack0xffffff10" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(&stack0xffffff0c + iVar2) = un;" (assignment_expression "*(mp_size_t *)(&stack0xffffff0c + iVar2) = un" (pointer_expression "*(mp_size_t *)(&stack0xffffff0c + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff0c + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff0c + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar2" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;" (assignment_expression "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up" (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;" (assignment_expression "*(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp" (pointer_expression "*(mp_ptr *)(auStack_dc + iVar2 + -0x20)" * (cast_expression "(mp_ptr *)(auStack_dc + iVar2 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar2 + -0x20" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47da3;" (assignment_expression "*(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47da3" (pointer_expression "*(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)amStackY_8010 + iVar2 + 0x7f10)" ( (binary_expression "(int)amStackY_8010 + iVar2 + 0x7f10" (binary_expression "(int)amStackY_8010 + iVar2" (cast_expression "(int)amStackY_8010" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom44_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));" (call_expression "__gmpn_toom44_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2))" identifier (argument_list "(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2))" ( (pointer_expression "*(mp_ptr *)(auStack_dc + iVar2 + -0x20)" * (cast_expression "(mp_ptr *)(auStack_dc + iVar2 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar2 + -0x20" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff0c + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff0c + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff0c + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar2" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) )))) , (pointer_expression "*(mp_srcptr *)(&stack0xffffff10 + iVar2)" * (cast_expression "(mp_srcptr *)(&stack0xffffff10 + iVar2)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff10 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar2" (pointer_expression "&stack0xffffff10" & identifier) + identifier) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar2" (pointer_expression "&stack0xffffff14" & identifier) + identifier) )))) , (pointer_expression "*(mp_ptr *)(&stack0xffffff18 + iVar2)" * (cast_expression "(mp_ptr *)(&stack0xffffff18 + iVar2)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff18 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar2" (pointer_expression "&stack0xffffff18" & identifier) + identifier) )))) ))) ;) }) (else_clause "else if (vn < 0x1c2) {\n            iVar2 = -((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else {\n            iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4;\n            uVar9 = iVar2 + 0x6dc;\n            if (uVar9 < 0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_dc + iVar2;\n              pvVar10 = (void *)((int)&local_d0 + iVar2);\n            }\n            else {\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }\n            *(void **)(puVar15 + -0xc) = pvVar10;\n            *(mp_size_t *)(puVar15 + -0x10) = vn;\n            *(uint **)(puVar15 + -0x14) = local_a4;\n            *(mp_size_t *)(puVar15 + -0x18) = un;\n            *(mp_srcptr *)(puVar15 + -0x1c) = up;\n            *(mp_ptr *)(puVar15 + -0x20) = prodp;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc));\n            puVar16 = puVar15;\n          }" else (if_statement "if (vn < 0x1c2) {\n            iVar2 = -((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }\n          else {\n            iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4;\n            uVar9 = iVar2 + 0x6dc;\n            if (uVar9 < 0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_dc + iVar2;\n              pvVar10 = (void *)((int)&local_d0 + iVar2);\n            }\n            else {\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }\n            *(void **)(puVar15 + -0xc) = pvVar10;\n            *(mp_size_t *)(puVar15 + -0x10) = vn;\n            *(uint **)(puVar15 + -0x14) = local_a4;\n            *(mp_size_t *)(puVar15 + -0x18) = un;\n            *(mp_srcptr *)(puVar15 + -0x1c) = up;\n            *(mp_ptr *)(puVar15 + -0x20) = prodp;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc));\n            puVar16 = puVar15;\n          }" if (parenthesized_expression "(vn < 0x1c2)" ( (binary_expression "vn < 0x1c2" identifier < number_literal) )) (compound_statement "{\n            iVar2 = -((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar16 = auStack_dc + iVar2;\n            *(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;\n            *(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;\n            *(uint **)(&stack0xffffff10 + iVar2) = local_a4;\n            *(mp_size_t *)(&stack0xffffff0c + iVar2) = un;\n            *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;\n            *(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;\n            *(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));\n          }" { (expression_statement "iVar2 = -((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610);" (assignment_expression "iVar2 = -((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610)" identifier = (unary_expression "-((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610)" - (parenthesized_expression "((((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610)" ( (binary_expression "(((uint)local_ac / 10) * 3 + 3) * 0x10 + 0x610" (binary_expression "(((uint)local_ac / 10) * 3 + 3) * 0x10" (parenthesized_expression "(((uint)local_ac / 10) * 3 + 3)" ( (binary_expression "((uint)local_ac / 10) * 3 + 3" (binary_expression "((uint)local_ac / 10) * 3" (parenthesized_expression "((uint)local_ac / 10)" ( (binary_expression "(uint)local_ac / 10" (cast_expression "(uint)local_ac" ( (type_descriptor "uint" type_identifier) ) identifier) / number_literal) )) * number_literal) + number_literal) )) * number_literal) + number_literal) )))) ;) (expression_statement "puVar16 = auStack_dc + iVar2;" (assignment_expression "puVar16 = auStack_dc + iVar2" identifier = (binary_expression "auStack_dc + iVar2" identifier + identifier)) ;) (expression_statement "*(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2;" (assignment_expression "*(int *)(&stack0xffffff18 + iVar2) = (int)&local_d0 + iVar2" (pointer_expression "*(int *)(&stack0xffffff18 + iVar2)" * (cast_expression "(int *)(&stack0xffffff18 + iVar2)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff18 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar2" (pointer_expression "&stack0xffffff18" & identifier) + identifier) )))) = (binary_expression "(int)&local_d0 + iVar2" (cast_expression "(int)&local_d0" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_d0" & identifier)) + identifier)) ;) (expression_statement "*(mp_size_t *)(&stack0xffffff14 + iVar2) = vn;" (assignment_expression "*(mp_size_t *)(&stack0xffffff14 + iVar2) = vn" (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar2" (pointer_expression "&stack0xffffff14" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(uint **)(&stack0xffffff10 + iVar2) = local_a4;" (assignment_expression "*(uint **)(&stack0xffffff10 + iVar2) = local_a4" (pointer_expression "*(uint **)(&stack0xffffff10 + iVar2)" * (cast_expression "(uint **)(&stack0xffffff10 + iVar2)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(&stack0xffffff10 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar2" (pointer_expression "&stack0xffffff10" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(&stack0xffffff0c + iVar2) = un;" (assignment_expression "*(mp_size_t *)(&stack0xffffff0c + iVar2) = un" (pointer_expression "*(mp_size_t *)(&stack0xffffff0c + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff0c + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff0c + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar2" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up;" (assignment_expression "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c) = up" (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp;" (assignment_expression "*(mp_ptr *)(auStack_dc + iVar2 + -0x20) = prodp" (pointer_expression "*(mp_ptr *)(auStack_dc + iVar2 + -0x20)" * (cast_expression "(mp_ptr *)(auStack_dc + iVar2 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar2 + -0x20" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47e63;" (assignment_expression "*(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10) = 0x47e63" (pointer_expression "*(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)amStackY_8010 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)amStackY_8010 + iVar2 + 0x7f10)" ( (binary_expression "(int)amStackY_8010 + iVar2 + 0x7f10" (binary_expression "(int)amStackY_8010 + iVar2" (cast_expression "(int)amStackY_8010" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom6h_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2));" (call_expression "__gmpn_toom6h_mul(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2))" identifier (argument_list "(*(mp_ptr *)(auStack_dc + iVar2 + -0x20),\n                              *(mp_srcptr *)(auStack_dc + iVar2 + -0x1c),\n                              *(mp_size_t *)(&stack0xffffff0c + iVar2),\n                              *(mp_srcptr *)(&stack0xffffff10 + iVar2),\n                              *(mp_size_t *)(&stack0xffffff14 + iVar2),\n                              *(mp_ptr *)(&stack0xffffff18 + iVar2))" ( (pointer_expression "*(mp_ptr *)(auStack_dc + iVar2 + -0x20)" * (cast_expression "(mp_ptr *)(auStack_dc + iVar2 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x20)" ( (binary_expression "auStack_dc + iVar2 + -0x20" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" * (cast_expression "(mp_srcptr *)(auStack_dc + iVar2 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_dc + iVar2 + -0x1c)" ( (binary_expression "auStack_dc + iVar2 + -0x1c" (binary_expression "auStack_dc + iVar2" identifier + identifier) + number_literal) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff0c + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff0c + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff0c + iVar2)" ( (binary_expression "&stack0xffffff0c + iVar2" (pointer_expression "&stack0xffffff0c" & identifier) + identifier) )))) , (pointer_expression "*(mp_srcptr *)(&stack0xffffff10 + iVar2)" * (cast_expression "(mp_srcptr *)(&stack0xffffff10 + iVar2)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff10 + iVar2)" ( (binary_expression "&stack0xffffff10 + iVar2" (pointer_expression "&stack0xffffff10" & identifier) + identifier) )))) , (pointer_expression "*(mp_size_t *)(&stack0xffffff14 + iVar2)" * (cast_expression "(mp_size_t *)(&stack0xffffff14 + iVar2)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff14 + iVar2)" ( (binary_expression "&stack0xffffff14 + iVar2" (pointer_expression "&stack0xffffff14" & identifier) + identifier) )))) , (pointer_expression "*(mp_ptr *)(&stack0xffffff18 + iVar2)" * (cast_expression "(mp_ptr *)(&stack0xffffff18 + iVar2)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&stack0xffffff18 + iVar2)" ( (binary_expression "&stack0xffffff18 + iVar2" (pointer_expression "&stack0xffffff18" & identifier) + identifier) )))) ))) ;) }) (else_clause "else {\n            iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4;\n            uVar9 = iVar2 + 0x6dc;\n            if (uVar9 < 0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_dc + iVar2;\n              pvVar10 = (void *)((int)&local_d0 + iVar2);\n            }\n            else {\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }\n            *(void **)(puVar15 + -0xc) = pvVar10;\n            *(mp_size_t *)(puVar15 + -0x10) = vn;\n            *(uint **)(puVar15 + -0x14) = local_a4;\n            *(mp_size_t *)(puVar15 + -0x18) = un;\n            *(mp_srcptr *)(puVar15 + -0x1c) = up;\n            *(mp_ptr *)(puVar15 + -0x20) = prodp;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc));\n            puVar16 = puVar15;\n          }" else (compound_statement "{\n            iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4;\n            uVar9 = iVar2 + 0x6dc;\n            if (uVar9 < 0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_dc + iVar2;\n              pvVar10 = (void *)((int)&local_d0 + iVar2);\n            }\n            else {\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }\n            *(void **)(puVar15 + -0xc) = pvVar10;\n            *(mp_size_t *)(puVar15 + -0x10) = vn;\n            *(uint **)(puVar15 + -0x14) = local_a4;\n            *(mp_size_t *)(puVar15 + -0x18) = un;\n            *(mp_srcptr *)(puVar15 + -0x1c) = up;\n            *(mp_ptr *)(puVar15 + -0x20) = prodp;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc));\n            puVar16 = puVar15;\n          }" { (expression_statement "iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4;" (assignment_expression "iVar2 = ((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4" identifier = (binary_expression "((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3) * 4" (parenthesized_expression "((int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3)" ( (binary_expression "(int)(((uint)local_ac / 0xe + 1) * 0x78) >> 3" (cast_expression "(int)(((uint)local_ac / 0xe + 1) * 0x78)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(((uint)local_ac / 0xe + 1) * 0x78)" ( (binary_expression "((uint)local_ac / 0xe + 1) * 0x78" (parenthesized_expression "((uint)local_ac / 0xe + 1)" ( (binary_expression "(uint)local_ac / 0xe + 1" (binary_expression "(uint)local_ac / 0xe" (cast_expression "(uint)local_ac" ( (type_descriptor "uint" type_identifier) ) identifier) / number_literal) + number_literal) )) * number_literal) ))) >> number_literal) )) * number_literal)) ;) (expression_statement "uVar9 = iVar2 + 0x6dc;" (assignment_expression "uVar9 = iVar2 + 0x6dc" identifier = (binary_expression "iVar2 + 0x6dc" identifier + number_literal)) ;) (if_statement "if (uVar9 < 0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_dc + iVar2;\n              pvVar10 = (void *)((int)&local_d0 + iVar2);\n            }\n            else {\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }" if (parenthesized_expression "(uVar9 < 0x7f01)" ( (binary_expression "uVar9 < 0x7f01" identifier < number_literal) )) (compound_statement "{\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_dc + iVar2;\n              pvVar10 = (void *)((int)&local_d0 + iVar2);\n            }" { (expression_statement "iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);" (assignment_expression "iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0)" identifier = (unary_expression "-(iVar2 + 0x6f7U & 0xfffffff0)" - (parenthesized_expression "(iVar2 + 0x6f7U & 0xfffffff0)" ( (binary_expression "iVar2 + 0x6f7U & 0xfffffff0" (binary_expression "iVar2 + 0x6f7U" identifier + number_literal) & number_literal) )))) ;) (expression_statement "puVar15 = auStack_dc + iVar2;" (assignment_expression "puVar15 = auStack_dc + iVar2" identifier = (binary_expression "auStack_dc + iVar2" identifier + identifier)) ;) (expression_statement "pvVar10 = (void *)((int)&local_d0 + iVar2);" (assignment_expression "pvVar10 = (void *)((int)&local_d0 + iVar2)" identifier = (cast_expression "(void *)((int)&local_d0 + iVar2)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_d0 + iVar2)" ( (binary_expression "(int)&local_d0 + iVar2" (cast_expression "(int)&local_d0" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_d0" & identifier)) + identifier) )))) ;) }) (else_clause "else {\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }" else (compound_statement "{\n              local_a8 = up;\n              pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n              up = local_a8;\n            }" { (expression_statement "local_a8 = up;" (assignment_expression "local_a8 = up" identifier = identifier) ;) (expression_statement "pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);" (assignment_expression "pvVar10 = __gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9)" identifier = (call_expression "__gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9)" identifier (argument_list "(&__tmp_marker,uVar9)" ( (pointer_expression "&__tmp_marker" & identifier) , identifier )))) ;) (expression_statement "up = local_a8;" (assignment_expression "up = local_a8" identifier = identifier) ;) }))) (expression_statement "*(void **)(puVar15 + -0xc) = pvVar10;" (assignment_expression "*(void **)(puVar15 + -0xc) = pvVar10" (pointer_expression "*(void **)(puVar15 + -0xc)" * (cast_expression "(void **)(puVar15 + -0xc)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + -0xc)" ( (binary_expression "puVar15 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(puVar15 + -0x10) = vn;" (assignment_expression "*(mp_size_t *)(puVar15 + -0x10) = vn" (pointer_expression "*(mp_size_t *)(puVar15 + -0x10)" * (cast_expression "(mp_size_t *)(puVar15 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + -0x10)" ( (binary_expression "puVar15 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar15 + -0x14) = local_a4;" (assignment_expression "*(uint **)(puVar15 + -0x14) = local_a4" (pointer_expression "*(uint **)(puVar15 + -0x14)" * (cast_expression "(uint **)(puVar15 + -0x14)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + -0x14)" ( (binary_expression "puVar15 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(puVar15 + -0x18) = un;" (assignment_expression "*(mp_size_t *)(puVar15 + -0x18) = un" (pointer_expression "*(mp_size_t *)(puVar15 + -0x18)" * (cast_expression "(mp_size_t *)(puVar15 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + -0x18)" ( (binary_expression "puVar15 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar15 + -0x1c) = up;" (assignment_expression "*(mp_srcptr *)(puVar15 + -0x1c) = up" (pointer_expression "*(mp_srcptr *)(puVar15 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar15 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + -0x1c)" ( (binary_expression "puVar15 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(puVar15 + -0x20) = prodp;" (assignment_expression "*(mp_ptr *)(puVar15 + -0x20) = prodp" (pointer_expression "*(mp_ptr *)(puVar15 + -0x20)" * (cast_expression "(mp_ptr *)(puVar15 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + -0x20)" ( (binary_expression "puVar15 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar15 + -0x24) = 0x47511;" (assignment_expression "*(undefined4 *)(puVar15 + -0x24) = 0x47511" (pointer_expression "*(undefined4 *)(puVar15 + -0x24)" * (cast_expression "(undefined4 *)(puVar15 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + -0x24)" ( (binary_expression "puVar15 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc));" (call_expression "__gmpn_toom8h_mul(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc))" identifier (argument_list "(*(mp_ptr *)(puVar15 + -0x20),*(mp_srcptr *)(puVar15 + -0x1c),\n                              *(mp_size_t *)(puVar15 + -0x18),*(mp_srcptr *)(puVar15 + -0x14),\n                              *(mp_size_t *)(puVar15 + -0x10),*(mp_ptr *)(puVar15 + -0xc))" ( (pointer_expression "*(mp_ptr *)(puVar15 + -0x20)" * (cast_expression "(mp_ptr *)(puVar15 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + -0x20)" ( (binary_expression "puVar15 + -0x20" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar15 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar15 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + -0x1c)" ( (binary_expression "puVar15 + -0x1c" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar15 + -0x18)" * (cast_expression "(mp_size_t *)(puVar15 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + -0x18)" ( (binary_expression "puVar15 + -0x18" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar15 + -0x14)" * (cast_expression "(mp_srcptr *)(puVar15 + -0x14)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + -0x14)" ( (binary_expression "puVar15 + -0x14" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar15 + -0x10)" * (cast_expression "(mp_size_t *)(puVar15 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + -0x10)" ( (binary_expression "puVar15 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(mp_ptr *)(puVar15 + -0xc)" * (cast_expression "(mp_ptr *)(puVar15 + -0xc)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + -0xc)" ( (binary_expression "puVar15 + -0xc" identifier + number_literal) )))) ))) ;) (expression_statement "puVar16 = puVar15;" (assignment_expression "puVar16 = puVar15" identifier = identifier) ;) }))))) (if_statement "if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n            *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n            *(undefined4 *)(puVar16 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n          }" if (parenthesized_expression "(__tmp_marker != (tmp_reentrant_t *)0x0)" ( (binary_expression "__tmp_marker != (tmp_reentrant_t *)0x0" identifier != (cast_expression "(tmp_reentrant_t *)0x0" ( (type_descriptor "tmp_reentrant_t *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n            *(undefined4 *)(puVar16 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n          }" { (expression_statement "*(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;" (assignment_expression "*(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker" (pointer_expression "*(tmp_reentrant_t **)(puVar16 + -0x10)" * (cast_expression "(tmp_reentrant_t **)(puVar16 + -0x10)" ( (type_descriptor "tmp_reentrant_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x14) = 0x4752b;" (assignment_expression "*(undefined4 *)(puVar16 + -0x14) = 0x4752b" (pointer_expression "*(undefined4 *)(puVar16 + -0x14)" * (cast_expression "(undefined4 *)(puVar16 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));" (call_expression "__gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10))" identifier (argument_list "(*(tmp_reentrant_t **)(puVar16 + -0x10))" ( (pointer_expression "*(tmp_reentrant_t **)(puVar16 + -0x10)" * (cast_expression "(tmp_reentrant_t **)(puVar16 + -0x10)" ( (type_descriptor "tmp_reentrant_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) ))) ;) })) (goto_statement "goto LAB_000471aa;" goto statement_identifier ;) })) })) (expression_statement "__tmp_marker = (tmp_reentrant_t *)0x0;" (assignment_expression "__tmp_marker = (tmp_reentrant_t *)0x0" identifier = (cast_expression "(tmp_reentrant_t *)0x0" ( (type_descriptor "tmp_reentrant_t *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar9 = (vn + 8) * 0x10;" (assignment_expression "uVar9 = (vn + 8) * 0x10" identifier = (binary_expression "(vn + 8) * 0x10" (parenthesized_expression "(vn + 8)" ( (binary_expression "vn + 8" identifier + number_literal) )) * number_literal)) ;) (if_statement "if (uVar9 < 0x7f01) {\n        local_b8 = (uint *)((int)&local_d0 + -(uVar9 + 0x10));\n        puVar16 = auStack_dc + -(uVar9 + 0x10);\n      }\n      else {\n        local_a8 = up;\n        local_b8 = (uint *)__gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n        up = local_a8;\n        puVar16 = auStack_dc;\n      }" if (parenthesized_expression "(uVar9 < 0x7f01)" ( (binary_expression "uVar9 < 0x7f01" identifier < number_literal) )) (compound_statement "{\n        local_b8 = (uint *)((int)&local_d0 + -(uVar9 + 0x10));\n        puVar16 = auStack_dc + -(uVar9 + 0x10);\n      }" { (expression_statement "local_b8 = (uint *)((int)&local_d0 + -(uVar9 + 0x10));" (assignment_expression "local_b8 = (uint *)((int)&local_d0 + -(uVar9 + 0x10))" identifier = (cast_expression "(uint *)((int)&local_d0 + -(uVar9 + 0x10))" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_d0 + -(uVar9 + 0x10))" ( (binary_expression "(int)&local_d0 + -(uVar9 + 0x10)" (cast_expression "(int)&local_d0" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_d0" & identifier)) + (unary_expression "-(uVar9 + 0x10)" - (parenthesized_expression "(uVar9 + 0x10)" ( (binary_expression "uVar9 + 0x10" identifier + number_literal) )))) )))) ;) (expression_statement "puVar16 = auStack_dc + -(uVar9 + 0x10);" (assignment_expression "puVar16 = auStack_dc + -(uVar9 + 0x10)" identifier = (binary_expression "auStack_dc + -(uVar9 + 0x10)" identifier + (unary_expression "-(uVar9 + 0x10)" - (parenthesized_expression "(uVar9 + 0x10)" ( (binary_expression "uVar9 + 0x10" identifier + number_literal) ))))) ;) }) (else_clause "else {\n        local_a8 = up;\n        local_b8 = (uint *)__gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n        up = local_a8;\n        puVar16 = auStack_dc;\n      }" else (compound_statement "{\n        local_a8 = up;\n        local_b8 = (uint *)__gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);\n        up = local_a8;\n        puVar16 = auStack_dc;\n      }" { (expression_statement "local_a8 = up;" (assignment_expression "local_a8 = up" identifier = identifier) ;) (expression_statement "local_b8 = (uint *)__gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9);" (assignment_expression "local_b8 = (uint *)__gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9)" identifier = (cast_expression "(uint *)__gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "__gmp_tmp_reentrant_alloc(&__tmp_marker,uVar9)" identifier (argument_list "(&__tmp_marker,uVar9)" ( (pointer_expression "&__tmp_marker" & identifier) , identifier ))))) ;) (expression_statement "up = local_a8;" (assignment_expression "up = local_a8" identifier = identifier) ;) (expression_statement "puVar16 = auStack_dc;" (assignment_expression "puVar16 = auStack_dc" identifier = identifier) ;) }))) (expression_statement "local_bc = vn * 5;" (assignment_expression "local_bc = vn * 5" identifier = (binary_expression "vn * 5" identifier * number_literal)) ;) (expression_statement "local_a8 = (mp_srcptr)(un * 2);" (assignment_expression "local_a8 = (mp_srcptr)(un * 2)" identifier = (call_expression "(mp_srcptr)(un * 2)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(un * 2)" ( (binary_expression "un * 2" identifier * number_literal) )))) ;) (expression_statement "local_b0 = (mp_srcptr)(vn * 7);" (assignment_expression "local_b0 = (mp_srcptr)(vn * 7)" identifier = (call_expression "(mp_srcptr)(vn * 7)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(vn * 7)" ( (binary_expression "vn * 7" identifier * number_literal) )))) ;) (if_statement "if (SBORROW4((int)local_a8,vn * 5) == (int)local_a8 + vn * -5 < 0) {\n        uVar9 = ((int)local_b0 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          local_a8 = (mp_srcptr)((uint)(puVar16 + iVar2 + 0xf) & 0xfffffff0);\n          puVar16 = puVar16 + iVar2;\n        }\n        else {\n          local_ac = up;\n          *(uint *)(puVar16 + -0xc) = uVar9;\n          *(tmp_reentrant_t ***)(puVar16 + -0x10) = &__tmp_marker;\n          *(undefined4 *)(puVar16 + -0x14) = 0x47eac;\n          local_a8 = (mp_srcptr)\n                     __gmp_tmp_reentrant_alloc\n                               (*(tmp_reentrant_t ***)(puVar16 + -0x10),*(size_t *)(puVar16 + -0xc))\n          ;\n          up = local_ac;\n        }\n        local_c8 = (uint *)(vn * 2);\n        if (vn < 0x6e) {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = (uint *)(vn * 2);\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          local_c4 = (mp_ptr)(vn * 8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x476c2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_ac);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x476eb;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = local_c8;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_c4 = (mp_ptr)(vn * 8);\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bb2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)local_ac + (int)prodp);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bda;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        if ((int)local_b4 < vn) {\n          *(mp_srcptr *)(puVar16 + -0x10) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x14) = local_b0;\n          *(mp_size_t *)(puVar16 + -0x18) = vn;\n          *(uint **)(puVar16 + -0x1c) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x4775a;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        else {\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x18) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47c49;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        pmVar11 = local_a0;\n        *(mp_size_t *)(puVar16 + -4) = vn;\n        *(mp_srcptr *)(puVar16 + -8) = local_a8;\n        *(mp_ptr *)(puVar16 + -0xc) = prodp;\n        *(mp_ptr *)(puVar16 + -0x10) = prodp;\n        pcVar4 = (code *)*pmVar11;\n        *(undefined4 *)(puVar16 + -0x14) = 0x4776e;\n        local_a8 = (mp_srcptr)(*pcVar4)();\n        pmVar11 = local_a0;\n        puVar13 = (uint *)((int)local_ac + (int)prodp);\n        *(mp_srcptr *)(puVar16 + -8) = local_b4;\n        local_a4 = puVar13;\n        *(void **)(puVar16 + -0xc) = local_c0;\n        *(uint **)(puVar16 + -0x10) = puVar13;\n        pcVar4 = (code *)pmVar11[10];\n        *(undefined4 *)(puVar16 + -0x14) = 0x4779b;\n        (*pcVar4)();\n        uVar9 = *local_a4;\n        *local_a4 = *local_a4 + (int)local_a8;\n        puVar13 = local_a4;\n        if (CARRY4(uVar9,(uint)local_a8)) {\n          do {\n            puVar14 = puVar13 + 1;\n            uVar9 = *puVar14;\n            *puVar14 = *puVar14 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        local_ac = (mp_srcptr)(vn + (int)local_b4);\n      }\n      else if (un * 6 < (int)local_b0) {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47d4a;\n        __gmpn_toom33_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else if (SBORROW4((int)local_a8,vn * 3) == (int)local_a8 + vn * -3 < 0) {\n        if (un * 6 < vn * 0xb) {\n          if (un * 4 < (int)local_b0) {\n            if (vn < 0x6e) goto LAB_00047dab;\n          }\n          else if (vn < 100) goto LAB_00047e74;\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47d26;\n          __gmpn_toom53_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else if (vn < 0x6e) {\nLAB_00047e74:\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e8e;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n      }\n      else if (vn < 100) {\nLAB_00047dab:\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47dc5;\n        __gmpn_toom32_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47a39;\n        __gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }" if (parenthesized_expression "(SBORROW4((int)local_a8,vn * 5) == (int)local_a8 + vn * -5 < 0)" ( (binary_expression "SBORROW4((int)local_a8,vn * 5) == (int)local_a8 + vn * -5 < 0" (call_expression "SBORROW4((int)local_a8,vn * 5)" identifier (argument_list "((int)local_a8,vn * 5)" ( (cast_expression "(int)local_a8" ( (type_descriptor "int" primitive_type) ) identifier) , (binary_expression "vn * 5" identifier * number_literal) ))) == (binary_expression "(int)local_a8 + vn * -5 < 0" (binary_expression "(int)local_a8 + vn * -5" (cast_expression "(int)local_a8" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "vn * -5" identifier * number_literal)) < number_literal)) )) (compound_statement "{\n        uVar9 = ((int)local_b0 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          local_a8 = (mp_srcptr)((uint)(puVar16 + iVar2 + 0xf) & 0xfffffff0);\n          puVar16 = puVar16 + iVar2;\n        }\n        else {\n          local_ac = up;\n          *(uint *)(puVar16 + -0xc) = uVar9;\n          *(tmp_reentrant_t ***)(puVar16 + -0x10) = &__tmp_marker;\n          *(undefined4 *)(puVar16 + -0x14) = 0x47eac;\n          local_a8 = (mp_srcptr)\n                     __gmp_tmp_reentrant_alloc\n                               (*(tmp_reentrant_t ***)(puVar16 + -0x10),*(size_t *)(puVar16 + -0xc))\n          ;\n          up = local_ac;\n        }\n        local_c8 = (uint *)(vn * 2);\n        if (vn < 0x6e) {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = (uint *)(vn * 2);\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          local_c4 = (mp_ptr)(vn * 8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x476c2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_ac);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x476eb;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = local_c8;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_c4 = (mp_ptr)(vn * 8);\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bb2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)local_ac + (int)prodp);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bda;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        if ((int)local_b4 < vn) {\n          *(mp_srcptr *)(puVar16 + -0x10) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x14) = local_b0;\n          *(mp_size_t *)(puVar16 + -0x18) = vn;\n          *(uint **)(puVar16 + -0x1c) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x4775a;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        else {\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x18) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47c49;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        pmVar11 = local_a0;\n        *(mp_size_t *)(puVar16 + -4) = vn;\n        *(mp_srcptr *)(puVar16 + -8) = local_a8;\n        *(mp_ptr *)(puVar16 + -0xc) = prodp;\n        *(mp_ptr *)(puVar16 + -0x10) = prodp;\n        pcVar4 = (code *)*pmVar11;\n        *(undefined4 *)(puVar16 + -0x14) = 0x4776e;\n        local_a8 = (mp_srcptr)(*pcVar4)();\n        pmVar11 = local_a0;\n        puVar13 = (uint *)((int)local_ac + (int)prodp);\n        *(mp_srcptr *)(puVar16 + -8) = local_b4;\n        local_a4 = puVar13;\n        *(void **)(puVar16 + -0xc) = local_c0;\n        *(uint **)(puVar16 + -0x10) = puVar13;\n        pcVar4 = (code *)pmVar11[10];\n        *(undefined4 *)(puVar16 + -0x14) = 0x4779b;\n        (*pcVar4)();\n        uVar9 = *local_a4;\n        *local_a4 = *local_a4 + (int)local_a8;\n        puVar13 = local_a4;\n        if (CARRY4(uVar9,(uint)local_a8)) {\n          do {\n            puVar14 = puVar13 + 1;\n            uVar9 = *puVar14;\n            *puVar14 = *puVar14 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        local_ac = (mp_srcptr)(vn + (int)local_b4);\n      }" { (expression_statement "uVar9 = ((int)local_b0 >> 1) * 4;" (assignment_expression "uVar9 = ((int)local_b0 >> 1) * 4" identifier = (binary_expression "((int)local_b0 >> 1) * 4" (parenthesized_expression "((int)local_b0 >> 1)" ( (binary_expression "(int)local_b0 >> 1" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )) * number_literal)) ;) (if_statement "if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          local_a8 = (mp_srcptr)((uint)(puVar16 + iVar2 + 0xf) & 0xfffffff0);\n          puVar16 = puVar16 + iVar2;\n        }\n        else {\n          local_ac = up;\n          *(uint *)(puVar16 + -0xc) = uVar9;\n          *(tmp_reentrant_t ***)(puVar16 + -0x10) = &__tmp_marker;\n          *(undefined4 *)(puVar16 + -0x14) = 0x47eac;\n          local_a8 = (mp_srcptr)\n                     __gmp_tmp_reentrant_alloc\n                               (*(tmp_reentrant_t ***)(puVar16 + -0x10),*(size_t *)(puVar16 + -0xc))\n          ;\n          up = local_ac;\n        }" if (parenthesized_expression "(uVar9 < 0x7f01)" ( (binary_expression "uVar9 < 0x7f01" identifier < number_literal) )) (compound_statement "{\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          local_a8 = (mp_srcptr)((uint)(puVar16 + iVar2 + 0xf) & 0xfffffff0);\n          puVar16 = puVar16 + iVar2;\n        }" { (expression_statement "iVar2 = -(uVar9 + 0x1b & 0xfffffff0);" (assignment_expression "iVar2 = -(uVar9 + 0x1b & 0xfffffff0)" identifier = (unary_expression "-(uVar9 + 0x1b & 0xfffffff0)" - (parenthesized_expression "(uVar9 + 0x1b & 0xfffffff0)" ( (binary_expression "uVar9 + 0x1b & 0xfffffff0" (binary_expression "uVar9 + 0x1b" identifier + number_literal) & number_literal) )))) ;) (expression_statement "local_a8 = (mp_srcptr)((uint)(puVar16 + iVar2 + 0xf) & 0xfffffff0);" (assignment_expression "local_a8 = (mp_srcptr)((uint)(puVar16 + iVar2 + 0xf) & 0xfffffff0)" identifier = (call_expression "(mp_srcptr)((uint)(puVar16 + iVar2 + 0xf) & 0xfffffff0)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "((uint)(puVar16 + iVar2 + 0xf) & 0xfffffff0)" ( (binary_expression "(uint)(puVar16 + iVar2 + 0xf) & 0xfffffff0" (call_expression "(uint)(puVar16 + iVar2 + 0xf)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(puVar16 + iVar2 + 0xf)" ( (binary_expression "puVar16 + iVar2 + 0xf" (binary_expression "puVar16 + iVar2" identifier + identifier) + number_literal) ))) & number_literal) )))) ;) (expression_statement "puVar16 = puVar16 + iVar2;" (assignment_expression "puVar16 = puVar16 + iVar2" identifier = (binary_expression "puVar16 + iVar2" identifier + identifier)) ;) }) (else_clause "else {\n          local_ac = up;\n          *(uint *)(puVar16 + -0xc) = uVar9;\n          *(tmp_reentrant_t ***)(puVar16 + -0x10) = &__tmp_marker;\n          *(undefined4 *)(puVar16 + -0x14) = 0x47eac;\n          local_a8 = (mp_srcptr)\n                     __gmp_tmp_reentrant_alloc\n                               (*(tmp_reentrant_t ***)(puVar16 + -0x10),*(size_t *)(puVar16 + -0xc))\n          ;\n          up = local_ac;\n        }" else (compound_statement "{\n          local_ac = up;\n          *(uint *)(puVar16 + -0xc) = uVar9;\n          *(tmp_reentrant_t ***)(puVar16 + -0x10) = &__tmp_marker;\n          *(undefined4 *)(puVar16 + -0x14) = 0x47eac;\n          local_a8 = (mp_srcptr)\n                     __gmp_tmp_reentrant_alloc\n                               (*(tmp_reentrant_t ***)(puVar16 + -0x10),*(size_t *)(puVar16 + -0xc))\n          ;\n          up = local_ac;\n        }" { (expression_statement "local_ac = up;" (assignment_expression "local_ac = up" identifier = identifier) ;) (expression_statement "*(uint *)(puVar16 + -0xc) = uVar9;" (assignment_expression "*(uint *)(puVar16 + -0xc) = uVar9" (pointer_expression "*(uint *)(puVar16 + -0xc)" * (cast_expression "(uint *)(puVar16 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(tmp_reentrant_t ***)(puVar16 + -0x10) = &__tmp_marker;" (assignment_expression "*(tmp_reentrant_t ***)(puVar16 + -0x10) = &__tmp_marker" (pointer_expression "*(tmp_reentrant_t ***)(puVar16 + -0x10)" * (cast_expression "(tmp_reentrant_t ***)(puVar16 + -0x10)" ( (type_descriptor "tmp_reentrant_t ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = (pointer_expression "&__tmp_marker" & identifier)) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x14) = 0x47eac;" (assignment_expression "*(undefined4 *)(puVar16 + -0x14) = 0x47eac" (pointer_expression "*(undefined4 *)(puVar16 + -0x14)" * (cast_expression "(undefined4 *)(puVar16 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_a8 = (mp_srcptr)\n                     __gmp_tmp_reentrant_alloc\n                               (*(tmp_reentrant_t ***)(puVar16 + -0x10),*(size_t *)(puVar16 + -0xc))\n          ;" (assignment_expression "local_a8 = (mp_srcptr)\n                     __gmp_tmp_reentrant_alloc\n                               (*(tmp_reentrant_t ***)(puVar16 + -0x10),*(size_t *)(puVar16 + -0xc))" identifier = (cast_expression "(mp_srcptr)\n                     __gmp_tmp_reentrant_alloc\n                               (*(tmp_reentrant_t ***)(puVar16 + -0x10),*(size_t *)(puVar16 + -0xc))" ( (type_descriptor "mp_srcptr" type_identifier) ) (call_expression "__gmp_tmp_reentrant_alloc\n                               (*(tmp_reentrant_t ***)(puVar16 + -0x10),*(size_t *)(puVar16 + -0xc))" identifier (argument_list "(*(tmp_reentrant_t ***)(puVar16 + -0x10),*(size_t *)(puVar16 + -0xc))" ( (pointer_expression "*(tmp_reentrant_t ***)(puVar16 + -0x10)" * (cast_expression "(tmp_reentrant_t ***)(puVar16 + -0x10)" ( (type_descriptor "tmp_reentrant_t ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(size_t *)(puVar16 + -0xc)" * (cast_expression "(size_t *)(puVar16 + -0xc)" ( (type_descriptor "size_t *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) ))))) ;) (expression_statement "up = local_ac;" (assignment_expression "up = local_ac" identifier = identifier) ;) }))) (expression_statement "local_c8 = (uint *)(vn * 2);" (assignment_expression "local_c8 = (uint *)(vn * 2)" identifier = (cast_expression "(uint *)(vn * 2)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(vn * 2)" ( (binary_expression "vn * 2" identifier * number_literal) )))) ;) (if_statement "if (vn < 0x6e) {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = (uint *)(vn * 2);\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          local_c4 = (mp_ptr)(vn * 8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x476c2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_ac);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x476eb;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = local_c8;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_c4 = (mp_ptr)(vn * 8);\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bb2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)local_ac + (int)prodp);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bda;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }" if (parenthesized_expression "(vn < 0x6e)" ( (binary_expression "vn < 0x6e" identifier < number_literal) )) (compound_statement "{\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = (uint *)(vn * 2);\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          local_c4 = (mp_ptr)(vn * 8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x476c2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_ac);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x476eb;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }" { (expression_statement "*(uint **)(puVar16 + -0xc) = local_b8;" (assignment_expression "*(uint **)(puVar16 + -0xc) = local_b8" (pointer_expression "*(uint **)(puVar16 + -0xc)" * (cast_expression "(uint **)(puVar16 + -0xc)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(puVar16 + -0x10) = vn;" (assignment_expression "*(mp_size_t *)(puVar16 + -0x10) = vn" (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar16 + -0x14) = local_a4;" (assignment_expression "*(uint **)(puVar16 + -0x14) = local_a4" (pointer_expression "*(uint **)(puVar16 + -0x14)" * (cast_expression "(uint **)(puVar16 + -0x14)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar16 + -0x18) = (uint *)(vn * 2);" (assignment_expression "*(uint **)(puVar16 + -0x18) = (uint *)(vn * 2)" (pointer_expression "*(uint **)(puVar16 + -0x18)" * (cast_expression "(uint **)(puVar16 + -0x18)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) = (cast_expression "(uint *)(vn * 2)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(vn * 2)" ( (binary_expression "vn * 2" identifier * number_literal) )))) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -0x1c) = up;" (assignment_expression "*(mp_srcptr *)(puVar16 + -0x1c) = up" (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(puVar16 + -0x20) = prodp;" (assignment_expression "*(mp_ptr *)(puVar16 + -0x20) = prodp" (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_ac = up;" (assignment_expression "local_ac = up" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x24) = 0x475ed;" (assignment_expression "*(undefined4 *)(puVar16 + -0x24) = 0x475ed" (pointer_expression "*(undefined4 *)(puVar16 + -0x24)" * (cast_expression "(undefined4 *)(puVar16 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x24)" ( (binary_expression "puVar16 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));" (call_expression "__gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" identifier (argument_list "(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" ( (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x18)" * (cast_expression "(mp_size_t *)(puVar16 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x14)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x14)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(mp_ptr *)(puVar16 + -0xc)" * (cast_expression "(mp_ptr *)(puVar16 + -0xc)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) ))) ;) (expression_statement "puVar13 = local_c8;" (assignment_expression "puVar13 = local_c8" identifier = identifier) ;) (expression_statement "local_b4 = (mp_srcptr)(un - (int)local_c8);" (assignment_expression "local_b4 = (mp_srcptr)(un - (int)local_c8)" identifier = (call_expression "(mp_srcptr)(un - (int)local_c8)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(un - (int)local_c8)" ( (binary_expression "un - (int)local_c8" identifier - (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_c4 = (mp_ptr)(vn * 8);" (assignment_expression "local_c4 = (mp_ptr)(vn * 8)" identifier = (call_expression "(mp_ptr)(vn * 8)" (parenthesized_expression "(mp_ptr)" ( identifier )) (argument_list "(vn * 8)" ( (binary_expression "vn * 8" identifier * number_literal) )))) ;) (expression_statement "prodp = prodp + vn * 2;" (assignment_expression "prodp = prodp + vn * 2" identifier = (binary_expression "prodp + vn * 2" identifier + (binary_expression "vn * 2" identifier * number_literal))) ;) (expression_statement "local_b0 = local_ac + vn * 2;" (assignment_expression "local_b0 = local_ac + vn * 2" identifier = (binary_expression "local_ac + vn * 2" identifier + (binary_expression "vn * 2" identifier * number_literal))) ;) (expression_statement "local_ac = (mp_srcptr)(vn * 4);" (assignment_expression "local_ac = (mp_srcptr)(vn * 4)" identifier = (call_expression "(mp_srcptr)(vn * 4)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(vn * 4)" ( (binary_expression "vn * 4" identifier * number_literal) )))) ;) (expression_statement "local_c0 = (void *)((int)local_a8 + vn * 4);" (assignment_expression "local_c0 = (void *)((int)local_a8 + vn * 4)" identifier = (cast_expression "(void *)((int)local_a8 + vn * 4)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_a8 + vn * 4)" ( (binary_expression "(int)local_a8 + vn * 4" (cast_expression "(int)local_a8" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "vn * 4" identifier * number_literal)) )))) ;) (if_statement "if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x476c2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_ac);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x476eb;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }" if (parenthesized_expression "(local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0)" ( (binary_expression "local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0" (binary_expression "local_bc == (int)local_b4 * 2" identifier == (binary_expression "(int)local_b4 * 2" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) || (binary_expression "SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0" (call_expression "SBORROW4(local_bc,(int)local_b4 * 2)" identifier (argument_list "(local_bc,(int)local_b4 * 2)" ( identifier , (binary_expression "(int)local_b4 * 2" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ))) != (binary_expression "(int)(local_bc + (int)local_b4 * -2) < 0" (cast_expression "(int)(local_bc + (int)local_b4 * -2)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(local_bc + (int)local_b4 * -2)" ( (binary_expression "local_bc + (int)local_b4 * -2" identifier + (binary_expression "(int)local_b4 * -2" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ))) < number_literal))) )) (compound_statement "{\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x476c2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_ac);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x476eb;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }" { (expression_statement "local_d4 = vn * -4;" (assignment_expression "local_d4 = vn * -4" identifier = (binary_expression "vn * -4" identifier * number_literal)) ;) (expression_statement "mVar12 = ((int)local_b4 - (int)local_c8) * 2;" (assignment_expression "mVar12 = ((int)local_b4 - (int)local_c8) * 2" identifier = (binary_expression "((int)local_b4 - (int)local_c8) * 2" (parenthesized_expression "((int)local_b4 - (int)local_c8)" ( (binary_expression "(int)local_b4 - (int)local_c8" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )) * number_literal)) ;) (do_statement "do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x476c2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_ac);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x476eb;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));" do (compound_statement "{\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x476c2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)prodp + (int)local_ac);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x476eb;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            }" { (expression_statement "*(uint **)(puVar16 + -0xc) = local_b8;" (assignment_expression "*(uint **)(puVar16 + -0xc) = local_b8" (pointer_expression "*(uint **)(puVar16 + -0xc)" * (cast_expression "(uint **)(puVar16 + -0xc)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(puVar16 + -0x10) = vn;" (assignment_expression "*(mp_size_t *)(puVar16 + -0x10) = vn" (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar16 + -0x14) = local_a4;" (assignment_expression "*(uint **)(puVar16 + -0x14) = local_a4" (pointer_expression "*(uint **)(puVar16 + -0x14)" * (cast_expression "(uint **)(puVar16 + -0x14)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar16 + -0x18) = puVar13;" (assignment_expression "*(uint **)(puVar16 + -0x18) = puVar13" (pointer_expression "*(uint **)(puVar16 + -0x18)" * (cast_expression "(uint **)(puVar16 + -0x18)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -0x1c) = local_b0;" (assignment_expression "*(mp_srcptr *)(puVar16 + -0x1c) = local_b0" (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -0x20) = local_a8;" (assignment_expression "*(mp_srcptr *)(puVar16 + -0x20) = local_a8" (pointer_expression "*(mp_srcptr *)(puVar16 + -0x20)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_d0 = mVar12;" (assignment_expression "local_d0 = mVar12" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x24) = 0x4769a;" (assignment_expression "*(undefined4 *)(puVar16 + -0x24) = 0x4769a" (pointer_expression "*(undefined4 *)(puVar16 + -0x24)" * (cast_expression "(undefined4 *)(puVar16 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x24)" ( (binary_expression "puVar16 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));" (call_expression "__gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" identifier (argument_list "(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" ( (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x18)" * (cast_expression "(mp_size_t *)(puVar16 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x14)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x14)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(mp_ptr *)(puVar16 + -0xc)" * (cast_expression "(mp_ptr *)(puVar16 + -0xc)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) ))) ;) (expression_statement "*(mp_size_t *)(puVar16 + -4) = vn;" (assignment_expression "*(mp_size_t *)(puVar16 + -4) = vn" (pointer_expression "*(mp_size_t *)(puVar16 + -4)" * (cast_expression "(mp_size_t *)(puVar16 + -4)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -4)" ( (binary_expression "puVar16 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "pmVar11 = local_a0;" (assignment_expression "pmVar11 = local_a0" identifier = identifier) ;) (expression_statement "pmVar6 = local_c4;" (assignment_expression "pmVar6 = local_c4" identifier = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -8) = local_a8;" (assignment_expression "*(mp_srcptr *)(puVar16 + -8) = local_a8" (pointer_expression "*(mp_srcptr *)(puVar16 + -8)" * (cast_expression "(mp_srcptr *)(puVar16 + -8)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -8)" ( (binary_expression "puVar16 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(puVar16 + -0xc) = prodp;" (assignment_expression "*(mp_ptr *)(puVar16 + -0xc) = prodp" (pointer_expression "*(mp_ptr *)(puVar16 + -0xc)" * (cast_expression "(mp_ptr *)(puVar16 + -0xc)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(puVar16 + -0x10) = prodp;" (assignment_expression "*(mp_ptr *)(puVar16 + -0x10) = prodp" (pointer_expression "*(mp_ptr *)(puVar16 + -0x10)" * (cast_expression "(mp_ptr *)(puVar16 + -0x10)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);" (assignment_expression "local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6)" identifier = (call_expression "(mp_srcptr)((int)local_b0 + (int)pmVar6)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "((int)local_b0 + (int)pmVar6)" ( (binary_expression "(int)local_b0 + (int)pmVar6" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)pmVar6" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);" (assignment_expression "local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13)" identifier = (call_expression "(mp_srcptr)((int)local_b4 - (int)puVar13)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "((int)local_b4 - (int)puVar13)" ( (binary_expression "(int)local_b4 - (int)puVar13" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pcVar4 = (code *)*pmVar11;" (assignment_expression "pcVar4 = (code *)*pmVar11" identifier = (cast_expression "(code *)*pmVar11" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*pmVar11" * identifier))) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x14) = 0x476c2;" (assignment_expression "*(undefined4 *)(puVar16 + -0x14) = 0x476c2" (pointer_expression "*(undefined4 *)(puVar16 + -0x14)" * (cast_expression "(undefined4 *)(puVar16 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_cc = (*pcVar4)();" (assignment_expression "local_cc = (*pcVar4)()" identifier = (call_expression "(*pcVar4)()" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "()" ( )))) ;) (expression_statement "pmVar11 = local_a0;" (assignment_expression "pmVar11 = local_a0" identifier = identifier) ;) (expression_statement "puVar14 = (uint *)((int)prodp + (int)local_ac);" (assignment_expression "puVar14 = (uint *)((int)prodp + (int)local_ac)" identifier = (cast_expression "(uint *)((int)prodp + (int)local_ac)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)prodp + (int)local_ac)" ( (binary_expression "(int)prodp + (int)local_ac" (cast_expression "(int)prodp" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_ac" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "*(uint **)(puVar16 + -8) = puVar13;" (assignment_expression "*(uint **)(puVar16 + -8) = puVar13" (pointer_expression "*(uint **)(puVar16 + -8)" * (cast_expression "(uint **)(puVar16 + -8)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -8)" ( (binary_expression "puVar16 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_c8 = puVar14;" (assignment_expression "local_c8 = puVar14" identifier = identifier) ;) (expression_statement "*(void **)(puVar16 + -0xc) = local_c0;" (assignment_expression "*(void **)(puVar16 + -0xc) = local_c0" (pointer_expression "*(void **)(puVar16 + -0xc)" * (cast_expression "(void **)(puVar16 + -0xc)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar16 + -0x10) = puVar14;" (assignment_expression "*(uint **)(puVar16 + -0x10) = puVar14" (pointer_expression "*(uint **)(puVar16 + -0x10)" * (cast_expression "(uint **)(puVar16 + -0x10)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "pcVar4 = (code *)pmVar11[10];" (assignment_expression "pcVar4 = (code *)pmVar11[10]" identifier = (cast_expression "(code *)pmVar11[10]" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "pmVar11[10]" identifier [ number_literal ]))) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x14) = 0x476eb;" (assignment_expression "*(undefined4 *)(puVar16 + -0x14) = 0x476eb" (pointer_expression "*(undefined4 *)(puVar16 + -0x14)" * (cast_expression "(undefined4 *)(puVar16 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(*pcVar4)();" (call_expression "(*pcVar4)()" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "uVar9 = *local_c8;" (assignment_expression "uVar9 = *local_c8" identifier = (pointer_expression "*local_c8" * identifier)) ;) (expression_statement "*local_c8 = *local_c8 + local_cc;" (assignment_expression "*local_c8 = *local_c8 + local_cc" (pointer_expression "*local_c8" * identifier) = (binary_expression "*local_c8 + local_cc" (pointer_expression "*local_c8" * identifier) + identifier)) ;) (expression_statement "puVar14 = local_c8;" (assignment_expression "puVar14 = local_c8" identifier = identifier) ;) (if_statement "if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }" if (parenthesized_expression "(CARRY4(uVar9,local_cc))" ( (call_expression "CARRY4(uVar9,local_cc)" identifier (argument_list "(uVar9,local_cc)" ( identifier , identifier ))) )) (compound_statement "{\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }" { (do_statement "do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);" do (compound_statement "{\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                }" { (expression_statement "puVar1 = puVar14 + 1;" (assignment_expression "puVar1 = puVar14 + 1" identifier = (binary_expression "puVar14 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar14 = puVar14 + 1;" (assignment_expression "puVar14 = puVar14 + 1" identifier = (binary_expression "puVar14 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "mVar12 = local_d0 + local_d4;" (assignment_expression "mVar12 = local_d0 + local_d4" identifier = (binary_expression "local_d0 + local_d4" identifier + identifier)) ;) (expression_statement "prodp = (mp_ptr)((int)prodp + (int)local_c4);" (assignment_expression "prodp = (mp_ptr)((int)prodp + (int)local_c4)" identifier = (call_expression "(mp_ptr)((int)prodp + (int)local_c4)" (parenthesized_expression "(mp_ptr)" ( identifier )) (argument_list "((int)prodp + (int)local_c4)" ( (binary_expression "(int)prodp + (int)local_c4" (cast_expression "(int)prodp" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_c4" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) }) while (parenthesized_expression "((int)local_bc <= (int)((int)local_ac + mVar12))" ( (binary_expression "(int)local_bc <= (int)((int)local_ac + mVar12)" (cast_expression "(int)local_bc" ( (type_descriptor "int" primitive_type) ) identifier) <= (cast_expression "(int)((int)local_ac + mVar12)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((int)local_ac + mVar12)" ( (binary_expression "(int)local_ac + mVar12" (cast_expression "(int)local_ac" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) )) ;) })) }) (else_clause "else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = local_c8;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_c4 = (mp_ptr)(vn * 8);\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bb2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)local_ac + (int)prodp);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bda;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }" else (compound_statement "{\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(uint **)(puVar16 + -0x18) = local_c8;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          local_ac = up;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n          puVar13 = local_c8;\n          local_c4 = (mp_ptr)(vn * 8);\n          local_b4 = (mp_srcptr)(un - (int)local_c8);\n          prodp = prodp + vn * 2;\n          local_b0 = local_ac + vn * 2;\n          local_ac = (mp_srcptr)(vn * 4);\n          local_c0 = (void *)((int)local_a8 + vn * 4);\n          if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bb2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)local_ac + (int)prodp);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bda;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }\n        }" { (expression_statement "*(uint **)(puVar16 + -0xc) = local_b8;" (assignment_expression "*(uint **)(puVar16 + -0xc) = local_b8" (pointer_expression "*(uint **)(puVar16 + -0xc)" * (cast_expression "(uint **)(puVar16 + -0xc)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(puVar16 + -0x10) = vn;" (assignment_expression "*(mp_size_t *)(puVar16 + -0x10) = vn" (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar16 + -0x14) = local_a4;" (assignment_expression "*(uint **)(puVar16 + -0x14) = local_a4" (pointer_expression "*(uint **)(puVar16 + -0x14)" * (cast_expression "(uint **)(puVar16 + -0x14)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar16 + -0x18) = local_c8;" (assignment_expression "*(uint **)(puVar16 + -0x18) = local_c8" (pointer_expression "*(uint **)(puVar16 + -0x18)" * (cast_expression "(uint **)(puVar16 + -0x18)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -0x1c) = up;" (assignment_expression "*(mp_srcptr *)(puVar16 + -0x1c) = up" (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(puVar16 + -0x20) = prodp;" (assignment_expression "*(mp_ptr *)(puVar16 + -0x20) = prodp" (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_ac = up;" (assignment_expression "local_ac = up" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x24) = 0x47adb;" (assignment_expression "*(undefined4 *)(puVar16 + -0x24) = 0x47adb" (pointer_expression "*(undefined4 *)(puVar16 + -0x24)" * (cast_expression "(undefined4 *)(puVar16 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x24)" ( (binary_expression "puVar16 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));" (call_expression "__gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" identifier (argument_list "(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" ( (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x18)" * (cast_expression "(mp_size_t *)(puVar16 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x14)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x14)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(mp_ptr *)(puVar16 + -0xc)" * (cast_expression "(mp_ptr *)(puVar16 + -0xc)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) ))) ;) (expression_statement "puVar13 = local_c8;" (assignment_expression "puVar13 = local_c8" identifier = identifier) ;) (expression_statement "local_c4 = (mp_ptr)(vn * 8);" (assignment_expression "local_c4 = (mp_ptr)(vn * 8)" identifier = (call_expression "(mp_ptr)(vn * 8)" (parenthesized_expression "(mp_ptr)" ( identifier )) (argument_list "(vn * 8)" ( (binary_expression "vn * 8" identifier * number_literal) )))) ;) (expression_statement "local_b4 = (mp_srcptr)(un - (int)local_c8);" (assignment_expression "local_b4 = (mp_srcptr)(un - (int)local_c8)" identifier = (call_expression "(mp_srcptr)(un - (int)local_c8)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(un - (int)local_c8)" ( (binary_expression "un - (int)local_c8" identifier - (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "prodp = prodp + vn * 2;" (assignment_expression "prodp = prodp + vn * 2" identifier = (binary_expression "prodp + vn * 2" identifier + (binary_expression "vn * 2" identifier * number_literal))) ;) (expression_statement "local_b0 = local_ac + vn * 2;" (assignment_expression "local_b0 = local_ac + vn * 2" identifier = (binary_expression "local_ac + vn * 2" identifier + (binary_expression "vn * 2" identifier * number_literal))) ;) (expression_statement "local_ac = (mp_srcptr)(vn * 4);" (assignment_expression "local_ac = (mp_srcptr)(vn * 4)" identifier = (call_expression "(mp_srcptr)(vn * 4)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(vn * 4)" ( (binary_expression "vn * 4" identifier * number_literal) )))) ;) (expression_statement "local_c0 = (void *)((int)local_a8 + vn * 4);" (assignment_expression "local_c0 = (void *)((int)local_a8 + vn * 4)" identifier = (cast_expression "(void *)((int)local_a8 + vn * 4)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_a8 + vn * 4)" ( (binary_expression "(int)local_a8 + vn * 4" (cast_expression "(int)local_a8" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "vn * 4" identifier * number_literal)) )))) ;) (if_statement "if (local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0) {\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bb2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)local_ac + (int)prodp);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bda;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }" if (parenthesized_expression "(local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0)" ( (binary_expression "local_bc == (int)local_b4 * 2 ||\n              SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0" (binary_expression "local_bc == (int)local_b4 * 2" identifier == (binary_expression "(int)local_b4 * 2" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) || (binary_expression "SBORROW4(local_bc,(int)local_b4 * 2) != (int)(local_bc + (int)local_b4 * -2) < 0" (call_expression "SBORROW4(local_bc,(int)local_b4 * 2)" identifier (argument_list "(local_bc,(int)local_b4 * 2)" ( identifier , (binary_expression "(int)local_b4 * 2" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ))) != (binary_expression "(int)(local_bc + (int)local_b4 * -2) < 0" (cast_expression "(int)(local_bc + (int)local_b4 * -2)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(local_bc + (int)local_b4 * -2)" ( (binary_expression "local_bc + (int)local_b4 * -2" identifier + (binary_expression "(int)local_b4 * -2" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ))) < number_literal))) )) (compound_statement "{\n            local_d4 = vn * -4;\n            mVar12 = ((int)local_b4 - (int)local_c8) * 2;\n            do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bb2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)local_ac + (int)prodp);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bda;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));\n          }" { (expression_statement "local_d4 = vn * -4;" (assignment_expression "local_d4 = vn * -4" identifier = (binary_expression "vn * -4" identifier * number_literal)) ;) (expression_statement "mVar12 = ((int)local_b4 - (int)local_c8) * 2;" (assignment_expression "mVar12 = ((int)local_b4 - (int)local_c8) * 2" identifier = (binary_expression "((int)local_b4 - (int)local_c8) * 2" (parenthesized_expression "((int)local_b4 - (int)local_c8)" ( (binary_expression "(int)local_b4 - (int)local_c8" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_c8" ( (type_descriptor "int" primitive_type) ) identifier)) )) * number_literal)) ;) (do_statement "do {\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bb2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)local_ac + (int)prodp);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bda;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            } while ((int)local_bc <= (int)((int)local_ac + mVar12));" do (compound_statement "{\n              *(uint **)(puVar16 + -0xc) = local_b8;\n              *(mp_size_t *)(puVar16 + -0x10) = vn;\n              *(uint **)(puVar16 + -0x14) = local_a4;\n              *(uint **)(puVar16 + -0x18) = puVar13;\n              *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n              *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n              local_d0 = mVar12;\n              *(undefined4 *)(puVar16 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n              *(mp_size_t *)(puVar16 + -4) = vn;\n              pmVar11 = local_a0;\n              pmVar6 = local_c4;\n              *(mp_srcptr *)(puVar16 + -8) = local_a8;\n              *(mp_ptr *)(puVar16 + -0xc) = prodp;\n              *(mp_ptr *)(puVar16 + -0x10) = prodp;\n              local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);\n              local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);\n              pcVar4 = (code *)*pmVar11;\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bb2;\n              local_cc = (*pcVar4)();\n              pmVar11 = local_a0;\n              puVar14 = (uint *)((int)local_ac + (int)prodp);\n              *(uint **)(puVar16 + -8) = puVar13;\n              local_c8 = puVar14;\n              *(void **)(puVar16 + -0xc) = local_c0;\n              *(uint **)(puVar16 + -0x10) = puVar14;\n              pcVar4 = (code *)pmVar11[10];\n              *(undefined4 *)(puVar16 + -0x14) = 0x47bda;\n              (*pcVar4)();\n              uVar9 = *local_c8;\n              *local_c8 = *local_c8 + local_cc;\n              puVar14 = local_c8;\n              if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              mVar12 = local_d0 + local_d4;\n              prodp = (mp_ptr)((int)prodp + (int)local_c4);\n            }" { (expression_statement "*(uint **)(puVar16 + -0xc) = local_b8;" (assignment_expression "*(uint **)(puVar16 + -0xc) = local_b8" (pointer_expression "*(uint **)(puVar16 + -0xc)" * (cast_expression "(uint **)(puVar16 + -0xc)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(puVar16 + -0x10) = vn;" (assignment_expression "*(mp_size_t *)(puVar16 + -0x10) = vn" (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar16 + -0x14) = local_a4;" (assignment_expression "*(uint **)(puVar16 + -0x14) = local_a4" (pointer_expression "*(uint **)(puVar16 + -0x14)" * (cast_expression "(uint **)(puVar16 + -0x14)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar16 + -0x18) = puVar13;" (assignment_expression "*(uint **)(puVar16 + -0x18) = puVar13" (pointer_expression "*(uint **)(puVar16 + -0x18)" * (cast_expression "(uint **)(puVar16 + -0x18)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -0x1c) = local_b0;" (assignment_expression "*(mp_srcptr *)(puVar16 + -0x1c) = local_b0" (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -0x20) = local_a8;" (assignment_expression "*(mp_srcptr *)(puVar16 + -0x20) = local_a8" (pointer_expression "*(mp_srcptr *)(puVar16 + -0x20)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_d0 = mVar12;" (assignment_expression "local_d0 = mVar12" identifier = identifier) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x24) = 0x47b8a;" (assignment_expression "*(undefined4 *)(puVar16 + -0x24) = 0x47b8a" (pointer_expression "*(undefined4 *)(puVar16 + -0x24)" * (cast_expression "(undefined4 *)(puVar16 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x24)" ( (binary_expression "puVar16 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));" (call_expression "__gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" identifier (argument_list "(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                                *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                                *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" ( (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x18)" * (cast_expression "(mp_size_t *)(puVar16 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x14)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x14)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(mp_ptr *)(puVar16 + -0xc)" * (cast_expression "(mp_ptr *)(puVar16 + -0xc)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) ))) ;) (expression_statement "*(mp_size_t *)(puVar16 + -4) = vn;" (assignment_expression "*(mp_size_t *)(puVar16 + -4) = vn" (pointer_expression "*(mp_size_t *)(puVar16 + -4)" * (cast_expression "(mp_size_t *)(puVar16 + -4)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -4)" ( (binary_expression "puVar16 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "pmVar11 = local_a0;" (assignment_expression "pmVar11 = local_a0" identifier = identifier) ;) (expression_statement "pmVar6 = local_c4;" (assignment_expression "pmVar6 = local_c4" identifier = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -8) = local_a8;" (assignment_expression "*(mp_srcptr *)(puVar16 + -8) = local_a8" (pointer_expression "*(mp_srcptr *)(puVar16 + -8)" * (cast_expression "(mp_srcptr *)(puVar16 + -8)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -8)" ( (binary_expression "puVar16 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(puVar16 + -0xc) = prodp;" (assignment_expression "*(mp_ptr *)(puVar16 + -0xc) = prodp" (pointer_expression "*(mp_ptr *)(puVar16 + -0xc)" * (cast_expression "(mp_ptr *)(puVar16 + -0xc)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(puVar16 + -0x10) = prodp;" (assignment_expression "*(mp_ptr *)(puVar16 + -0x10) = prodp" (pointer_expression "*(mp_ptr *)(puVar16 + -0x10)" * (cast_expression "(mp_ptr *)(puVar16 + -0x10)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6);" (assignment_expression "local_b0 = (mp_srcptr)((int)local_b0 + (int)pmVar6)" identifier = (call_expression "(mp_srcptr)((int)local_b0 + (int)pmVar6)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "((int)local_b0 + (int)pmVar6)" ( (binary_expression "(int)local_b0 + (int)pmVar6" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)pmVar6" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13);" (assignment_expression "local_b4 = (mp_srcptr)((int)local_b4 - (int)puVar13)" identifier = (call_expression "(mp_srcptr)((int)local_b4 - (int)puVar13)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "((int)local_b4 - (int)puVar13)" ( (binary_expression "(int)local_b4 - (int)puVar13" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pcVar4 = (code *)*pmVar11;" (assignment_expression "pcVar4 = (code *)*pmVar11" identifier = (cast_expression "(code *)*pmVar11" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*pmVar11" * identifier))) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x14) = 0x47bb2;" (assignment_expression "*(undefined4 *)(puVar16 + -0x14) = 0x47bb2" (pointer_expression "*(undefined4 *)(puVar16 + -0x14)" * (cast_expression "(undefined4 *)(puVar16 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_cc = (*pcVar4)();" (assignment_expression "local_cc = (*pcVar4)()" identifier = (call_expression "(*pcVar4)()" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "()" ( )))) ;) (expression_statement "pmVar11 = local_a0;" (assignment_expression "pmVar11 = local_a0" identifier = identifier) ;) (expression_statement "puVar14 = (uint *)((int)local_ac + (int)prodp);" (assignment_expression "puVar14 = (uint *)((int)local_ac + (int)prodp)" identifier = (cast_expression "(uint *)((int)local_ac + (int)prodp)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_ac + (int)prodp)" ( (binary_expression "(int)local_ac + (int)prodp" (cast_expression "(int)local_ac" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)prodp" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "*(uint **)(puVar16 + -8) = puVar13;" (assignment_expression "*(uint **)(puVar16 + -8) = puVar13" (pointer_expression "*(uint **)(puVar16 + -8)" * (cast_expression "(uint **)(puVar16 + -8)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -8)" ( (binary_expression "puVar16 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_c8 = puVar14;" (assignment_expression "local_c8 = puVar14" identifier = identifier) ;) (expression_statement "*(void **)(puVar16 + -0xc) = local_c0;" (assignment_expression "*(void **)(puVar16 + -0xc) = local_c0" (pointer_expression "*(void **)(puVar16 + -0xc)" * (cast_expression "(void **)(puVar16 + -0xc)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar16 + -0x10) = puVar14;" (assignment_expression "*(uint **)(puVar16 + -0x10) = puVar14" (pointer_expression "*(uint **)(puVar16 + -0x10)" * (cast_expression "(uint **)(puVar16 + -0x10)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "pcVar4 = (code *)pmVar11[10];" (assignment_expression "pcVar4 = (code *)pmVar11[10]" identifier = (cast_expression "(code *)pmVar11[10]" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "pmVar11[10]" identifier [ number_literal ]))) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x14) = 0x47bda;" (assignment_expression "*(undefined4 *)(puVar16 + -0x14) = 0x47bda" (pointer_expression "*(undefined4 *)(puVar16 + -0x14)" * (cast_expression "(undefined4 *)(puVar16 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(*pcVar4)();" (call_expression "(*pcVar4)()" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "uVar9 = *local_c8;" (assignment_expression "uVar9 = *local_c8" identifier = (pointer_expression "*local_c8" * identifier)) ;) (expression_statement "*local_c8 = *local_c8 + local_cc;" (assignment_expression "*local_c8 = *local_c8 + local_cc" (pointer_expression "*local_c8" * identifier) = (binary_expression "*local_c8 + local_cc" (pointer_expression "*local_c8" * identifier) + identifier)) ;) (expression_statement "puVar14 = local_c8;" (assignment_expression "puVar14 = local_c8" identifier = identifier) ;) (if_statement "if (CARRY4(uVar9,local_cc)) {\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }" if (parenthesized_expression "(CARRY4(uVar9,local_cc))" ( (call_expression "CARRY4(uVar9,local_cc)" identifier (argument_list "(uVar9,local_cc)" ( identifier , identifier ))) )) (compound_statement "{\n                do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);\n              }" { (do_statement "do {\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                } while (0xfffffffe < uVar9);" do (compound_statement "{\n                  puVar1 = puVar14 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar14 = puVar14 + 1;\n                }" { (expression_statement "puVar1 = puVar14 + 1;" (assignment_expression "puVar1 = puVar14 + 1" identifier = (binary_expression "puVar14 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar14 = puVar14 + 1;" (assignment_expression "puVar14 = puVar14 + 1" identifier = (binary_expression "puVar14 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "mVar12 = local_d0 + local_d4;" (assignment_expression "mVar12 = local_d0 + local_d4" identifier = (binary_expression "local_d0 + local_d4" identifier + identifier)) ;) (expression_statement "prodp = (mp_ptr)((int)prodp + (int)local_c4);" (assignment_expression "prodp = (mp_ptr)((int)prodp + (int)local_c4)" identifier = (call_expression "(mp_ptr)((int)prodp + (int)local_c4)" (parenthesized_expression "(mp_ptr)" ( identifier )) (argument_list "((int)prodp + (int)local_c4)" ( (binary_expression "(int)prodp + (int)local_c4" (cast_expression "(int)prodp" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_c4" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) }) while (parenthesized_expression "((int)local_bc <= (int)((int)local_ac + mVar12))" ( (binary_expression "(int)local_bc <= (int)((int)local_ac + mVar12)" (cast_expression "(int)local_bc" ( (type_descriptor "int" primitive_type) ) identifier) <= (cast_expression "(int)((int)local_ac + mVar12)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((int)local_ac + mVar12)" ( (binary_expression "(int)local_ac + mVar12" (cast_expression "(int)local_ac" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) )) ;) })) }))) (if_statement "if ((int)local_b4 < vn) {\n          *(mp_srcptr *)(puVar16 + -0x10) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x14) = local_b0;\n          *(mp_size_t *)(puVar16 + -0x18) = vn;\n          *(uint **)(puVar16 + -0x1c) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x4775a;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }\n        else {\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x18) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47c49;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }" if (parenthesized_expression "((int)local_b4 < vn)" ( (binary_expression "(int)local_b4 < vn" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) < identifier) )) (compound_statement "{\n          *(mp_srcptr *)(puVar16 + -0x10) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x14) = local_b0;\n          *(mp_size_t *)(puVar16 + -0x18) = vn;\n          *(uint **)(puVar16 + -0x1c) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x4775a;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }" { (expression_statement "*(mp_srcptr *)(puVar16 + -0x10) = local_b4;" (assignment_expression "*(mp_srcptr *)(puVar16 + -0x10) = local_b4" (pointer_expression "*(mp_srcptr *)(puVar16 + -0x10)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x10)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -0x14) = local_b0;" (assignment_expression "*(mp_srcptr *)(puVar16 + -0x14) = local_b0" (pointer_expression "*(mp_srcptr *)(puVar16 + -0x14)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x14)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(puVar16 + -0x18) = vn;" (assignment_expression "*(mp_size_t *)(puVar16 + -0x18) = vn" (pointer_expression "*(mp_size_t *)(puVar16 + -0x18)" * (cast_expression "(mp_size_t *)(puVar16 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar16 + -0x1c) = local_a4;" (assignment_expression "*(uint **)(puVar16 + -0x1c) = local_a4" (pointer_expression "*(uint **)(puVar16 + -0x1c)" * (cast_expression "(uint **)(puVar16 + -0x1c)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -0x20) = local_a8;" (assignment_expression "*(mp_srcptr *)(puVar16 + -0x20) = local_a8" (pointer_expression "*(mp_srcptr *)(puVar16 + -0x20)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x24) = 0x4775a;" (assignment_expression "*(undefined4 *)(puVar16 + -0x24) = 0x4775a" (pointer_expression "*(undefined4 *)(puVar16 + -0x24)" * (cast_expression "(undefined4 *)(puVar16 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x24)" ( (binary_expression "puVar16 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));" (call_expression "__gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10))" identifier (argument_list "(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10))" ( (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x18)" * (cast_expression "(mp_size_t *)(puVar16 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x14)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x14)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) ))) ;) }) (else_clause "else {\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x18) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47c49;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }" else (compound_statement "{\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_srcptr *)(puVar16 + -0x18) = local_b4;\n          *(mp_srcptr *)(puVar16 + -0x1c) = local_b0;\n          *(mp_srcptr *)(puVar16 + -0x20) = local_a8;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47c49;\n          __gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));\n        }" { (expression_statement "*(mp_size_t *)(puVar16 + -0x10) = vn;" (assignment_expression "*(mp_size_t *)(puVar16 + -0x10) = vn" (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar16 + -0x14) = local_a4;" (assignment_expression "*(uint **)(puVar16 + -0x14) = local_a4" (pointer_expression "*(uint **)(puVar16 + -0x14)" * (cast_expression "(uint **)(puVar16 + -0x14)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -0x18) = local_b4;" (assignment_expression "*(mp_srcptr *)(puVar16 + -0x18) = local_b4" (pointer_expression "*(mp_srcptr *)(puVar16 + -0x18)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x18)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -0x1c) = local_b0;" (assignment_expression "*(mp_srcptr *)(puVar16 + -0x1c) = local_b0" (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -0x20) = local_a8;" (assignment_expression "*(mp_srcptr *)(puVar16 + -0x20) = local_a8" (pointer_expression "*(mp_srcptr *)(puVar16 + -0x20)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x24) = 0x47c49;" (assignment_expression "*(undefined4 *)(puVar16 + -0x24) = 0x47c49" (pointer_expression "*(undefined4 *)(puVar16 + -0x24)" * (cast_expression "(undefined4 *)(puVar16 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x24)" ( (binary_expression "puVar16 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10));" (call_expression "__gmpn_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10))" identifier (argument_list "(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                     *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                     *(mp_size_t *)(puVar16 + -0x10))" ( (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x18)" * (cast_expression "(mp_size_t *)(puVar16 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x14)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x14)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) ))) ;) }))) (expression_statement "pmVar11 = local_a0;" (assignment_expression "pmVar11 = local_a0" identifier = identifier) ;) (expression_statement "*(mp_size_t *)(puVar16 + -4) = vn;" (assignment_expression "*(mp_size_t *)(puVar16 + -4) = vn" (pointer_expression "*(mp_size_t *)(puVar16 + -4)" * (cast_expression "(mp_size_t *)(puVar16 + -4)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -4)" ( (binary_expression "puVar16 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -8) = local_a8;" (assignment_expression "*(mp_srcptr *)(puVar16 + -8) = local_a8" (pointer_expression "*(mp_srcptr *)(puVar16 + -8)" * (cast_expression "(mp_srcptr *)(puVar16 + -8)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -8)" ( (binary_expression "puVar16 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(puVar16 + -0xc) = prodp;" (assignment_expression "*(mp_ptr *)(puVar16 + -0xc) = prodp" (pointer_expression "*(mp_ptr *)(puVar16 + -0xc)" * (cast_expression "(mp_ptr *)(puVar16 + -0xc)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(puVar16 + -0x10) = prodp;" (assignment_expression "*(mp_ptr *)(puVar16 + -0x10) = prodp" (pointer_expression "*(mp_ptr *)(puVar16 + -0x10)" * (cast_expression "(mp_ptr *)(puVar16 + -0x10)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "pcVar4 = (code *)*pmVar11;" (assignment_expression "pcVar4 = (code *)*pmVar11" identifier = (cast_expression "(code *)*pmVar11" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*pmVar11" * identifier))) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x14) = 0x4776e;" (assignment_expression "*(undefined4 *)(puVar16 + -0x14) = 0x4776e" (pointer_expression "*(undefined4 *)(puVar16 + -0x14)" * (cast_expression "(undefined4 *)(puVar16 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "local_a8 = (mp_srcptr)(*pcVar4)();" (assignment_expression "local_a8 = (mp_srcptr)(*pcVar4)()" identifier = (call_expression "(mp_srcptr)(*pcVar4)()" (call_expression "(mp_srcptr)(*pcVar4)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) ))) (argument_list "()" ( )))) ;) (expression_statement "pmVar11 = local_a0;" (assignment_expression "pmVar11 = local_a0" identifier = identifier) ;) (expression_statement "puVar13 = (uint *)((int)local_ac + (int)prodp);" (assignment_expression "puVar13 = (uint *)((int)local_ac + (int)prodp)" identifier = (cast_expression "(uint *)((int)local_ac + (int)prodp)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_ac + (int)prodp)" ( (binary_expression "(int)local_ac + (int)prodp" (cast_expression "(int)local_ac" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)prodp" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -8) = local_b4;" (assignment_expression "*(mp_srcptr *)(puVar16 + -8) = local_b4" (pointer_expression "*(mp_srcptr *)(puVar16 + -8)" * (cast_expression "(mp_srcptr *)(puVar16 + -8)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -8)" ( (binary_expression "puVar16 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_a4 = puVar13;" (assignment_expression "local_a4 = puVar13" identifier = identifier) ;) (expression_statement "*(void **)(puVar16 + -0xc) = local_c0;" (assignment_expression "*(void **)(puVar16 + -0xc) = local_c0" (pointer_expression "*(void **)(puVar16 + -0xc)" * (cast_expression "(void **)(puVar16 + -0xc)" ( (type_descriptor "void **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar16 + -0x10) = puVar13;" (assignment_expression "*(uint **)(puVar16 + -0x10) = puVar13" (pointer_expression "*(uint **)(puVar16 + -0x10)" * (cast_expression "(uint **)(puVar16 + -0x10)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "pcVar4 = (code *)pmVar11[10];" (assignment_expression "pcVar4 = (code *)pmVar11[10]" identifier = (cast_expression "(code *)pmVar11[10]" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "pmVar11[10]" identifier [ number_literal ]))) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x14) = 0x4779b;" (assignment_expression "*(undefined4 *)(puVar16 + -0x14) = 0x4779b" (pointer_expression "*(undefined4 *)(puVar16 + -0x14)" * (cast_expression "(undefined4 *)(puVar16 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(*pcVar4)();" (call_expression "(*pcVar4)()" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "uVar9 = *local_a4;" (assignment_expression "uVar9 = *local_a4" identifier = (pointer_expression "*local_a4" * identifier)) ;) (expression_statement "*local_a4 = *local_a4 + (int)local_a8;" (assignment_expression "*local_a4 = *local_a4 + (int)local_a8" (pointer_expression "*local_a4" * identifier) = (binary_expression "*local_a4 + (int)local_a8" (pointer_expression "*local_a4" * identifier) + (cast_expression "(int)local_a8" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "puVar13 = local_a4;" (assignment_expression "puVar13 = local_a4" identifier = identifier) ;) (if_statement "if (CARRY4(uVar9,(uint)local_a8)) {\n          do {\n            puVar14 = puVar13 + 1;\n            uVar9 = *puVar14;\n            *puVar14 = *puVar14 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }" if (parenthesized_expression "(CARRY4(uVar9,(uint)local_a8))" ( (call_expression "CARRY4(uVar9,(uint)local_a8)" identifier (argument_list "(uVar9,(uint)local_a8)" ( identifier , (cast_expression "(uint)local_a8" ( (type_descriptor "uint" type_identifier) ) identifier) ))) )) (compound_statement "{\n          do {\n            puVar14 = puVar13 + 1;\n            uVar9 = *puVar14;\n            *puVar14 = *puVar14 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }" { (do_statement "do {\n            puVar14 = puVar13 + 1;\n            uVar9 = *puVar14;\n            *puVar14 = *puVar14 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);" do (compound_statement "{\n            puVar14 = puVar13 + 1;\n            uVar9 = *puVar14;\n            *puVar14 = *puVar14 + 1;\n            puVar13 = puVar13 + 1;\n          }" { (expression_statement "puVar14 = puVar13 + 1;" (assignment_expression "puVar14 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar14;" (assignment_expression "uVar9 = *puVar14" identifier = (pointer_expression "*puVar14" * identifier)) ;) (expression_statement "*puVar14 = *puVar14 + 1;" (assignment_expression "*puVar14 = *puVar14 + 1" (pointer_expression "*puVar14" * identifier) = (binary_expression "*puVar14 + 1" (pointer_expression "*puVar14" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "local_ac = (mp_srcptr)(vn + (int)local_b4);" (assignment_expression "local_ac = (mp_srcptr)(vn + (int)local_b4)" identifier = (call_expression "(mp_srcptr)(vn + (int)local_b4)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(vn + (int)local_b4)" ( (binary_expression "vn + (int)local_b4" identifier + (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) }) (else_clause "else if (un * 6 < (int)local_b0) {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47d4a;\n        __gmpn_toom33_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else if (SBORROW4((int)local_a8,vn * 3) == (int)local_a8 + vn * -3 < 0) {\n        if (un * 6 < vn * 0xb) {\n          if (un * 4 < (int)local_b0) {\n            if (vn < 0x6e) goto LAB_00047dab;\n          }\n          else if (vn < 100) goto LAB_00047e74;\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47d26;\n          __gmpn_toom53_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else if (vn < 0x6e) {\nLAB_00047e74:\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e8e;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n      }\n      else if (vn < 100) {\nLAB_00047dab:\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47dc5;\n        __gmpn_toom32_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47a39;\n        __gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }" else (if_statement "if (un * 6 < (int)local_b0) {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47d4a;\n        __gmpn_toom33_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else if (SBORROW4((int)local_a8,vn * 3) == (int)local_a8 + vn * -3 < 0) {\n        if (un * 6 < vn * 0xb) {\n          if (un * 4 < (int)local_b0) {\n            if (vn < 0x6e) goto LAB_00047dab;\n          }\n          else if (vn < 100) goto LAB_00047e74;\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47d26;\n          __gmpn_toom53_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else if (vn < 0x6e) {\nLAB_00047e74:\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e8e;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n      }\n      else if (vn < 100) {\nLAB_00047dab:\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47dc5;\n        __gmpn_toom32_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47a39;\n        __gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }" if (parenthesized_expression "(un * 6 < (int)local_b0)" ( (binary_expression "un * 6 < (int)local_b0" (binary_expression "un * 6" identifier * number_literal) < (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47d4a;\n        __gmpn_toom33_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }" { (expression_statement "*(uint **)(puVar16 + -0xc) = local_b8;" (assignment_expression "*(uint **)(puVar16 + -0xc) = local_b8" (pointer_expression "*(uint **)(puVar16 + -0xc)" * (cast_expression "(uint **)(puVar16 + -0xc)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(puVar16 + -0x10) = vn;" (assignment_expression "*(mp_size_t *)(puVar16 + -0x10) = vn" (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar16 + -0x14) = local_a4;" (assignment_expression "*(uint **)(puVar16 + -0x14) = local_a4" (pointer_expression "*(uint **)(puVar16 + -0x14)" * (cast_expression "(uint **)(puVar16 + -0x14)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(puVar16 + -0x18) = un;" (assignment_expression "*(mp_size_t *)(puVar16 + -0x18) = un" (pointer_expression "*(mp_size_t *)(puVar16 + -0x18)" * (cast_expression "(mp_size_t *)(puVar16 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -0x1c) = up;" (assignment_expression "*(mp_srcptr *)(puVar16 + -0x1c) = up" (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(puVar16 + -0x20) = prodp;" (assignment_expression "*(mp_ptr *)(puVar16 + -0x20) = prodp" (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x24) = 0x47d4a;" (assignment_expression "*(undefined4 *)(puVar16 + -0x24) = 0x47d4a" (pointer_expression "*(undefined4 *)(puVar16 + -0x24)" * (cast_expression "(undefined4 *)(puVar16 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x24)" ( (binary_expression "puVar16 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom33_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));" (call_expression "__gmpn_toom33_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" identifier (argument_list "(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" ( (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x18)" * (cast_expression "(mp_size_t *)(puVar16 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x14)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x14)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(mp_ptr *)(puVar16 + -0xc)" * (cast_expression "(mp_ptr *)(puVar16 + -0xc)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) ))) ;) }) (else_clause "else if (SBORROW4((int)local_a8,vn * 3) == (int)local_a8 + vn * -3 < 0) {\n        if (un * 6 < vn * 0xb) {\n          if (un * 4 < (int)local_b0) {\n            if (vn < 0x6e) goto LAB_00047dab;\n          }\n          else if (vn < 100) goto LAB_00047e74;\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47d26;\n          __gmpn_toom53_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else if (vn < 0x6e) {\nLAB_00047e74:\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e8e;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n      }\n      else if (vn < 100) {\nLAB_00047dab:\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47dc5;\n        __gmpn_toom32_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47a39;\n        __gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }" else (if_statement "if (SBORROW4((int)local_a8,vn * 3) == (int)local_a8 + vn * -3 < 0) {\n        if (un * 6 < vn * 0xb) {\n          if (un * 4 < (int)local_b0) {\n            if (vn < 0x6e) goto LAB_00047dab;\n          }\n          else if (vn < 100) goto LAB_00047e74;\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47d26;\n          __gmpn_toom53_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else if (vn < 0x6e) {\nLAB_00047e74:\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e8e;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n      }\n      else if (vn < 100) {\nLAB_00047dab:\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47dc5;\n        __gmpn_toom32_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47a39;\n        __gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }" if (parenthesized_expression "(SBORROW4((int)local_a8,vn * 3) == (int)local_a8 + vn * -3 < 0)" ( (binary_expression "SBORROW4((int)local_a8,vn * 3) == (int)local_a8 + vn * -3 < 0" (call_expression "SBORROW4((int)local_a8,vn * 3)" identifier (argument_list "((int)local_a8,vn * 3)" ( (cast_expression "(int)local_a8" ( (type_descriptor "int" primitive_type) ) identifier) , (binary_expression "vn * 3" identifier * number_literal) ))) == (binary_expression "(int)local_a8 + vn * -3 < 0" (binary_expression "(int)local_a8 + vn * -3" (cast_expression "(int)local_a8" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "vn * -3" identifier * number_literal)) < number_literal)) )) (compound_statement "{\n        if (un * 6 < vn * 0xb) {\n          if (un * 4 < (int)local_b0) {\n            if (vn < 0x6e) goto LAB_00047dab;\n          }\n          else if (vn < 100) goto LAB_00047e74;\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47d26;\n          __gmpn_toom53_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else if (vn < 0x6e) {\nLAB_00047e74:\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e8e;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n      }" { (if_statement "if (un * 6 < vn * 0xb) {\n          if (un * 4 < (int)local_b0) {\n            if (vn < 0x6e) goto LAB_00047dab;\n          }\n          else if (vn < 100) goto LAB_00047e74;\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47d26;\n          __gmpn_toom53_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else if (vn < 0x6e) {\nLAB_00047e74:\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e8e;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }" if (parenthesized_expression "(un * 6 < vn * 0xb)" ( (binary_expression "un * 6 < vn * 0xb" (binary_expression "un * 6" identifier * number_literal) < (binary_expression "vn * 0xb" identifier * number_literal)) )) (compound_statement "{\n          if (un * 4 < (int)local_b0) {\n            if (vn < 0x6e) goto LAB_00047dab;\n          }\n          else if (vn < 100) goto LAB_00047e74;\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47d26;\n          __gmpn_toom53_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }" { (if_statement "if (un * 4 < (int)local_b0) {\n            if (vn < 0x6e) goto LAB_00047dab;\n          }\n          else if (vn < 100) goto LAB_00047e74;" if (parenthesized_expression "(un * 4 < (int)local_b0)" ( (binary_expression "un * 4 < (int)local_b0" (binary_expression "un * 4" identifier * number_literal) < (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n            if (vn < 0x6e) goto LAB_00047dab;\n          }" { (if_statement "if (vn < 0x6e) goto LAB_00047dab;" if (parenthesized_expression "(vn < 0x6e)" ( (binary_expression "vn < 0x6e" identifier < number_literal) )) (goto_statement "goto LAB_00047dab;" goto statement_identifier ;)) }) (else_clause "else if (vn < 100) goto LAB_00047e74;" else (if_statement "if (vn < 100) goto LAB_00047e74;" if (parenthesized_expression "(vn < 100)" ( (binary_expression "vn < 100" identifier < number_literal) )) (goto_statement "goto LAB_00047e74;" goto statement_identifier ;)))) (expression_statement "*(uint **)(puVar16 + -0xc) = local_b8;" (assignment_expression "*(uint **)(puVar16 + -0xc) = local_b8" (pointer_expression "*(uint **)(puVar16 + -0xc)" * (cast_expression "(uint **)(puVar16 + -0xc)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(puVar16 + -0x10) = vn;" (assignment_expression "*(mp_size_t *)(puVar16 + -0x10) = vn" (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar16 + -0x14) = local_a4;" (assignment_expression "*(uint **)(puVar16 + -0x14) = local_a4" (pointer_expression "*(uint **)(puVar16 + -0x14)" * (cast_expression "(uint **)(puVar16 + -0x14)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(puVar16 + -0x18) = un;" (assignment_expression "*(mp_size_t *)(puVar16 + -0x18) = un" (pointer_expression "*(mp_size_t *)(puVar16 + -0x18)" * (cast_expression "(mp_size_t *)(puVar16 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -0x1c) = up;" (assignment_expression "*(mp_srcptr *)(puVar16 + -0x1c) = up" (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(puVar16 + -0x20) = prodp;" (assignment_expression "*(mp_ptr *)(puVar16 + -0x20) = prodp" (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x24) = 0x47d26;" (assignment_expression "*(undefined4 *)(puVar16 + -0x24) = 0x47d26" (pointer_expression "*(undefined4 *)(puVar16 + -0x24)" * (cast_expression "(undefined4 *)(puVar16 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x24)" ( (binary_expression "puVar16 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom53_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));" (call_expression "__gmpn_toom53_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" identifier (argument_list "(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" ( (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x18)" * (cast_expression "(mp_size_t *)(puVar16 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x14)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x14)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(mp_ptr *)(puVar16 + -0xc)" * (cast_expression "(mp_ptr *)(puVar16 + -0xc)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) ))) ;) }) (else_clause "else if (vn < 0x6e) {\nLAB_00047e74:\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e8e;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }" else (if_statement "if (vn < 0x6e) {\nLAB_00047e74:\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e8e;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }\n        else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }" if (parenthesized_expression "(vn < 0x6e)" ( (binary_expression "vn < 0x6e" identifier < number_literal) )) (compound_statement "{\nLAB_00047e74:\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e8e;\n          __gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }" { (labeled_statement "LAB_00047e74:\n          *(uint **)(puVar16 + -0xc) = local_b8;" statement_identifier : (expression_statement "*(uint **)(puVar16 + -0xc) = local_b8;" (assignment_expression "*(uint **)(puVar16 + -0xc) = local_b8" (pointer_expression "*(uint **)(puVar16 + -0xc)" * (cast_expression "(uint **)(puVar16 + -0xc)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(mp_size_t *)(puVar16 + -0x10) = vn;" (assignment_expression "*(mp_size_t *)(puVar16 + -0x10) = vn" (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar16 + -0x14) = local_a4;" (assignment_expression "*(uint **)(puVar16 + -0x14) = local_a4" (pointer_expression "*(uint **)(puVar16 + -0x14)" * (cast_expression "(uint **)(puVar16 + -0x14)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(puVar16 + -0x18) = un;" (assignment_expression "*(mp_size_t *)(puVar16 + -0x18) = un" (pointer_expression "*(mp_size_t *)(puVar16 + -0x18)" * (cast_expression "(mp_size_t *)(puVar16 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -0x1c) = up;" (assignment_expression "*(mp_srcptr *)(puVar16 + -0x1c) = up" (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(puVar16 + -0x20) = prodp;" (assignment_expression "*(mp_ptr *)(puVar16 + -0x20) = prodp" (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x24) = 0x47e8e;" (assignment_expression "*(undefined4 *)(puVar16 + -0x24) = 0x47e8e" (pointer_expression "*(undefined4 *)(puVar16 + -0x24)" * (cast_expression "(undefined4 *)(puVar16 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x24)" ( (binary_expression "puVar16 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));" (call_expression "__gmpn_toom42_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" identifier (argument_list "(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" ( (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x18)" * (cast_expression "(mp_size_t *)(puVar16 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x14)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x14)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(mp_ptr *)(puVar16 + -0xc)" * (cast_expression "(mp_ptr *)(puVar16 + -0xc)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) ))) ;) }) (else_clause "else {\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }" else (compound_statement "{\n          *(uint **)(puVar16 + -0xc) = local_b8;\n          *(mp_size_t *)(puVar16 + -0x10) = vn;\n          *(uint **)(puVar16 + -0x14) = local_a4;\n          *(mp_size_t *)(puVar16 + -0x18) = un;\n          *(mp_srcptr *)(puVar16 + -0x1c) = up;\n          *(mp_ptr *)(puVar16 + -0x20) = prodp;\n          *(undefined4 *)(puVar16 + -0x24) = 0x47e27;\n          __gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n        }" { (expression_statement "*(uint **)(puVar16 + -0xc) = local_b8;" (assignment_expression "*(uint **)(puVar16 + -0xc) = local_b8" (pointer_expression "*(uint **)(puVar16 + -0xc)" * (cast_expression "(uint **)(puVar16 + -0xc)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(puVar16 + -0x10) = vn;" (assignment_expression "*(mp_size_t *)(puVar16 + -0x10) = vn" (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar16 + -0x14) = local_a4;" (assignment_expression "*(uint **)(puVar16 + -0x14) = local_a4" (pointer_expression "*(uint **)(puVar16 + -0x14)" * (cast_expression "(uint **)(puVar16 + -0x14)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(puVar16 + -0x18) = un;" (assignment_expression "*(mp_size_t *)(puVar16 + -0x18) = un" (pointer_expression "*(mp_size_t *)(puVar16 + -0x18)" * (cast_expression "(mp_size_t *)(puVar16 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -0x1c) = up;" (assignment_expression "*(mp_srcptr *)(puVar16 + -0x1c) = up" (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(puVar16 + -0x20) = prodp;" (assignment_expression "*(mp_ptr *)(puVar16 + -0x20) = prodp" (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x24) = 0x47e27;" (assignment_expression "*(undefined4 *)(puVar16 + -0x24) = 0x47e27" (pointer_expression "*(undefined4 *)(puVar16 + -0x24)" * (cast_expression "(undefined4 *)(puVar16 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x24)" ( (binary_expression "puVar16 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));" (call_expression "__gmpn_toom63_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" identifier (argument_list "(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                            *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                            *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" ( (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x18)" * (cast_expression "(mp_size_t *)(puVar16 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x14)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x14)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(mp_ptr *)(puVar16 + -0xc)" * (cast_expression "(mp_ptr *)(puVar16 + -0xc)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) ))) ;) }))))) }) (else_clause "else if (vn < 100) {\nLAB_00047dab:\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47dc5;\n        __gmpn_toom32_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47a39;\n        __gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }" else (if_statement "if (vn < 100) {\nLAB_00047dab:\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47dc5;\n        __gmpn_toom32_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }\n      else {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47a39;\n        __gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }" if (parenthesized_expression "(vn < 100)" ( (binary_expression "vn < 100" identifier < number_literal) )) (compound_statement "{\nLAB_00047dab:\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47dc5;\n        __gmpn_toom32_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }" { (labeled_statement "LAB_00047dab:\n        *(uint **)(puVar16 + -0xc) = local_b8;" statement_identifier : (expression_statement "*(uint **)(puVar16 + -0xc) = local_b8;" (assignment_expression "*(uint **)(puVar16 + -0xc) = local_b8" (pointer_expression "*(uint **)(puVar16 + -0xc)" * (cast_expression "(uint **)(puVar16 + -0xc)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) = identifier) ;)) (expression_statement "*(mp_size_t *)(puVar16 + -0x10) = vn;" (assignment_expression "*(mp_size_t *)(puVar16 + -0x10) = vn" (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar16 + -0x14) = local_a4;" (assignment_expression "*(uint **)(puVar16 + -0x14) = local_a4" (pointer_expression "*(uint **)(puVar16 + -0x14)" * (cast_expression "(uint **)(puVar16 + -0x14)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(puVar16 + -0x18) = un;" (assignment_expression "*(mp_size_t *)(puVar16 + -0x18) = un" (pointer_expression "*(mp_size_t *)(puVar16 + -0x18)" * (cast_expression "(mp_size_t *)(puVar16 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -0x1c) = up;" (assignment_expression "*(mp_srcptr *)(puVar16 + -0x1c) = up" (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(puVar16 + -0x20) = prodp;" (assignment_expression "*(mp_ptr *)(puVar16 + -0x20) = prodp" (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x24) = 0x47dc5;" (assignment_expression "*(undefined4 *)(puVar16 + -0x24) = 0x47dc5" (pointer_expression "*(undefined4 *)(puVar16 + -0x24)" * (cast_expression "(undefined4 *)(puVar16 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x24)" ( (binary_expression "puVar16 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom32_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));" (call_expression "__gmpn_toom32_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" identifier (argument_list "(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" ( (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x18)" * (cast_expression "(mp_size_t *)(puVar16 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x14)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x14)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(mp_ptr *)(puVar16 + -0xc)" * (cast_expression "(mp_ptr *)(puVar16 + -0xc)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) ))) ;) }) (else_clause "else {\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47a39;\n        __gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }" else (compound_statement "{\n        *(uint **)(puVar16 + -0xc) = local_b8;\n        *(mp_size_t *)(puVar16 + -0x10) = vn;\n        *(uint **)(puVar16 + -0x14) = local_a4;\n        *(mp_size_t *)(puVar16 + -0x18) = un;\n        *(mp_srcptr *)(puVar16 + -0x1c) = up;\n        *(mp_ptr *)(puVar16 + -0x20) = prodp;\n        *(undefined4 *)(puVar16 + -0x24) = 0x47a39;\n        __gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));\n      }" { (expression_statement "*(uint **)(puVar16 + -0xc) = local_b8;" (assignment_expression "*(uint **)(puVar16 + -0xc) = local_b8" (pointer_expression "*(uint **)(puVar16 + -0xc)" * (cast_expression "(uint **)(puVar16 + -0xc)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(puVar16 + -0x10) = vn;" (assignment_expression "*(mp_size_t *)(puVar16 + -0x10) = vn" (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint **)(puVar16 + -0x14) = local_a4;" (assignment_expression "*(uint **)(puVar16 + -0x14) = local_a4" (pointer_expression "*(uint **)(puVar16 + -0x14)" * (cast_expression "(uint **)(puVar16 + -0x14)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_size_t *)(puVar16 + -0x18) = un;" (assignment_expression "*(mp_size_t *)(puVar16 + -0x18) = un" (pointer_expression "*(mp_size_t *)(puVar16 + -0x18)" * (cast_expression "(mp_size_t *)(puVar16 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_srcptr *)(puVar16 + -0x1c) = up;" (assignment_expression "*(mp_srcptr *)(puVar16 + -0x1c) = up" (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(mp_ptr *)(puVar16 + -0x20) = prodp;" (assignment_expression "*(mp_ptr *)(puVar16 + -0x20) = prodp" (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x24) = 0x47a39;" (assignment_expression "*(undefined4 *)(puVar16 + -0x24) = 0x47a39" (pointer_expression "*(undefined4 *)(puVar16 + -0x24)" * (cast_expression "(undefined4 *)(puVar16 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x24)" ( (binary_expression "puVar16 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc));" (call_expression "__gmpn_toom43_mul(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" identifier (argument_list "(*(mp_ptr *)(puVar16 + -0x20),*(mp_srcptr *)(puVar16 + -0x1c),\n                          *(mp_size_t *)(puVar16 + -0x18),*(mp_srcptr *)(puVar16 + -0x14),\n                          *(mp_size_t *)(puVar16 + -0x10),*(mp_ptr *)(puVar16 + -0xc))" ( (pointer_expression "*(mp_ptr *)(puVar16 + -0x20)" * (cast_expression "(mp_ptr *)(puVar16 + -0x20)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x20)" ( (binary_expression "puVar16 + -0x20" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x1c)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x1c)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x1c)" ( (binary_expression "puVar16 + -0x1c" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x18)" * (cast_expression "(mp_size_t *)(puVar16 + -0x18)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x18)" ( (binary_expression "puVar16 + -0x18" identifier + number_literal) )))) , (pointer_expression "*(mp_srcptr *)(puVar16 + -0x14)" * (cast_expression "(mp_srcptr *)(puVar16 + -0x14)" ( (type_descriptor "mp_srcptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) , (pointer_expression "*(mp_size_t *)(puVar16 + -0x10)" * (cast_expression "(mp_size_t *)(puVar16 + -0x10)" ( (type_descriptor "mp_size_t *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(mp_ptr *)(puVar16 + -0xc)" * (cast_expression "(mp_ptr *)(puVar16 + -0xc)" ( (type_descriptor "mp_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0xc)" ( (binary_expression "puVar16 + -0xc" identifier + number_literal) )))) ))) ;) }))))))))) (if_statement "if (__tmp_marker != (tmp_reentrant_t *)0x0) {\n        *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n        *(undefined4 *)(puVar16 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n      }" if (parenthesized_expression "(__tmp_marker != (tmp_reentrant_t *)0x0)" ( (binary_expression "__tmp_marker != (tmp_reentrant_t *)0x0" identifier != (cast_expression "(tmp_reentrant_t *)0x0" ( (type_descriptor "tmp_reentrant_t *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        *(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;\n        *(undefined4 *)(puVar16 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));\n      }" { (expression_statement "*(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker;" (assignment_expression "*(tmp_reentrant_t **)(puVar16 + -0x10) = __tmp_marker" (pointer_expression "*(tmp_reentrant_t **)(puVar16 + -0x10)" * (cast_expression "(tmp_reentrant_t **)(puVar16 + -0x10)" ( (type_descriptor "tmp_reentrant_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar16 + -0x14) = 0x47e00;" (assignment_expression "*(undefined4 *)(puVar16 + -0x14) = 0x47e00" (pointer_expression "*(undefined4 *)(puVar16 + -0x14)" * (cast_expression "(undefined4 *)(puVar16 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -0x14)" ( (binary_expression "puVar16 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10));" (call_expression "__gmp_tmp_reentrant_free(*(tmp_reentrant_t **)(puVar16 + -0x10))" identifier (argument_list "(*(tmp_reentrant_t **)(puVar16 + -0x10))" ( (pointer_expression "*(tmp_reentrant_t **)(puVar16 + -0x10)" * (cast_expression "(tmp_reentrant_t **)(puVar16 + -0x10)" ( (type_descriptor "tmp_reentrant_t **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar16 + -0x10)" ( (binary_expression "puVar16 + -0x10" identifier + number_literal) )))) ))) ;) })) (expression_statement "local_a0 = local_ac;" (assignment_expression "local_a0 = local_ac" identifier = identifier) ;) (goto_statement "goto LAB_000471aa;" goto statement_identifier ;) })) }))) (expression_statement "local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94;" (assignment_expression "local_a0 = (mp_srcptr)PTR___gmpn_cpuvec_0009dd94" identifier = (cast_expression "(mp_srcptr)PTR___gmpn_cpuvec_0009dd94" ( (type_descriptor "mp_srcptr" type_identifier) ) identifier)) ;) (if_statement "if ((un < 0x1f5) || (vn == 1)) {\n    amStackY_8010[0x1fc4] = 0x47451;\n    (**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68))();\n    local_a0 = (mp_srcptr)(vn + un);\n    puVar16 = auStack_dc;\n  }\n  else {\n    prodp = prodp + 500;\n    amStackY_8010[0x1fc4] = 0x46f33;\n    local_ac = up;\n    (**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68))();\n    local_a8 = tp;\n    (*(code *)local_a0[10])();\n    local_b0 = (mp_srcptr)(vn * 4);\n    pmVar11 = (mp_srcptr)(un + -500);\n    while (500 < (int)pmVar11) {\n      amStackY_8010[0x1fc4] = 0x46fa8;\n      local_ac = pmVar11;\n      (*(code *)local_a0[0x1a])();\n      uVar8 = (*(code *)*local_a0)();\n      puVar13 = (uint *)((int)prodp + (int)local_b0);\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar14 = puVar13 + 1;\n          uVar9 = *puVar14;\n          *puVar14 = *puVar14 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      prodp = prodp + 500;\n      (*(code *)local_a0[10])();\n      pmVar11 = local_ac + -0x7d;\n    }\n    if (vn < (int)pmVar11) {\n      amStackY_8010[0x1fc4] = 0x47033;\n      (*(code *)local_a0[0x1a])();\n    }\n    else {\n      amStackY_8010[0x1fc4] = 0x477f7;\n      (*(code *)local_a0[0x1a])();\n    }\n    uVar8 = (*(code *)*local_a0)();\n    puVar13 = (uint *)((int)local_b0 + (int)prodp);\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar14 = puVar13 + 1;\n        uVar9 = *puVar14;\n        *puVar14 = *puVar14 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    local_a0 = (mp_srcptr)(vn + (int)pmVar11);\n    puVar16 = auStack_dc;\n  }" if (parenthesized_expression "((un < 0x1f5) || (vn == 1))" ( (binary_expression "(un < 0x1f5) || (vn == 1)" (parenthesized_expression "(un < 0x1f5)" ( (binary_expression "un < 0x1f5" identifier < number_literal) )) || (parenthesized_expression "(vn == 1)" ( (binary_expression "vn == 1" identifier == number_literal) ))) )) (compound_statement "{\n    amStackY_8010[0x1fc4] = 0x47451;\n    (**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68))();\n    local_a0 = (mp_srcptr)(vn + un);\n    puVar16 = auStack_dc;\n  }" { (expression_statement "amStackY_8010[0x1fc4] = 0x47451;" (assignment_expression "amStackY_8010[0x1fc4] = 0x47451" (subscript_expression "amStackY_8010[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "(**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68))();" (call_expression "(**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68))()" (parenthesized_expression "(**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68))" ( (pointer_expression "**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68)" * (pointer_expression "*(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68)" * (cast_expression "(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(PTR___gmpn_cpuvec_0009dd94 + 0x68)" ( (binary_expression "PTR___gmpn_cpuvec_0009dd94 + 0x68" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "local_a0 = (mp_srcptr)(vn + un);" (assignment_expression "local_a0 = (mp_srcptr)(vn + un)" identifier = (call_expression "(mp_srcptr)(vn + un)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(vn + un)" ( (binary_expression "vn + un" identifier + identifier) )))) ;) (expression_statement "puVar16 = auStack_dc;" (assignment_expression "puVar16 = auStack_dc" identifier = identifier) ;) }) (else_clause "else {\n    prodp = prodp + 500;\n    amStackY_8010[0x1fc4] = 0x46f33;\n    local_ac = up;\n    (**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68))();\n    local_a8 = tp;\n    (*(code *)local_a0[10])();\n    local_b0 = (mp_srcptr)(vn * 4);\n    pmVar11 = (mp_srcptr)(un + -500);\n    while (500 < (int)pmVar11) {\n      amStackY_8010[0x1fc4] = 0x46fa8;\n      local_ac = pmVar11;\n      (*(code *)local_a0[0x1a])();\n      uVar8 = (*(code *)*local_a0)();\n      puVar13 = (uint *)((int)prodp + (int)local_b0);\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar14 = puVar13 + 1;\n          uVar9 = *puVar14;\n          *puVar14 = *puVar14 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      prodp = prodp + 500;\n      (*(code *)local_a0[10])();\n      pmVar11 = local_ac + -0x7d;\n    }\n    if (vn < (int)pmVar11) {\n      amStackY_8010[0x1fc4] = 0x47033;\n      (*(code *)local_a0[0x1a])();\n    }\n    else {\n      amStackY_8010[0x1fc4] = 0x477f7;\n      (*(code *)local_a0[0x1a])();\n    }\n    uVar8 = (*(code *)*local_a0)();\n    puVar13 = (uint *)((int)local_b0 + (int)prodp);\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar14 = puVar13 + 1;\n        uVar9 = *puVar14;\n        *puVar14 = *puVar14 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    local_a0 = (mp_srcptr)(vn + (int)pmVar11);\n    puVar16 = auStack_dc;\n  }" else (compound_statement "{\n    prodp = prodp + 500;\n    amStackY_8010[0x1fc4] = 0x46f33;\n    local_ac = up;\n    (**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68))();\n    local_a8 = tp;\n    (*(code *)local_a0[10])();\n    local_b0 = (mp_srcptr)(vn * 4);\n    pmVar11 = (mp_srcptr)(un + -500);\n    while (500 < (int)pmVar11) {\n      amStackY_8010[0x1fc4] = 0x46fa8;\n      local_ac = pmVar11;\n      (*(code *)local_a0[0x1a])();\n      uVar8 = (*(code *)*local_a0)();\n      puVar13 = (uint *)((int)prodp + (int)local_b0);\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar14 = puVar13 + 1;\n          uVar9 = *puVar14;\n          *puVar14 = *puVar14 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      prodp = prodp + 500;\n      (*(code *)local_a0[10])();\n      pmVar11 = local_ac + -0x7d;\n    }\n    if (vn < (int)pmVar11) {\n      amStackY_8010[0x1fc4] = 0x47033;\n      (*(code *)local_a0[0x1a])();\n    }\n    else {\n      amStackY_8010[0x1fc4] = 0x477f7;\n      (*(code *)local_a0[0x1a])();\n    }\n    uVar8 = (*(code *)*local_a0)();\n    puVar13 = (uint *)((int)local_b0 + (int)prodp);\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar14 = puVar13 + 1;\n        uVar9 = *puVar14;\n        *puVar14 = *puVar14 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    local_a0 = (mp_srcptr)(vn + (int)pmVar11);\n    puVar16 = auStack_dc;\n  }" { (expression_statement "prodp = prodp + 500;" (assignment_expression "prodp = prodp + 500" identifier = (binary_expression "prodp + 500" identifier + number_literal)) ;) (expression_statement "amStackY_8010[0x1fc4] = 0x46f33;" (assignment_expression "amStackY_8010[0x1fc4] = 0x46f33" (subscript_expression "amStackY_8010[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "local_ac = up;" (assignment_expression "local_ac = up" identifier = identifier) ;) (expression_statement "(**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68))();" (call_expression "(**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68))()" (parenthesized_expression "(**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68))" ( (pointer_expression "**(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68)" * (pointer_expression "*(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68)" * (cast_expression "(code **)(PTR___gmpn_cpuvec_0009dd94 + 0x68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(PTR___gmpn_cpuvec_0009dd94 + 0x68)" ( (binary_expression "PTR___gmpn_cpuvec_0009dd94 + 0x68" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "local_a8 = tp;" (assignment_expression "local_a8 = tp" identifier = identifier) ;) (expression_statement "(*(code *)local_a0[10])();" (call_expression "(*(code *)local_a0[10])()" (parenthesized_expression "(*(code *)local_a0[10])" ( (pointer_expression "*(code *)local_a0[10]" * (cast_expression "(code *)local_a0[10]" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "local_a0[10]" identifier [ number_literal ]))) )) (argument_list "()" ( ))) ;) (expression_statement "local_b0 = (mp_srcptr)(vn * 4);" (assignment_expression "local_b0 = (mp_srcptr)(vn * 4)" identifier = (call_expression "(mp_srcptr)(vn * 4)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(vn * 4)" ( (binary_expression "vn * 4" identifier * number_literal) )))) ;) (expression_statement "pmVar11 = (mp_srcptr)(un + -500);" (assignment_expression "pmVar11 = (mp_srcptr)(un + -500)" identifier = (call_expression "(mp_srcptr)(un + -500)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(un + -500)" ( (binary_expression "un + -500" identifier + number_literal) )))) ;) (while_statement "while (500 < (int)pmVar11) {\n      amStackY_8010[0x1fc4] = 0x46fa8;\n      local_ac = pmVar11;\n      (*(code *)local_a0[0x1a])();\n      uVar8 = (*(code *)*local_a0)();\n      puVar13 = (uint *)((int)prodp + (int)local_b0);\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar14 = puVar13 + 1;\n          uVar9 = *puVar14;\n          *puVar14 = *puVar14 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      prodp = prodp + 500;\n      (*(code *)local_a0[10])();\n      pmVar11 = local_ac + -0x7d;\n    }" while (parenthesized_expression "(500 < (int)pmVar11)" ( (binary_expression "500 < (int)pmVar11" number_literal < (cast_expression "(int)pmVar11" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      amStackY_8010[0x1fc4] = 0x46fa8;\n      local_ac = pmVar11;\n      (*(code *)local_a0[0x1a])();\n      uVar8 = (*(code *)*local_a0)();\n      puVar13 = (uint *)((int)prodp + (int)local_b0);\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar14 = puVar13 + 1;\n          uVar9 = *puVar14;\n          *puVar14 = *puVar14 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      prodp = prodp + 500;\n      (*(code *)local_a0[10])();\n      pmVar11 = local_ac + -0x7d;\n    }" { (expression_statement "amStackY_8010[0x1fc4] = 0x46fa8;" (assignment_expression "amStackY_8010[0x1fc4] = 0x46fa8" (subscript_expression "amStackY_8010[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "local_ac = pmVar11;" (assignment_expression "local_ac = pmVar11" identifier = identifier) ;) (expression_statement "(*(code *)local_a0[0x1a])();" (call_expression "(*(code *)local_a0[0x1a])()" (parenthesized_expression "(*(code *)local_a0[0x1a])" ( (pointer_expression "*(code *)local_a0[0x1a]" * (cast_expression "(code *)local_a0[0x1a]" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "local_a0[0x1a]" identifier [ number_literal ]))) )) (argument_list "()" ( ))) ;) (expression_statement "uVar8 = (*(code *)*local_a0)();" (assignment_expression "uVar8 = (*(code *)*local_a0)()" identifier = (call_expression "(*(code *)*local_a0)()" (parenthesized_expression "(*(code *)*local_a0)" ( (pointer_expression "*(code *)*local_a0" * (cast_expression "(code *)*local_a0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_a0" * identifier))) )) (argument_list "()" ( )))) ;) (expression_statement "puVar13 = (uint *)((int)prodp + (int)local_b0);" (assignment_expression "puVar13 = (uint *)((int)prodp + (int)local_b0)" identifier = (cast_expression "(uint *)((int)prodp + (int)local_b0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)prodp + (int)local_b0)" ( (binary_expression "(int)prodp + (int)local_b0" (cast_expression "(int)prodp" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar14 = puVar13 + 1;\n          uVar9 = *puVar14;\n          *puVar14 = *puVar14 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n        do {\n          puVar14 = puVar13 + 1;\n          uVar9 = *puVar14;\n          *puVar14 = *puVar14 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }" { (do_statement "do {\n          puVar14 = puVar13 + 1;\n          uVar9 = *puVar14;\n          *puVar14 = *puVar14 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);" do (compound_statement "{\n          puVar14 = puVar13 + 1;\n          uVar9 = *puVar14;\n          *puVar14 = *puVar14 + 1;\n          puVar13 = puVar13 + 1;\n        }" { (expression_statement "puVar14 = puVar13 + 1;" (assignment_expression "puVar14 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar14;" (assignment_expression "uVar9 = *puVar14" identifier = (pointer_expression "*puVar14" * identifier)) ;) (expression_statement "*puVar14 = *puVar14 + 1;" (assignment_expression "*puVar14 = *puVar14 + 1" (pointer_expression "*puVar14" * identifier) = (binary_expression "*puVar14 + 1" (pointer_expression "*puVar14" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "prodp = prodp + 500;" (assignment_expression "prodp = prodp + 500" identifier = (binary_expression "prodp + 500" identifier + number_literal)) ;) (expression_statement "(*(code *)local_a0[10])();" (call_expression "(*(code *)local_a0[10])()" (parenthesized_expression "(*(code *)local_a0[10])" ( (pointer_expression "*(code *)local_a0[10]" * (cast_expression "(code *)local_a0[10]" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "local_a0[10]" identifier [ number_literal ]))) )) (argument_list "()" ( ))) ;) (expression_statement "pmVar11 = local_ac + -0x7d;" (assignment_expression "pmVar11 = local_ac + -0x7d" identifier = (binary_expression "local_ac + -0x7d" identifier + number_literal)) ;) })) (if_statement "if (vn < (int)pmVar11) {\n      amStackY_8010[0x1fc4] = 0x47033;\n      (*(code *)local_a0[0x1a])();\n    }\n    else {\n      amStackY_8010[0x1fc4] = 0x477f7;\n      (*(code *)local_a0[0x1a])();\n    }" if (parenthesized_expression "(vn < (int)pmVar11)" ( (binary_expression "vn < (int)pmVar11" identifier < (cast_expression "(int)pmVar11" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      amStackY_8010[0x1fc4] = 0x47033;\n      (*(code *)local_a0[0x1a])();\n    }" { (expression_statement "amStackY_8010[0x1fc4] = 0x47033;" (assignment_expression "amStackY_8010[0x1fc4] = 0x47033" (subscript_expression "amStackY_8010[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "(*(code *)local_a0[0x1a])();" (call_expression "(*(code *)local_a0[0x1a])()" (parenthesized_expression "(*(code *)local_a0[0x1a])" ( (pointer_expression "*(code *)local_a0[0x1a]" * (cast_expression "(code *)local_a0[0x1a]" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "local_a0[0x1a]" identifier [ number_literal ]))) )) (argument_list "()" ( ))) ;) }) (else_clause "else {\n      amStackY_8010[0x1fc4] = 0x477f7;\n      (*(code *)local_a0[0x1a])();\n    }" else (compound_statement "{\n      amStackY_8010[0x1fc4] = 0x477f7;\n      (*(code *)local_a0[0x1a])();\n    }" { (expression_statement "amStackY_8010[0x1fc4] = 0x477f7;" (assignment_expression "amStackY_8010[0x1fc4] = 0x477f7" (subscript_expression "amStackY_8010[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "(*(code *)local_a0[0x1a])();" (call_expression "(*(code *)local_a0[0x1a])()" (parenthesized_expression "(*(code *)local_a0[0x1a])" ( (pointer_expression "*(code *)local_a0[0x1a]" * (cast_expression "(code *)local_a0[0x1a]" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "local_a0[0x1a]" identifier [ number_literal ]))) )) (argument_list "()" ( ))) ;) }))) (expression_statement "uVar8 = (*(code *)*local_a0)();" (assignment_expression "uVar8 = (*(code *)*local_a0)()" identifier = (call_expression "(*(code *)*local_a0)()" (parenthesized_expression "(*(code *)*local_a0)" ( (pointer_expression "*(code *)*local_a0" * (cast_expression "(code *)*local_a0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_a0" * identifier))) )) (argument_list "()" ( )))) ;) (expression_statement "puVar13 = (uint *)((int)local_b0 + (int)prodp);" (assignment_expression "puVar13 = (uint *)((int)local_b0 + (int)prodp)" identifier = (cast_expression "(uint *)((int)local_b0 + (int)prodp)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b0 + (int)prodp)" ( (binary_expression "(int)local_b0 + (int)prodp" (cast_expression "(int)local_b0" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)prodp" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar14 = puVar13 + 1;\n        uVar9 = *puVar14;\n        *puVar14 = *puVar14 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n      do {\n        puVar14 = puVar13 + 1;\n        uVar9 = *puVar14;\n        *puVar14 = *puVar14 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }" { (do_statement "do {\n        puVar14 = puVar13 + 1;\n        uVar9 = *puVar14;\n        *puVar14 = *puVar14 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);" do (compound_statement "{\n        puVar14 = puVar13 + 1;\n        uVar9 = *puVar14;\n        *puVar14 = *puVar14 + 1;\n        puVar13 = puVar13 + 1;\n      }" { (expression_statement "puVar14 = puVar13 + 1;" (assignment_expression "puVar14 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar14;" (assignment_expression "uVar9 = *puVar14" identifier = (pointer_expression "*puVar14" * identifier)) ;) (expression_statement "*puVar14 = *puVar14 + 1;" (assignment_expression "*puVar14 = *puVar14 + 1" (pointer_expression "*puVar14" * identifier) = (binary_expression "*puVar14 + 1" (pointer_expression "*puVar14" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "local_a0 = (mp_srcptr)(vn + (int)pmVar11);" (assignment_expression "local_a0 = (mp_srcptr)(vn + (int)pmVar11)" identifier = (call_expression "(mp_srcptr)(vn + (int)pmVar11)" (parenthesized_expression "(mp_srcptr)" ( identifier )) (argument_list "(vn + (int)pmVar11)" ( (binary_expression "vn + (int)pmVar11" identifier + (cast_expression "(int)pmVar11" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "puVar16 = auStack_dc;" (assignment_expression "puVar16 = auStack_dc" identifier = identifier) ;) }))) (labeled_statement "LAB_000471aa:\n  if (iVar3 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return prodp[(int)local_a0 + -1];\n  }" statement_identifier : (if_statement "if (iVar3 == *(int *)(in_GS_OFFSET + 0x14)) {\n    return prodp[(int)local_a0 + -1];\n  }" if (parenthesized_expression "(iVar3 == *(int *)(in_GS_OFFSET + 0x14))" ( (binary_expression "iVar3 == *(int *)(in_GS_OFFSET + 0x14)" identifier == (pointer_expression "*(int *)(in_GS_OFFSET + 0x14)" * (cast_expression "(int *)(in_GS_OFFSET + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_GS_OFFSET + 0x14)" ( (binary_expression "in_GS_OFFSET + 0x14" identifier + number_literal) ))))) )) (compound_statement "{\n    return prodp[(int)local_a0 + -1];\n  }" { (return_statement "return prodp[(int)local_a0 + -1];" return (subscript_expression "prodp[(int)local_a0 + -1]" identifier [ (binary_expression "(int)local_a0 + -1" (cast_expression "(int)local_a0" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ]) ;) }))) comment (expression_statement "*(undefined4 *)(puVar16 + -4) = 0x47f0b;" (assignment_expression "*(undefined4 *)(puVar16 + -4) = 0x47f0b" (pointer_expression "*(undefined4 *)(puVar16 + -4)" * (cast_expression "(undefined4 *)(puVar16 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar16 + -4)" ( (binary_expression "puVar16 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__stack_chk_fail_local();" (call_expression "__stack_chk_fail_local()" identifier (argument_list "()" ( ))) ;) })))
(translation_unit "undefined4 __gmpn_mul(void)\n\n{\n  uint *puVar1;\n  int iVar2;\n  code *pcVar3;\n  int iVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int iVar7;\n  uint uVar8;\n  uint uVar9;\n  undefined4 uVar10;\n  undefined1 *puVar11;\n  undefined1 *puVar12;\n  uint *puVar13;\n  int iVar14;\n  int unaff_EBX;\n  undefined1 *puVar15;\n  int iVar16;\n  undefined1 *puVar17;\n  undefined1 *puVar18;\n  undefined1 *puVar19;\n  int in_GS_OFFSET;\n  uint auStack_8014 [8133];\n  undefined1 *apuStack_100 [2];\n  int iStack_f8;\n  undefined1 *apuStack_f4 [4];\n  uint uStack_e4;\n  undefined1 auStack_e0 [204];\n  undefined4 uStack_14;\n  \n  puVar17 = &stack0xfffffffc;\n  uStack_14 = 0x46e9b;\n  entry();\n  puVar15 = auStack_e0;\n  puVar11 = auStack_e0;\n  puVar19 = *(undefined1 **)(puVar17 + 8);\n  puVar12 = *(undefined1 **)(puVar17 + 0xc);\n  puVar18 = *(undefined1 **)(puVar17 + 0x18);\n  *(undefined4 *)(puVar17 + -0xa0) = *(undefined4 *)(puVar17 + 0x14);\n  *(undefined4 *)(puVar17 + -0x1c) = *(undefined4 *)(in_GS_OFFSET + 0x14);\n  if (*(undefined1 **)(puVar17 + 0x10) == puVar18) {\n    *(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar12;\n    if (puVar12 == *(undefined1 **)(puVar17 + -0xa0)) {\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }\n    else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }\n    goto LAB_000471aa;\n  }\n  if (**(int **)(unaff_EBX + 0x56ebd) == 0) {\n    *(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd);\n    *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n    uStack_e4 = 0x47081;\n    __gmpn_cpuvec_init();\n    puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n    iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94);\n    *(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9);\n    if (iVar2 <= (int)puVar18) {\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }\n  }\n  else {\n    iVar2 = *(int *)(unaff_EBX + 0x56ef9);\n    *(int *)(puVar17 + -0x9c) = iVar2;\n    if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }\n  }\n  pcVar3 = *(code **)(*(int *)(puVar17 + -0x9c) + 0x68);\n  apuStack_100[1] = puVar12;\n  if ((*(int *)(puVar17 + 0x10) < 0x1f5) || (puVar18 == (undefined1 *)0x1)) {\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = *(int *)(puVar17 + 0x10);\n    auStack_8014[0x1fc4] = 0x47451;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n    puVar11 = auStack_e0;\n  }\n  else {\n    *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = 500;\n    auStack_8014[0x1fc4] = 0x46f33;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    apuStack_f4[1] = puVar17 + -0x90;\n    *(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];\n    apuStack_f4[0] = (undefined1 *)0x46f4e;\n    apuStack_f4[2] = puVar19 + 2000;\n    apuStack_f4[3] = puVar18;\n    (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n    iVar2 = *(int *)(puVar17 + 0x10);\n    puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);\n    *(int *)(puVar17 + -0xac) = (int)puVar18 * 4;\n    puVar19 = puVar19 + 2000;\n    while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }\n    if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n    apuStack_f4[0] = (undefined1 *)0x47047;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar19;\n    uStack_e4 = (uint)puVar18;\n    uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n    puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;\n    puVar11 = auStack_e0;\n  }\nLAB_000471aa:\n  if (*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14)) {\n    return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);\n  }\n                    \n  *(undefined4 *)(puVar11 + -4) = 0x47f0b;\n  FUN_0007ebe0();\n}\n\n" (function_definition "undefined4 __gmpn_mul(void)\n\n{\n  uint *puVar1;\n  int iVar2;\n  code *pcVar3;\n  int iVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int iVar7;\n  uint uVar8;\n  uint uVar9;\n  undefined4 uVar10;\n  undefined1 *puVar11;\n  undefined1 *puVar12;\n  uint *puVar13;\n  int iVar14;\n  int unaff_EBX;\n  undefined1 *puVar15;\n  int iVar16;\n  undefined1 *puVar17;\n  undefined1 *puVar18;\n  undefined1 *puVar19;\n  int in_GS_OFFSET;\n  uint auStack_8014 [8133];\n  undefined1 *apuStack_100 [2];\n  int iStack_f8;\n  undefined1 *apuStack_f4 [4];\n  uint uStack_e4;\n  undefined1 auStack_e0 [204];\n  undefined4 uStack_14;\n  \n  puVar17 = &stack0xfffffffc;\n  uStack_14 = 0x46e9b;\n  entry();\n  puVar15 = auStack_e0;\n  puVar11 = auStack_e0;\n  puVar19 = *(undefined1 **)(puVar17 + 8);\n  puVar12 = *(undefined1 **)(puVar17 + 0xc);\n  puVar18 = *(undefined1 **)(puVar17 + 0x18);\n  *(undefined4 *)(puVar17 + -0xa0) = *(undefined4 *)(puVar17 + 0x14);\n  *(undefined4 *)(puVar17 + -0x1c) = *(undefined4 *)(in_GS_OFFSET + 0x14);\n  if (*(undefined1 **)(puVar17 + 0x10) == puVar18) {\n    *(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar12;\n    if (puVar12 == *(undefined1 **)(puVar17 + -0xa0)) {\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }\n    else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }\n    goto LAB_000471aa;\n  }\n  if (**(int **)(unaff_EBX + 0x56ebd) == 0) {\n    *(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd);\n    *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n    uStack_e4 = 0x47081;\n    __gmpn_cpuvec_init();\n    puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n    iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94);\n    *(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9);\n    if (iVar2 <= (int)puVar18) {\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }\n  }\n  else {\n    iVar2 = *(int *)(unaff_EBX + 0x56ef9);\n    *(int *)(puVar17 + -0x9c) = iVar2;\n    if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }\n  }\n  pcVar3 = *(code **)(*(int *)(puVar17 + -0x9c) + 0x68);\n  apuStack_100[1] = puVar12;\n  if ((*(int *)(puVar17 + 0x10) < 0x1f5) || (puVar18 == (undefined1 *)0x1)) {\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = *(int *)(puVar17 + 0x10);\n    auStack_8014[0x1fc4] = 0x47451;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n    puVar11 = auStack_e0;\n  }\n  else {\n    *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = 500;\n    auStack_8014[0x1fc4] = 0x46f33;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    apuStack_f4[1] = puVar17 + -0x90;\n    *(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];\n    apuStack_f4[0] = (undefined1 *)0x46f4e;\n    apuStack_f4[2] = puVar19 + 2000;\n    apuStack_f4[3] = puVar18;\n    (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n    iVar2 = *(int *)(puVar17 + 0x10);\n    puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);\n    *(int *)(puVar17 + -0xac) = (int)puVar18 * 4;\n    puVar19 = puVar19 + 2000;\n    while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }\n    if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n    apuStack_f4[0] = (undefined1 *)0x47047;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar19;\n    uStack_e4 = (uint)puVar18;\n    uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n    puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;\n    puVar11 = auStack_e0;\n  }\nLAB_000471aa:\n  if (*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14)) {\n    return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);\n  }\n                    \n  *(undefined4 *)(puVar11 + -4) = 0x47f0b;\n  FUN_0007ebe0();\n}" type_identifier (function_declarator "__gmpn_mul(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  uint *puVar1;\n  int iVar2;\n  code *pcVar3;\n  int iVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int iVar7;\n  uint uVar8;\n  uint uVar9;\n  undefined4 uVar10;\n  undefined1 *puVar11;\n  undefined1 *puVar12;\n  uint *puVar13;\n  int iVar14;\n  int unaff_EBX;\n  undefined1 *puVar15;\n  int iVar16;\n  undefined1 *puVar17;\n  undefined1 *puVar18;\n  undefined1 *puVar19;\n  int in_GS_OFFSET;\n  uint auStack_8014 [8133];\n  undefined1 *apuStack_100 [2];\n  int iStack_f8;\n  undefined1 *apuStack_f4 [4];\n  uint uStack_e4;\n  undefined1 auStack_e0 [204];\n  undefined4 uStack_14;\n  \n  puVar17 = &stack0xfffffffc;\n  uStack_14 = 0x46e9b;\n  entry();\n  puVar15 = auStack_e0;\n  puVar11 = auStack_e0;\n  puVar19 = *(undefined1 **)(puVar17 + 8);\n  puVar12 = *(undefined1 **)(puVar17 + 0xc);\n  puVar18 = *(undefined1 **)(puVar17 + 0x18);\n  *(undefined4 *)(puVar17 + -0xa0) = *(undefined4 *)(puVar17 + 0x14);\n  *(undefined4 *)(puVar17 + -0x1c) = *(undefined4 *)(in_GS_OFFSET + 0x14);\n  if (*(undefined1 **)(puVar17 + 0x10) == puVar18) {\n    *(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar12;\n    if (puVar12 == *(undefined1 **)(puVar17 + -0xa0)) {\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }\n    else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }\n    goto LAB_000471aa;\n  }\n  if (**(int **)(unaff_EBX + 0x56ebd) == 0) {\n    *(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd);\n    *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n    uStack_e4 = 0x47081;\n    __gmpn_cpuvec_init();\n    puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n    iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94);\n    *(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9);\n    if (iVar2 <= (int)puVar18) {\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }\n  }\n  else {\n    iVar2 = *(int *)(unaff_EBX + 0x56ef9);\n    *(int *)(puVar17 + -0x9c) = iVar2;\n    if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }\n  }\n  pcVar3 = *(code **)(*(int *)(puVar17 + -0x9c) + 0x68);\n  apuStack_100[1] = puVar12;\n  if ((*(int *)(puVar17 + 0x10) < 0x1f5) || (puVar18 == (undefined1 *)0x1)) {\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = *(int *)(puVar17 + 0x10);\n    auStack_8014[0x1fc4] = 0x47451;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n    puVar11 = auStack_e0;\n  }\n  else {\n    *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = 500;\n    auStack_8014[0x1fc4] = 0x46f33;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    apuStack_f4[1] = puVar17 + -0x90;\n    *(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];\n    apuStack_f4[0] = (undefined1 *)0x46f4e;\n    apuStack_f4[2] = puVar19 + 2000;\n    apuStack_f4[3] = puVar18;\n    (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n    iVar2 = *(int *)(puVar17 + 0x10);\n    puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);\n    *(int *)(puVar17 + -0xac) = (int)puVar18 * 4;\n    puVar19 = puVar19 + 2000;\n    while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }\n    if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n    apuStack_f4[0] = (undefined1 *)0x47047;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar19;\n    uStack_e4 = (uint)puVar18;\n    uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n    puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;\n    puVar11 = auStack_e0;\n  }\nLAB_000471aa:\n  if (*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14)) {\n    return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);\n  }\n                    \n  *(undefined4 *)(puVar11 + -4) = 0x47f0b;\n  FUN_0007ebe0();\n}" { (declaration "uint *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "code *pcVar3;" type_identifier (pointer_declarator "*pcVar3" * identifier) ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "undefined4 *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "undefined4 uVar10;" type_identifier identifier ;) (declaration "undefined1 *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "undefined1 *puVar12;" type_identifier (pointer_declarator "*puVar12" * identifier) ;) (declaration "uint *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "int unaff_EBX;" primitive_type identifier ;) (declaration "undefined1 *puVar15;" type_identifier (pointer_declarator "*puVar15" * identifier) ;) (declaration "int iVar16;" primitive_type identifier ;) (declaration "undefined1 *puVar17;" type_identifier (pointer_declarator "*puVar17" * identifier) ;) (declaration "undefined1 *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "undefined1 *puVar19;" type_identifier (pointer_declarator "*puVar19" * identifier) ;) (declaration "int in_GS_OFFSET;" primitive_type identifier ;) (declaration "uint auStack_8014 [8133];" type_identifier (array_declarator "auStack_8014 [8133]" identifier [ number_literal ]) ;) (declaration "undefined1 *apuStack_100 [2];" type_identifier (pointer_declarator "*apuStack_100 [2]" * (array_declarator "apuStack_100 [2]" identifier [ number_literal ])) ;) (declaration "int iStack_f8;" primitive_type identifier ;) (declaration "undefined1 *apuStack_f4 [4];" type_identifier (pointer_declarator "*apuStack_f4 [4]" * (array_declarator "apuStack_f4 [4]" identifier [ number_literal ])) ;) (declaration "uint uStack_e4;" type_identifier identifier ;) (declaration "undefined1 auStack_e0 [204];" type_identifier (array_declarator "auStack_e0 [204]" identifier [ number_literal ]) ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "puVar17 = &stack0xfffffffc;" (assignment_expression "puVar17 = &stack0xfffffffc" identifier = (pointer_expression "&stack0xfffffffc" & identifier)) ;) (expression_statement "uStack_14 = 0x46e9b;" (assignment_expression "uStack_14 = 0x46e9b" identifier = number_literal) ;) (expression_statement "entry();" (call_expression "entry()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar15 = auStack_e0;" (assignment_expression "puVar15 = auStack_e0" identifier = identifier) ;) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" identifier = identifier) ;) (expression_statement "puVar19 = *(undefined1 **)(puVar17 + 8);" (assignment_expression "puVar19 = *(undefined1 **)(puVar17 + 8)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + 8)" * (cast_expression "(undefined1 **)(puVar17 + 8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 8)" ( (binary_expression "puVar17 + 8" identifier + number_literal) ))))) ;) (expression_statement "puVar12 = *(undefined1 **)(puVar17 + 0xc);" (assignment_expression "puVar12 = *(undefined1 **)(puVar17 + 0xc)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + 0xc)" * (cast_expression "(undefined1 **)(puVar17 + 0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0xc)" ( (binary_expression "puVar17 + 0xc" identifier + number_literal) ))))) ;) (expression_statement "puVar18 = *(undefined1 **)(puVar17 + 0x18);" (assignment_expression "puVar18 = *(undefined1 **)(puVar17 + 0x18)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" * (cast_expression "(undefined1 **)(puVar17 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xa0) = *(undefined4 *)(puVar17 + 0x14);" (assignment_expression "*(undefined4 *)(puVar17 + -0xa0) = *(undefined4 *)(puVar17 + 0x14)" (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x14)" * (cast_expression "(undefined4 *)(puVar17 + 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x14)" ( (binary_expression "puVar17 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x1c) = *(undefined4 *)(in_GS_OFFSET + 0x14);" (assignment_expression "*(undefined4 *)(puVar17 + -0x1c) = *(undefined4 *)(in_GS_OFFSET + 0x14)" (pointer_expression "*(undefined4 *)(puVar17 + -0x1c)" * (cast_expression "(undefined4 *)(puVar17 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x1c)" ( (binary_expression "puVar17 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(in_GS_OFFSET + 0x14)" * (cast_expression "(undefined4 *)(in_GS_OFFSET + 0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_GS_OFFSET + 0x14)" ( (binary_expression "in_GS_OFFSET + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (*(undefined1 **)(puVar17 + 0x10) == puVar18) {\n    *(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar12;\n    if (puVar12 == *(undefined1 **)(puVar17 + -0xa0)) {\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }\n    else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }\n    goto LAB_000471aa;\n  }" if (parenthesized_expression "(*(undefined1 **)(puVar17 + 0x10) == puVar18)" ( (binary_expression "*(undefined1 **)(puVar17 + 0x10) == puVar18" (pointer_expression "*(undefined1 **)(puVar17 + 0x10)" * (cast_expression "(undefined1 **)(puVar17 + 0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) == identifier) )) (compound_statement "{\n    *(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar12;\n    if (puVar12 == *(undefined1 **)(puVar17 + -0xa0)) {\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }\n    else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }\n    goto LAB_000471aa;\n  }" { (expression_statement "*(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2;" (assignment_expression "*(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + 0x10) * 2" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) * number_literal)) ;) (expression_statement "apuStack_f4[1] = puVar19;" (assignment_expression "apuStack_f4[1] = puVar19" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[2] = puVar12;" (assignment_expression "apuStack_f4[2] = puVar12" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (puVar12 == *(undefined1 **)(puVar17 + -0xa0)) {\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }\n    else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }" if (parenthesized_expression "(puVar12 == *(undefined1 **)(puVar17 + -0xa0))" ( (binary_expression "puVar12 == *(undefined1 **)(puVar17 + -0xa0)" identifier == (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) )) (compound_statement "{\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }" { (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10)" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + 0x10)" * (cast_expression "(undefined1 **)(puVar17 + 0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x477dd;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x477dd" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x477dd" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "__gmpn_sqr();" (call_expression "__gmpn_sqr()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" identifier = identifier) ;) }) (else_clause "else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }" else (compound_statement "{\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }" { (expression_statement "uStack_e4 = *(uint *)(puVar17 + 0x10);" (assignment_expression "uStack_e4 = *(uint *)(puVar17 + 0x10)" identifier = (pointer_expression "*(uint *)(puVar17 + 0x10)" * (cast_expression "(uint *)(puVar17 + 0x10)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x471a7;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x471a7" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x471a7" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "__gmpn_mul_n();" (call_expression "__gmpn_mul_n()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" identifier = identifier) ;) }))) (goto_statement "goto LAB_000471aa;" goto statement_identifier ;) })) (if_statement "if (**(int **)(unaff_EBX + 0x56ebd) == 0) {\n    *(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd);\n    *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n    uStack_e4 = 0x47081;\n    __gmpn_cpuvec_init();\n    puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n    iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94);\n    *(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9);\n    if (iVar2 <= (int)puVar18) {\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }\n  }\n  else {\n    iVar2 = *(int *)(unaff_EBX + 0x56ef9);\n    *(int *)(puVar17 + -0x9c) = iVar2;\n    if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }\n  }" if (parenthesized_expression "(**(int **)(unaff_EBX + 0x56ebd) == 0)" ( (binary_expression "**(int **)(unaff_EBX + 0x56ebd) == 0" (pointer_expression "**(int **)(unaff_EBX + 0x56ebd)" * (pointer_expression "*(int **)(unaff_EBX + 0x56ebd)" * (cast_expression "(int **)(unaff_EBX + 0x56ebd)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_EBX + 0x56ebd)" ( (binary_expression "unaff_EBX + 0x56ebd" identifier + number_literal) ))))) == number_literal) )) (compound_statement "{\n    *(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd);\n    *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n    uStack_e4 = 0x47081;\n    __gmpn_cpuvec_init();\n    puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n    iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94);\n    *(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9);\n    if (iVar2 <= (int)puVar18) {\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }\n  }" { (expression_statement "*(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd);" (assignment_expression "*(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd)" (pointer_expression "*(int **)(puVar17 + -0xa8)" * (cast_expression "(int **)(puVar17 + -0xa8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = (pointer_expression "*(int **)(unaff_EBX + 0x56ebd)" * (cast_expression "(int **)(unaff_EBX + 0x56ebd)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(unaff_EBX + 0x56ebd)" ( (binary_expression "unaff_EBX + 0x56ebd" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xa4) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa4) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = identifier) ;) (expression_statement "uStack_e4 = 0x47081;" (assignment_expression "uStack_e4 = 0x47081" identifier = number_literal) ;) (expression_statement "__gmpn_cpuvec_init();" (call_expression "__gmpn_cpuvec_init()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar12 = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "puVar12 = *(undefined1 **)(puVar17 + -0xa4)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94);" (assignment_expression "iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94)" identifier = (pointer_expression "*(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94)" * (cast_expression "(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(unaff_EBX + 0x56ef9) + 0x94)" ( (binary_expression "*(int *)(unaff_EBX + 0x56ef9) + 0x94" (pointer_expression "*(int *)(unaff_EBX + 0x56ef9)" * (cast_expression "(int *)(unaff_EBX + 0x56ef9)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBX + 0x56ef9)" ( (binary_expression "unaff_EBX + 0x56ef9" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "*(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9);" (assignment_expression "*(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9)" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = (pointer_expression "*(int *)(unaff_EBX + 0x56ef9)" * (cast_expression "(int *)(unaff_EBX + 0x56ef9)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBX + 0x56ef9)" ( (binary_expression "unaff_EBX + 0x56ef9" identifier + number_literal) ))))) ;) (if_statement "if (iVar2 <= (int)puVar18) {\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }" if (parenthesized_expression "(iVar2 <= (int)puVar18)" ( (binary_expression "iVar2 <= (int)puVar18" identifier <= (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }" { (if_statement "if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }" if (parenthesized_expression "(**(int **)(puVar17 + -0xa8) == 0)" ( (binary_expression "**(int **)(puVar17 + -0xa8) == 0" (pointer_expression "**(int **)(puVar17 + -0xa8)" * (pointer_expression "*(int **)(puVar17 + -0xa8)" * (cast_expression "(int **)(puVar17 + -0xa8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) == number_literal) )) (compound_statement "{\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }" { (expression_statement "*(undefined1 **)(puVar17 + -0xa4) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa4) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = identifier) ;) (expression_statement "uStack_e4 = 0x470b6;" (assignment_expression "uStack_e4 = 0x470b6" identifier = number_literal) ;) (expression_statement "__gmpn_cpuvec_init();" (call_expression "__gmpn_cpuvec_init()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar12 = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "puVar12 = *(undefined1 **)(puVar17 + -0xa4)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) })) (goto_statement "goto LAB_000470c0;" goto statement_identifier ;) })) }) (else_clause "else {\n    iVar2 = *(int *)(unaff_EBX + 0x56ef9);\n    *(int *)(puVar17 + -0x9c) = iVar2;\n    if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }\n  }" else (compound_statement "{\n    iVar2 = *(int *)(unaff_EBX + 0x56ef9);\n    *(int *)(puVar17 + -0x9c) = iVar2;\n    if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }\n  }" { (expression_statement "iVar2 = *(int *)(unaff_EBX + 0x56ef9);" (assignment_expression "iVar2 = *(int *)(unaff_EBX + 0x56ef9)" identifier = (pointer_expression "*(int *)(unaff_EBX + 0x56ef9)" * (cast_expression "(int *)(unaff_EBX + 0x56ef9)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_EBX + 0x56ef9)" ( (binary_expression "unaff_EBX + 0x56ef9" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar17 + -0x9c) = iVar2;" (assignment_expression "*(int *)(puVar17 + -0x9c) = iVar2" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = identifier) ;) (if_statement "if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }" if (parenthesized_expression "(*(int *)(iVar2 + 0x94) <= (int)puVar18)" ( (binary_expression "*(int *)(iVar2 + 0x94) <= (int)puVar18" (pointer_expression "*(int *)(iVar2 + 0x94)" * (cast_expression "(int *)(iVar2 + 0x94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x94)" ( (binary_expression "iVar2 + 0x94" identifier + number_literal) )))) <= (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }" { (labeled_statement "LAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }" statement_identifier : (if_statement "if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }" if (parenthesized_expression "((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98))" ( (binary_expression "(int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) < (pointer_expression "*(int *)(*(int *)(puVar17 + -0x9c) + 0x98)" * (cast_expression "(int *)(*(int *)(puVar17 + -0x9c) + 0x98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x98)" ( (binary_expression "*(int *)(puVar17 + -0x9c) + 0x98" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) + number_literal) ))))) )) (compound_statement "{\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }" { (expression_statement "*(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;" (assignment_expression "*(int *)(puVar17 + -0xa4) = (int)puVar18 * 8" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "*(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xc0) = (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "*(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;" (assignment_expression "*(int *)(puVar17 + -0xcc) = (int)puVar18 * 5" (pointer_expression "*(int *)(puVar17 + -0xcc)" * (cast_expression "(int *)(puVar17 + -0xcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xcc)" ( (binary_expression "puVar17 + -0xcc" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 5" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);" (assignment_expression "iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0)" identifier = (unary_expression "-((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0)" - (parenthesized_expression "((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0)" ( (binary_expression "(((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0" (binary_expression "(((int)puVar18 * 9) / 2) * 4 + 0x11bU" (binary_expression "(((int)puVar18 * 9) / 2) * 4" (parenthesized_expression "(((int)puVar18 * 9) / 2)" ( (binary_expression "((int)puVar18 * 9) / 2" (parenthesized_expression "((int)puVar18 * 9)" ( (binary_expression "(int)puVar18 * 9" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )) / number_literal) )) * number_literal) + number_literal) & number_literal) )))) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;" (assignment_expression "*(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2" (pointer_expression "*(undefined1 **)(puVar17 + -0xbc)" * (cast_expression "(undefined1 **)(puVar17 + -0xbc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) )))) = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) (expression_statement "*(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;" (assignment_expression "*(int *)(puVar17 + -0xb4) = (int)puVar18 * 2" (pointer_expression "*(int *)(puVar17 + -0xb4)" * (cast_expression "(int *)(puVar17 + -0xb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 2" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "*(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;" (assignment_expression "*(int *)(puVar17 + -0xc4) = (int)puVar18 * 3" (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 3" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (if_statement "if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }" if (parenthesized_expression "(*(int *)(puVar17 + 0x10) < (int)puVar18 * 3)" ( (binary_expression "*(int *)(puVar17 + 0x10) < (int)puVar18 * 3" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) < (binary_expression "(int)puVar18 * 3" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )) (compound_statement "{\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }" { (expression_statement "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);" (assignment_expression "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10)" (pointer_expression "*(undefined1 **)(puVar17 + -0x9c)" * (cast_expression "(undefined1 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = (binary_expression "puVar18 + *(int *)(puVar17 + 0x10)" identifier + (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))))) ;) (if_statement "if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" if (parenthesized_expression "(*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc))" ( (binary_expression "*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)" (binary_expression "*(int *)(puVar17 + 0x10) * 4" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) * number_literal) < (pointer_expression "*(int *)(puVar17 + -0xcc)" * (cast_expression "(int *)(puVar17 + -0xcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xcc)" ( (binary_expression "puVar17 + -0xcc" identifier + number_literal) ))))) )) (compound_statement "{\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" { (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8)" * (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 8)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 8" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 4)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 4" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2)" * (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)apuStack_f4 + iVar2)" ( (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)((int)&iStack_f8 + iVar2)" * (cast_expression "(undefined4 *)((int)&iStack_f8 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&iStack_f8 + iVar2)" ( (binary_expression "(int)&iStack_f8 + iVar2" (cast_expression "(int)&iStack_f8" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&iStack_f8" & identifier)) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2 + 4)" ( (binary_expression "(int)apuStack_100 + iVar2 + 4" (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2)" ( (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;" (assignment_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa" (pointer_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)auStack_8014 + iVar2 + 0x7f10)" ( (binary_expression "(int)auStack_8014 + iVar2 + 0x7f10" (binary_expression "(int)auStack_8014 + iVar2" (cast_expression "(int)auStack_8014" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom22_mul();" (call_expression "__gmpn_toom22_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar11 = auStack_e0 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar2" identifier = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) }) (else_clause "else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" else (if_statement "if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" if (parenthesized_expression "(*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18)" ( (binary_expression "*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18" (binary_expression "*(int *)(puVar17 + 0x10) * 4" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) * number_literal) < (binary_expression "*(int *)(puVar17 + -0xa4) - (int)puVar18" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) - (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier))) )) (compound_statement "{\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" { (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8)" * (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 8)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 8" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 4)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 4" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2)" * (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)apuStack_f4 + iVar2)" ( (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)((int)&iStack_f8 + iVar2)" * (cast_expression "(undefined4 *)((int)&iStack_f8 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&iStack_f8 + iVar2)" ( (binary_expression "(int)&iStack_f8 + iVar2" (cast_expression "(int)&iStack_f8" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&iStack_f8" & identifier)) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2 + 4)" ( (binary_expression "(int)apuStack_100 + iVar2 + 4" (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2)" ( (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;" (assignment_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a" (pointer_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)auStack_8014 + iVar2 + 0x7f10)" ( (binary_expression "(int)auStack_8014 + iVar2 + 0x7f10" (binary_expression "(int)auStack_8014 + iVar2" (cast_expression "(int)auStack_8014" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom32_mul();" (call_expression "__gmpn_toom32_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar11 = auStack_e0 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar2" identifier = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) }) (else_clause "else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" else (compound_statement "{\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" { (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8)" * (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 8)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 8" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 4)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 4" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2)" * (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)apuStack_f4 + iVar2)" ( (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)((int)&iStack_f8 + iVar2)" * (cast_expression "(undefined4 *)((int)&iStack_f8 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&iStack_f8 + iVar2)" ( (binary_expression "(int)&iStack_f8 + iVar2" (cast_expression "(int)&iStack_f8" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&iStack_f8" & identifier)) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2 + 4)" ( (binary_expression "(int)apuStack_100 + iVar2 + 4" (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2)" ( (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;" (assignment_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a" (pointer_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)auStack_8014 + iVar2 + 0x7f10)" ( (binary_expression "(int)auStack_8014 + iVar2 + 0x7f10" (binary_expression "(int)auStack_8014 + iVar2" (cast_expression "(int)auStack_8014" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar11 = auStack_e0 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar2" identifier = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) }))))) }) (else_clause "else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }" else (compound_statement "{\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }" { (expression_statement "*(undefined1 **)(puVar17 + -0xb0) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xb0) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xb0)" * (cast_expression "(undefined1 **)(puVar17 + -0xb0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar4 = -((int)puVar18 * 0x10 + 0x10);" (assignment_expression "iVar4 = -((int)puVar18 * 0x10 + 0x10)" identifier = (unary_expression "-((int)puVar18 * 0x10 + 0x10)" - (parenthesized_expression "((int)puVar18 * 0x10 + 0x10)" ( (binary_expression "(int)puVar18 * 0x10 + 0x10" (binary_expression "(int)puVar18 * 0x10" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) )))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x18" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x1c" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x20" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;" (assignment_expression "*(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2" (pointer_expression "*(undefined1 **)(puVar17 + -0xac)" * (cast_expression "(undefined1 **)(puVar17 + -0xac)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier)) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x24" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);" (assignment_expression "iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4)" identifier = (binary_expression "*(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4)" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) - (pointer_expression "*(int *)(puVar17 + -0xb4)" * (cast_expression "(int *)(puVar17 + -0xb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) )))))) ;) (expression_statement "puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);" (assignment_expression "puVar19 = puVar19 + *(int *)(puVar17 + -0xa4)" identifier = (binary_expression "puVar19 + *(int *)(puVar17 + -0xa4)" identifier + (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))))) ;) (expression_statement "*(int *)(puVar17 + -0xa8) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xa8) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);" (assignment_expression "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4)" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4)" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) + (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))))) ;) (expression_statement "*(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);" (assignment_expression "*(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0)" (pointer_expression "*(int *)(puVar17 + -200)" * (cast_expression "(int *)(puVar17 + -200)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -200)" ( (binary_expression "puVar17 + -200" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0)" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) + (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) )))))) ;) (if_statement "if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" if (parenthesized_expression "(*(int *)(puVar17 + -0xc4) <= iVar14)" ( (binary_expression "*(int *)(puVar17 + -0xc4) <= iVar14" (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))) <= identifier) )) (compound_statement "{\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" { (expression_statement "*(undefined1 **)(puVar17 + 0x18) = puVar18;" (assignment_expression "*(undefined1 **)(puVar17 + 0x18) = puVar18" (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" * (cast_expression "(undefined1 **)(puVar17 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar5 = *(int *)(puVar17 + -0xb4);" (assignment_expression "iVar5 = *(int *)(puVar17 + -0xb4)" identifier = (pointer_expression "*(int *)(puVar17 + -0xb4)" * (cast_expression "(int *)(puVar17 + -0xb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (do_statement "do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);" do (compound_statement "{\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            }" { (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x18)" * (cast_expression "(undefined4 *)(puVar17 + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;" (assignment_expression "*(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5" (pointer_expression "*(int *)(auStack_e0 + iVar4 + iVar2 + -0x18)" * (cast_expression "(int *)(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x18" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x1c" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb0)" * (cast_expression "(undefined4 *)(puVar17 + -0xb0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x20" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x24" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar6 = *(undefined4 **)(puVar17 + -0x9c);" (assignment_expression "puVar6 = *(undefined4 **)(puVar17 + -0x9c)" identifier = (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = *(int *)(puVar17 + -0xa4);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xa4)" identifier = (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -4)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -4" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x18)" * (cast_expression "(undefined4 *)(puVar17 + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;" (assignment_expression "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xb0) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) + identifier)) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -8)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -8" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;" (assignment_expression "*(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xa8) - iVar5" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) - identifier)) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "pcVar3 = (code *)*puVar6;" (assignment_expression "pcVar3 = (code *)*puVar6" identifier = (cast_expression "(code *)*puVar6" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar6" * identifier))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "uVar10 = (*pcVar3)();" (assignment_expression "uVar10 = (*pcVar3)()" identifier = (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( )))) ;) (expression_statement "iVar14 = *(int *)(puVar17 + -0x9c);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0x9c)" identifier = (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xb8) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xb8) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xb8)" * (cast_expression "(undefined4 *)(puVar17 + -0xb8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar7 = *(int *)(puVar17 + -0xc0);" (assignment_expression "iVar7 = *(int *)(puVar17 + -0xc0)" identifier = (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;" (assignment_expression "*(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5" (pointer_expression "*(int *)(auStack_e0 + iVar4 + iVar2 + -8)" * (cast_expression "(int *)(auStack_e0 + iVar4 + iVar2 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -8)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -8" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;" (assignment_expression "*(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7" (pointer_expression "*(undefined1 **)(puVar17 + -0xb4)" * (cast_expression "(undefined1 **)(puVar17 + -0xb4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) )))) = (binary_expression "puVar19 + iVar7" identifier + identifier)) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -200)" * (cast_expression "(undefined4 *)(puVar17 + -200)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -200)" ( (binary_expression "puVar17 + -200" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (binary_expression "puVar19 + iVar7" identifier + identifier)) ;) (expression_statement "pcVar3 = *(code **)(iVar14 + 0x28);" (assignment_expression "pcVar3 = *(code **)(iVar14 + 0x28)" identifier = (pointer_expression "*(code **)(iVar14 + 0x28)" * (cast_expression "(code **)(iVar14 + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar14 + 0x28)" ( (binary_expression "iVar14 + 0x28" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "puVar13 = *(uint **)(puVar17 + -0xb4);" (assignment_expression "puVar13 = *(uint **)(puVar17 + -0xb4)" identifier = (pointer_expression "*(uint **)(puVar17 + -0xb4)" * (cast_expression "(uint **)(puVar17 + -0xb4)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "uVar8 = *(uint *)(puVar17 + -0xb8);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -0xb8)" identifier = (pointer_expression "*(uint *)(puVar17 + -0xb8)" * (cast_expression "(uint *)(puVar17 + -0xb8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) ))))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" { (do_statement "do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);" do (compound_statement "{\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                }" { (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);" (assignment_expression "puVar19 = puVar19 + *(int *)(puVar17 + -0xa4)" identifier = (binary_expression "puVar19 + *(int *)(puVar17 + -0xa4)" identifier + (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))))) ;) (expression_statement "iVar14 = *(int *)(puVar17 + -0xa8);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xa8)" identifier = (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) }) while (parenthesized_expression "(*(int *)(puVar17 + -0xc4) <= iVar14)" ( (binary_expression "*(int *)(puVar17 + -0xc4) <= iVar14" (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))) <= identifier) )) ;) (expression_statement "puVar18 = *(undefined1 **)(puVar17 + 0x18);" (assignment_expression "puVar18 = *(undefined1 **)(puVar17 + 0x18)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" * (cast_expression "(undefined1 **)(puVar17 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) })) (if_statement "if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }" if (parenthesized_expression "(iVar14 * 4 < *(int *)(puVar17 + -0xcc))" ( (binary_expression "iVar14 * 4 < *(int *)(puVar17 + -0xcc)" (binary_expression "iVar14 * 4" identifier * number_literal) < (pointer_expression "*(int *)(puVar17 + -0xcc)" * (cast_expression "(int *)(puVar17 + -0xcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xcc)" ( (binary_expression "puVar17 + -0xcc" identifier + number_literal) ))))) )) (compound_statement "{\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }" { (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;" (assignment_expression "*(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14" (pointer_expression "*(int *)(auStack_e0 + iVar4 + iVar2 + -0x18)" * (cast_expression "(int *)(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x18" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x1c" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb0)" * (cast_expression "(undefined4 *)(puVar17 + -0xb0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x20" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x24" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom22_mul();" (call_expression "__gmpn_toom22_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }" else (if_statement "if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }" if (parenthesized_expression "(iVar14 * 4 < (int)puVar18 * 7)" ( (binary_expression "iVar14 * 4 < (int)puVar18 * 7" (binary_expression "iVar14 * 4" identifier * number_literal) < (binary_expression "(int)puVar18 * 7" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )) (compound_statement "{\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }" { (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x18" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa8)" * (cast_expression "(undefined4 *)(puVar17 + -0xa8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x1c" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb0)" * (cast_expression "(undefined4 *)(puVar17 + -0xb0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x20" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x24" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom32_mul();" (call_expression "__gmpn_toom32_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }" else (compound_statement "{\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }" { (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x18)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x18" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa8)" * (cast_expression "(undefined4 *)(puVar17 + -0xa8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x1c)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x1c" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb0)" * (cast_expression "(undefined4 *)(puVar17 + -0xb0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x20)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x20" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x24)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x24" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" identifier (argument_list "()" ( ))) ;) }))))) (expression_statement "puVar6 = *(undefined4 **)(puVar17 + -0x9c);" (assignment_expression "puVar6 = *(undefined4 **)(puVar17 + -0x9c)" identifier = (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -4)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -4" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -8)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -8" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" * (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "pcVar3 = (code *)*puVar6;" (assignment_expression "pcVar3 = (code *)*puVar6" identifier = (cast_expression "(code *)*puVar6" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar6" * identifier))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "uVar10 = (*pcVar3)();" (assignment_expression "uVar10 = (*pcVar3)()" identifier = (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xa0) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xa0) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar14 = *(int *)(puVar17 + -0x9c);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0x9c)" identifier = (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));" (assignment_expression "puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0))" identifier = (cast_expression "(uint *)(puVar19 + *(int *)(puVar17 + -0xc0))" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar19 + *(int *)(puVar17 + -0xc0))" ( (binary_expression "puVar19 + *(int *)(puVar17 + -0xc0)" identifier + (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) ))))) )))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -8)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -8" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa8)" * (cast_expression "(undefined4 *)(puVar17 + -0xa8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -200)" * (cast_expression "(undefined4 *)(puVar17 + -200)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -200)" ( (binary_expression "puVar17 + -200" identifier + number_literal) ))))) ;) (expression_statement "*(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;" (assignment_expression "*(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13" (pointer_expression "*(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10)" * (cast_expression "(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "pcVar3 = *(code **)(iVar14 + 0x28);" (assignment_expression "pcVar3 = *(code **)(iVar14 + 0x28)" identifier = (pointer_expression "*(code **)(iVar14 + 0x28)" * (cast_expression "(code **)(iVar14 + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar14 + 0x28)" ( (binary_expression "iVar14 + 0x28" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" * (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" ( (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "uVar8 = *(uint *)(puVar17 + -0xa0);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -0xa0)" identifier = (pointer_expression "*(uint *)(puVar17 + -0xa0)" * (cast_expression "(uint *)(puVar17 + -0xa0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }" { (do_statement "do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);" do (compound_statement "{\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            }" { (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);" (assignment_expression "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8)" (pointer_expression "*(undefined1 **)(puVar17 + -0x9c)" * (cast_expression "(undefined1 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = (binary_expression "puVar18 + *(int *)(puVar17 + -0xa8)" identifier + (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))))) ;) (expression_statement "puVar11 = auStack_e0 + iVar4 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar4 + iVar2" identifier = (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" identifier + identifier) + identifier)) ;) }))) (goto_statement "goto LAB_000471aa;" goto statement_identifier ;) }))) (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10)" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = (binary_expression "puVar18 + *(int *)(puVar17 + 0x10)" identifier + (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))))) ;) (if_statement "if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }" if (parenthesized_expression "((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3))" ( (binary_expression "(3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)" (parenthesized_expression "(3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10)))" ( (binary_expression "3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))" number_literal < (cast_expression "(int)(puVar18 + *(int *)(puVar17 + 0x10))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(puVar18 + *(int *)(puVar17 + 0x10))" ( (binary_expression "puVar18 + *(int *)(puVar17 + 0x10)" identifier + (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) )))) )) && (parenthesized_expression "(*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)" ( (comma_expression "*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3" (assignment_expression "*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 3" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) , (binary_expression "1999 < (int)puVar18 * 3" number_literal < (binary_expression "(int)puVar18 * 3" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ))) )) (compound_statement "{\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }" { (expression_statement "iVar2 = (int)puVar18 * 8;" (assignment_expression "iVar2 = (int)puVar18 * 8" identifier = (binary_expression "(int)puVar18 * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (if_statement "if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }" if (parenthesized_expression "(iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10))" ( (binary_expression "iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)" (binary_expression "iVar2 - *(int *)(puVar17 + 0x10) == 0" (binary_expression "iVar2 - *(int *)(puVar17 + 0x10)" identifier - (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) == number_literal) || (binary_expression "iVar2 < *(int *)(puVar17 + 0x10)" identifier < (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))))) )) (compound_statement "{\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }" { (expression_statement "*(int *)(puVar17 + -0xb8) = iVar2;" (assignment_expression "*(int *)(puVar17 + -0xb8) = iVar2" (pointer_expression "*(int *)(puVar17 + -0xb8)" * (cast_expression "(int *)(puVar17 + -0xb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xac) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xac) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xac)" * (cast_expression "(undefined1 **)(puVar17 + -0xac)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x94) = 0;" (assignment_expression "*(undefined4 *)(puVar17 + -0x94) = 0" (pointer_expression "*(undefined4 *)(puVar17 + -0x94)" * (cast_expression "(undefined4 *)(puVar17 + -0x94)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x94)" ( (binary_expression "puVar17 + -0x94" identifier + number_literal) )))) = number_literal) ;) (expression_statement "apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);" (assignment_expression "apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2)" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)(((int)puVar18 * 9 >> 1) << 2)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(((int)puVar18 * 9 >> 1) << 2)" ( (binary_expression "((int)puVar18 * 9 >> 1) << 2" (parenthesized_expression "((int)puVar18 * 9 >> 1)" ( (binary_expression "(int)puVar18 * 9 >> 1" (binary_expression "(int)puVar18 * 9" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) >> number_literal) )) << number_literal) )))) ;) (expression_statement "apuStack_f4[1] = puVar17 + -0x94;" (assignment_expression "apuStack_f4[1] = puVar17 + -0x94" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (binary_expression "puVar17 + -0x94" identifier + number_literal)) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x47238;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x47238" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x47238" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar10 = __gmp_tmp_reentrant_alloc();" (assignment_expression "uVar10 = __gmp_tmp_reentrant_alloc()" identifier = (call_expression "__gmp_tmp_reentrant_alloc()" identifier (argument_list "()" ( )))) ;) (expression_statement "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);" (assignment_expression "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac)" (subscript_expression "apuStack_100[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xac)" * (cast_expression "(undefined1 **)(puVar17 + -0xac)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "iStack_f8 = *(int *)(puVar17 + -0xa4);" (assignment_expression "iStack_f8 = *(int *)(puVar17 + -0xa4)" identifier = (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "apuStack_100[0] = puVar19;" (assignment_expression "apuStack_100[0] = puVar19" (subscript_expression "apuStack_100[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xa8) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xa8) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xa8)" * (cast_expression "(undefined4 *)(puVar17 + -0xa8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = identifier) ;) (expression_statement "auStack_8014[0x1fc4] = 0x4725a;" (assignment_expression "auStack_8014[0x1fc4] = 0x4725a" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "__gmpn_nussbaumer_mul();" (call_expression "__gmpn_nussbaumer_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xbc) = (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xbc)" * (cast_expression "(int *)(puVar17 + -0xbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "*(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;" (assignment_expression "*(int *)(puVar17 + -0xc4) = (int)puVar18 * -3" (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * -3" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);" (assignment_expression "iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10)" identifier = (binary_expression "(int)puVar18 * -3 + *(int *)(puVar17 + 0x10)" (binary_expression "(int)puVar18 * -3" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))))) ;) (expression_statement "*(int *)(puVar17 + -0xb4) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xb4) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xb4)" * (cast_expression "(int *)(puVar17 + -0xb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar2 = *(int *)(puVar17 + -0xa4) * 4;" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xa4) * 4" identifier = (binary_expression "*(int *)(puVar17 + -0xa4) * 4" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) * number_literal)) ;) (expression_statement "puVar19 = puVar19 + iVar2;" (assignment_expression "puVar19 = puVar19 + iVar2" identifier = (binary_expression "puVar19 + iVar2" identifier + identifier)) ;) (expression_statement "*(int *)(puVar17 + -0xb0) = iVar2;" (assignment_expression "*(int *)(puVar17 + -0xb0) = iVar2" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;" (assignment_expression "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xac) + iVar2" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) + identifier)) ;) (expression_statement "*(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;" (assignment_expression "*(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18" (pointer_expression "*(int *)(puVar17 + -200)" * (cast_expression "(int *)(puVar17 + -200)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -200)" ( (binary_expression "puVar17 + -200" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xb8) - (int)puVar18" (pointer_expression "*(int *)(puVar17 + -0xb8)" * (cast_expression "(int *)(puVar17 + -0xb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) )))) - (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" if (parenthesized_expression "(iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18)" ( (binary_expression "iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18" (binary_expression "iVar14 * 2" identifier * number_literal) < (binary_expression "*(int *)(puVar17 + -0xb8) - (int)puVar18" (pointer_expression "*(int *)(puVar17 + -0xb8)" * (cast_expression "(int *)(puVar17 + -0xb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) )))) - (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier))) )) (compound_statement "{\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }" { (expression_statement "*(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);" (assignment_expression "*(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc)" (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc)" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) + (pointer_expression "*(int *)(puVar17 + -0xbc)" * (cast_expression "(int *)(puVar17 + -0xbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) )))))) ;) }) (else_clause "else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" else (compound_statement "{\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" { (expression_statement "*(undefined1 **)(puVar17 + 0x18) = puVar18;" (assignment_expression "*(undefined1 **)(puVar17 + 0x18) = puVar18" (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" * (cast_expression "(undefined1 **)(puVar17 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);" (assignment_expression "*(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc)" (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc)" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) + (pointer_expression "*(int *)(puVar17 + -0xbc)" * (cast_expression "(int *)(puVar17 + -0xbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) )))))) ;) (do_statement "do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);" do (compound_statement "{\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            }" { (expression_statement "apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);" (assignment_expression "apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18)" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" * (cast_expression "(undefined1 **)(puVar17 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "iStack_f8 = *(int *)(puVar17 + -0xa4);" (assignment_expression "iStack_f8 = *(int *)(puVar17 + -0xa4)" identifier = (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);" (assignment_expression "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac)" (subscript_expression "apuStack_100[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xac)" * (cast_expression "(undefined1 **)(puVar17 + -0xac)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);" (assignment_expression "apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8)" (subscript_expression "apuStack_100[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "auStack_8014[0x1fc4] = 0x47303;" (assignment_expression "auStack_8014[0x1fc4] = 0x47303" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "__gmpn_nussbaumer_mul();" (call_expression "__gmpn_nussbaumer_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "uStack_e4 = *(uint *)(puVar17 + 0x18);" (assignment_expression "uStack_e4 = *(uint *)(puVar17 + 0x18)" identifier = (pointer_expression "*(uint *)(puVar17 + 0x18)" * (cast_expression "(uint *)(puVar17 + 0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8)" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);" (assignment_expression "iVar14 = iVar14 + *(int *)(puVar17 + -0xc4)" identifier = (binary_expression "iVar14 + *(int *)(puVar17 + -0xc4)" identifier + (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))))) ;) (expression_statement "apuStack_f4[1] = puVar19;" (assignment_expression "apuStack_f4[1] = puVar19" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[2] = puVar19;" (assignment_expression "apuStack_f4[2] = puVar19" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);" (assignment_expression "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0)" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0)" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) + (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))))) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x4732b;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x4732b" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x4732b" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();" (assignment_expression "uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))()" identifier = (call_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))()" (parenthesized_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))" ( (pointer_expression "*(code *)**(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(code *)**(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar17 + -0x9c)" * (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))))) )) (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xb8) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xb8) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xb8)" * (cast_expression "(undefined4 *)(puVar17 + -0xb8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) )))) = identifier) ;) (expression_statement "apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);" (assignment_expression "apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc)" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (binary_expression "puVar19 + *(int *)(puVar17 + -0xbc)" identifier + (pointer_expression "*(int *)(puVar17 + -0xbc)" * (cast_expression "(int *)(puVar17 + -0xbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) )))))) ;) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4)" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];" (assignment_expression "*(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1]" (pointer_expression "*(undefined1 **)(puVar17 + -0xb4)" * (cast_expression "(undefined1 **)(puVar17 + -0xb4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) )))) = (subscript_expression "apuStack_f4[1]" identifier [ number_literal ])) ;) (expression_statement "apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);" (assignment_expression "apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0)" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xc0)" * (cast_expression "(undefined1 **)(puVar17 + -0xc0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x47359;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x47359" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x47359" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))" ( (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" * (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" * (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x28)" ( (binary_expression "*(int *)(puVar17 + -0x9c) + 0x28" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "puVar13 = *(uint **)(puVar17 + -0xb4);" (assignment_expression "puVar13 = *(uint **)(puVar17 + -0xb4)" identifier = (pointer_expression "*(uint **)(puVar17 + -0xb4)" * (cast_expression "(uint **)(puVar17 + -0xb4)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "uVar8 = *(uint *)(puVar17 + -0xb8);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -0xb8)" identifier = (pointer_expression "*(uint *)(puVar17 + -0xb8)" * (cast_expression "(uint *)(puVar17 + -0xb8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) ))))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" { (do_statement "do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);" do (compound_statement "{\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                }" { (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);" (assignment_expression "puVar19 = puVar19 + *(int *)(puVar17 + -0xb0)" identifier = (binary_expression "puVar19 + *(int *)(puVar17 + -0xb0)" identifier + (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))))) ;) (expression_statement "iVar2 = *(int *)(puVar17 + -200);" (assignment_expression "iVar2 = *(int *)(puVar17 + -200)" identifier = (pointer_expression "*(int *)(puVar17 + -200)" * (cast_expression "(int *)(puVar17 + -200)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -200)" ( (binary_expression "puVar17 + -200" identifier + number_literal) ))))) ;) }) while (parenthesized_expression "(iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0)" ( (binary_expression "iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0" (binary_expression "iVar2 == iVar14 * 2" identifier == (binary_expression "iVar14 * 2" identifier * number_literal)) || (binary_expression "SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0" (call_expression "SBORROW4(iVar2,iVar14 * 2)" identifier (argument_list "(iVar2,iVar14 * 2)" ( identifier , (binary_expression "iVar14 * 2" identifier * number_literal) ))) != (binary_expression "iVar2 + iVar14 * -2 < 0" (binary_expression "iVar2 + iVar14 * -2" identifier + (binary_expression "iVar14 * -2" identifier * number_literal)) < number_literal))) )) ;) (expression_statement "*(int *)(puVar17 + -0xb4) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xb4) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xb4)" * (cast_expression "(int *)(puVar17 + -0xb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar18 = *(undefined1 **)(puVar17 + 0x18);" (assignment_expression "puVar18 = *(undefined1 **)(puVar17 + 0x18)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" * (cast_expression "(undefined1 **)(puVar17 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) }))) (expression_statement "apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);" (assignment_expression "apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4)" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xb4)" * (cast_expression "(undefined1 **)(puVar17 + -0xb4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (if_statement "if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }" if (parenthesized_expression "((int)apuStack_f4[1] < (int)puVar18)" ( (binary_expression "(int)apuStack_f4[1] < (int)puVar18" (cast_expression "(int)apuStack_f4[1]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "apuStack_f4[1]" identifier [ number_literal ])) < (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }" { (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac)" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xac)" * (cast_expression "(undefined1 **)(puVar17 + -0xac)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_100[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);" (assignment_expression "apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8)" (subscript_expression "apuStack_100[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "auStack_8014[0x1fc4] = 0x473bd;" (assignment_expression "auStack_8014[0x1fc4] = 0x473bd" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "iStack_f8 = (int)puVar18;" (assignment_expression "iStack_f8 = (int)puVar18" identifier = (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "__gmpn_mul();" (call_expression "__gmpn_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }" else (compound_statement "{\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }" { (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "iStack_f8 = *(int *)(puVar17 + -0xb4);" (assignment_expression "iStack_f8 = *(int *)(puVar17 + -0xb4)" identifier = (pointer_expression "*(int *)(puVar17 + -0xb4)" * (cast_expression "(int *)(puVar17 + -0xb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);" (assignment_expression "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac)" (subscript_expression "apuStack_100[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xac)" * (cast_expression "(undefined1 **)(puVar17 + -0xac)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);" (assignment_expression "apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8)" (subscript_expression "apuStack_100[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "auStack_8014[0x1fc4] = 0x47d73;" (assignment_expression "auStack_8014[0x1fc4] = 0x47d73" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "__gmpn_mul();" (call_expression "__gmpn_mul()" identifier (argument_list "()" ( ))) ;) }))) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8)" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x473d1;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x473d1" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x473d1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "apuStack_f4[1] = puVar19;" (assignment_expression "apuStack_f4[1] = puVar19" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[2] = puVar19;" (assignment_expression "apuStack_f4[2] = puVar19" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uStack_e4 = (uint)puVar18;" (assignment_expression "uStack_e4 = (uint)puVar18" identifier = (cast_expression "(uint)puVar18" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();" (assignment_expression "uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))()" identifier = (call_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))()" (parenthesized_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))" ( (pointer_expression "*(code *)**(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(code *)**(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar17 + -0x9c)" * (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))))) )) (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xa4) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xa4) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = identifier) ;) (expression_statement "apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);" (assignment_expression "apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc)" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (binary_expression "puVar19 + *(int *)(puVar17 + -0xbc)" identifier + (pointer_expression "*(int *)(puVar17 + -0xbc)" * (cast_expression "(int *)(puVar17 + -0xbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) )))))) ;) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4)" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xb4)" * (cast_expression "(undefined1 **)(puVar17 + -0xb4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];" (assignment_expression "*(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1]" (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) )))) = (subscript_expression "apuStack_f4[1]" identifier [ number_literal ])) ;) (expression_statement "apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);" (assignment_expression "apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0)" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xc0)" * (cast_expression "(undefined1 **)(puVar17 + -0xc0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x473fe;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x473fe" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x473fe" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))" ( (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" * (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" * (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x28)" ( (binary_expression "*(int *)(puVar17 + -0x9c) + 0x28" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "puVar13 = *(uint **)(puVar17 + -0xa0);" (assignment_expression "puVar13 = *(uint **)(puVar17 + -0xa0)" identifier = (pointer_expression "*(uint **)(puVar17 + -0xa0)" * (cast_expression "(uint **)(puVar17 + -0xa0)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "uVar8 = *(uint *)(puVar17 + -0xa4);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -0xa4)" identifier = (pointer_expression "*(uint *)(puVar17 + -0xa4)" * (cast_expression "(uint *)(puVar17 + -0xa4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }" { (do_statement "do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);" do (compound_statement "{\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            }" { (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (if_statement "if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }" if (parenthesized_expression "(*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0)" ( (binary_expression "*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0" (pointer_expression "*(undefined1 **)(puVar17 + -0x94)" * (cast_expression "(undefined1 **)(puVar17 + -0x94)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x94)" ( (binary_expression "puVar17 + -0x94" identifier + number_literal) )))) != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }" { (expression_statement "apuStack_f4[0] = (undefined1 *)0x47eda;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x47eda" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x47eda" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);" (assignment_expression "apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94)" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0x94)" * (cast_expression "(undefined1 **)(puVar17 + -0x94)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x94)" ( (binary_expression "puVar17 + -0x94" identifier + number_literal) ))))) ;) (expression_statement "__gmp_tmp_reentrant_free();" (call_expression "__gmp_tmp_reentrant_free()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);" (assignment_expression "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4)" (pointer_expression "*(undefined1 **)(puVar17 + -0x9c)" * (cast_expression "(undefined1 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = (binary_expression "puVar18 + *(int *)(puVar17 + -0xb4)" identifier + (pointer_expression "*(int *)(puVar17 + -0xb4)" * (cast_expression "(int *)(puVar17 + -0xb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) )))))) ;) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" identifier = identifier) ;) }) (else_clause "else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }" else (compound_statement "{\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }" { (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "iStack_f8 = *(int *)(puVar17 + 0x10);" (assignment_expression "iStack_f8 = *(int *)(puVar17 + 0x10)" identifier = (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "auStack_8014[0x1fc4] = 0x47c6c;" (assignment_expression "auStack_8014[0x1fc4] = 0x47c6c" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "apuStack_100[0] = puVar19;" (assignment_expression "apuStack_100[0] = puVar19" (subscript_expression "apuStack_100[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_100[1] = puVar12;" (assignment_expression "apuStack_100[1] = puVar12" (subscript_expression "apuStack_100[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "__gmpn_nussbaumer_mul();" (call_expression "__gmpn_nussbaumer_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);" (assignment_expression "*(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8)" (pointer_expression "*(undefined4 *)(puVar17 + -0x9c)" * (cast_expression "(undefined4 *)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa8)" * (cast_expression "(undefined4 *)(puVar17 + -0xa8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) }))) (goto_statement "goto LAB_000471aa;" goto statement_identifier ;) })) (if_statement "if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }" if (parenthesized_expression "(299 < (int)puVar18)" ( (binary_expression "299 < (int)puVar18" number_literal < (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }" { (expression_statement "*(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;" (assignment_expression "*(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + 0x10) * 3 + 0xc" (binary_expression "*(int *)(puVar17 + 0x10) * 3" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) * number_literal) + number_literal)) ;) (if_statement "if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }" if (parenthesized_expression "(SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0)" ( (binary_expression "SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0" (call_expression "SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4)" identifier (argument_list "(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4)" ( (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) , (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ))) != (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0" (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * -4" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) + (binary_expression "(int)puVar18 * -4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) < number_literal)) )) (compound_statement "{\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }" { (expression_statement "*(undefined4 *)(puVar17 + -0x94) = 0;" (assignment_expression "*(undefined4 *)(puVar17 + -0x94) = 0" (pointer_expression "*(undefined4 *)(puVar17 + -0x94)" * (cast_expression "(undefined4 *)(puVar17 + -0x94)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x94)" ( (binary_expression "puVar17 + -0x94" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar9 = *(uint *)(puVar17 + -0xa8);" (assignment_expression "uVar9 = *(uint *)(puVar17 + -0xa8)" identifier = (pointer_expression "*(uint *)(puVar17 + -0xa8)" * (cast_expression "(uint *)(puVar17 + -0xa8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "*(uint *)(puVar17 + -0x9c) = uVar9;" (assignment_expression "*(uint *)(puVar17 + -0x9c) = uVar9" (pointer_expression "*(uint *)(puVar17 + -0x9c)" * (cast_expression "(uint *)(puVar17 + -0x9c)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = identifier) ;) (if_statement "if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }" if (parenthesized_expression "((int)puVar18 < 0x15e)" ( (binary_expression "(int)puVar18 < 0x15e" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }" { (expression_statement "iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);" (assignment_expression "iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0)" identifier = (unary_expression "-(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0)" - (parenthesized_expression "(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0)" ( (binary_expression "*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0" (binary_expression "*(int *)(puVar17 + 0x10) * 0xc + 0x9bU" (binary_expression "*(int *)(puVar17 + 0x10) * 0xc" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) * number_literal) + number_literal) & number_literal) )))) ;) (expression_statement "puVar11 = auStack_e0 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar2" identifier = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 8)" * (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 8)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 8" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 4)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 4" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2)" * (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)apuStack_f4 + iVar2)" ( (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)((int)&iStack_f8 + iVar2)" * (cast_expression "(undefined4 *)((int)&iStack_f8 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&iStack_f8 + iVar2)" ( (binary_expression "(int)&iStack_f8 + iVar2" (cast_expression "(int)&iStack_f8" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&iStack_f8" & identifier)) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2 + 4)" ( (binary_expression "(int)apuStack_100 + iVar2 + 4" (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2)" ( (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;" (assignment_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3" (pointer_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)auStack_8014 + iVar2 + 0x7f10)" ( (binary_expression "(int)auStack_8014 + iVar2 + 0x7f10" (binary_expression "(int)auStack_8014 + iVar2" (cast_expression "(int)auStack_8014" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom44_mul();" (call_expression "__gmpn_toom44_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }" else (if_statement "if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }" if (parenthesized_expression "((int)puVar18 < 0x1c2)" ( (binary_expression "(int)puVar18 < 0x1c2" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }" { (expression_statement "iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);" (assignment_expression "iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610)" identifier = (unary_expression "-(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610)" - (parenthesized_expression "(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610)" ( (binary_expression "((uVar9 / 10) * 3 + 3) * 0x10 + 0x610" (binary_expression "((uVar9 / 10) * 3 + 3) * 0x10" (parenthesized_expression "((uVar9 / 10) * 3 + 3)" ( (binary_expression "(uVar9 / 10) * 3 + 3" (binary_expression "(uVar9 / 10) * 3" (parenthesized_expression "(uVar9 / 10)" ( (binary_expression "uVar9 / 10" identifier / number_literal) )) * number_literal) + number_literal) )) * number_literal) + number_literal) )))) ;) (expression_statement "puVar11 = auStack_e0 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar2" identifier = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 8)" * (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 8)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 8" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_f4 + iVar2 + 4)" ( (binary_expression "(int)apuStack_f4 + iVar2 + 4" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2)" * (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)apuStack_f4 + iVar2)" ( (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)((int)&iStack_f8 + iVar2)" * (cast_expression "(undefined4 *)((int)&iStack_f8 + iVar2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&iStack_f8 + iVar2)" ( (binary_expression "(int)&iStack_f8 + iVar2" (cast_expression "(int)&iStack_f8" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&iStack_f8" & identifier)) + identifier) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2 + 4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2 + 4)" ( (binary_expression "(int)apuStack_100 + iVar2 + 4" (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2)" * (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)apuStack_100 + iVar2)" ( (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = identifier) ;) (expression_statement "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;" (assignment_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63" (pointer_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" * (cast_expression "(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)auStack_8014 + iVar2 + 0x7f10)" ( (binary_expression "(int)auStack_8014 + iVar2 + 0x7f10" (binary_expression "(int)auStack_8014 + iVar2" (cast_expression "(int)auStack_8014" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom6h_mul();" (call_expression "__gmpn_toom6h_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }" else (compound_statement "{\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }" { (expression_statement "iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;" (assignment_expression "iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4" identifier = (binary_expression "((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4" (parenthesized_expression "((int)((uVar9 / 0xe + 1) * 0x78) >> 3)" ( (binary_expression "(int)((uVar9 / 0xe + 1) * 0x78) >> 3" (cast_expression "(int)((uVar9 / 0xe + 1) * 0x78)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((uVar9 / 0xe + 1) * 0x78)" ( (binary_expression "(uVar9 / 0xe + 1) * 0x78" (parenthesized_expression "(uVar9 / 0xe + 1)" ( (binary_expression "uVar9 / 0xe + 1" (binary_expression "uVar9 / 0xe" identifier / number_literal) + number_literal) )) * number_literal) ))) >> number_literal) )) * number_literal)) ;) (expression_statement "puVar11 = (undefined1 *)(iVar2 + 0x6dc);" (assignment_expression "puVar11 = (undefined1 *)(iVar2 + 0x6dc)" identifier = (cast_expression "(undefined1 *)(iVar2 + 0x6dc)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x6dc)" ( (binary_expression "iVar2 + 0x6dc" identifier + number_literal) )))) ;) (if_statement "if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }" if (parenthesized_expression "(puVar11 < (undefined1 *)0x7f01)" ( (binary_expression "puVar11 < (undefined1 *)0x7f01" identifier < (cast_expression "(undefined1 *)0x7f01" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }" { (expression_statement "iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);" (assignment_expression "iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0)" identifier = (unary_expression "-(iVar2 + 0x6f7U & 0xfffffff0)" - (parenthesized_expression "(iVar2 + 0x6f7U & 0xfffffff0)" ( (binary_expression "iVar2 + 0x6f7U & 0xfffffff0" (binary_expression "iVar2 + 0x6f7U" identifier + number_literal) & number_literal) )))) ;) (expression_statement "puVar15 = auStack_e0 + iVar2;" (assignment_expression "puVar15 = auStack_e0 + iVar2" identifier = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) (expression_statement "puVar11 = auStack_e0 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar2" identifier = (binary_expression "auStack_e0 + iVar2" identifier + identifier)) ;) }) (else_clause "else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }" else (compound_statement "{\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }" { (expression_statement "*(undefined1 **)(puVar17 + -0xa4) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa4) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = identifier) ;) (expression_statement "apuStack_f4[1] = puVar17 + -0x94;" (assignment_expression "apuStack_f4[1] = puVar17 + -0x94" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (binary_expression "puVar17 + -0x94" identifier + number_literal)) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x47ef8;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x47ef8" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x47ef8" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "apuStack_f4[2] = puVar11;" (assignment_expression "apuStack_f4[2] = puVar11" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();" (assignment_expression "puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc()" identifier = (cast_expression "(undefined1 *)__gmp_tmp_reentrant_alloc()" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "__gmp_tmp_reentrant_alloc()" identifier (argument_list "()" ( ))))) ;) (expression_statement "puVar12 = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "puVar12 = *(undefined1 **)(puVar17 + -0xa4)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) }))) (expression_statement "*(undefined1 **)(puVar15 + -0xc) = puVar11;" (assignment_expression "*(undefined1 **)(puVar15 + -0xc) = puVar11" (pointer_expression "*(undefined1 **)(puVar15 + -0xc)" * (cast_expression "(undefined1 **)(puVar15 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + -0xc)" ( (binary_expression "puVar15 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar15 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar15 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar15 + -0x10)" * (cast_expression "(undefined1 **)(puVar15 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + -0x10)" ( (binary_expression "puVar15 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar15 + -0x14)" * (cast_expression "(undefined4 *)(puVar15 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + -0x14)" ( (binary_expression "puVar15 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar15 + -0x18)" * (cast_expression "(undefined4 *)(puVar15 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + -0x18)" ( (binary_expression "puVar15 + -0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar15 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar15 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar15 + -0x1c)" * (cast_expression "(undefined1 **)(puVar15 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + -0x1c)" ( (binary_expression "puVar15 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar15 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar15 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar15 + -0x20)" * (cast_expression "(undefined1 **)(puVar15 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar15 + -0x20)" ( (binary_expression "puVar15 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar15 + -0x24) = 0x47511;" (assignment_expression "*(undefined4 *)(puVar15 + -0x24) = 0x47511" (pointer_expression "*(undefined4 *)(puVar15 + -0x24)" * (cast_expression "(undefined4 *)(puVar15 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar15 + -0x24)" ( (binary_expression "puVar15 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom8h_mul();" (call_expression "__gmpn_toom8h_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar11 = puVar15;" (assignment_expression "puVar11 = puVar15" identifier = identifier) ;) }))))) (if_statement "if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }" if (parenthesized_expression "(*(int *)(puVar17 + -0x94) != 0)" ( (binary_expression "*(int *)(puVar17 + -0x94) != 0" (pointer_expression "*(int *)(puVar17 + -0x94)" * (cast_expression "(int *)(puVar17 + -0x94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x94)" ( (binary_expression "puVar17 + -0x94" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }" { (expression_statement "*(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);" (assignment_expression "*(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94)" (pointer_expression "*(int *)(puVar11 + -0x10)" * (cast_expression "(int *)(puVar11 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = (pointer_expression "*(int *)(puVar17 + -0x94)" * (cast_expression "(int *)(puVar17 + -0x94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x94)" ( (binary_expression "puVar17 + -0x94" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x4752b;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x4752b" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmp_tmp_reentrant_free();" (call_expression "__gmp_tmp_reentrant_free()" identifier (argument_list "()" ( ))) ;) })) (goto_statement "goto LAB_000471aa;" goto statement_identifier ;) })) })) (expression_statement "*(undefined4 *)(puVar17 + -0x94) = 0;" (assignment_expression "*(undefined4 *)(puVar17 + -0x94) = 0" (pointer_expression "*(undefined4 *)(puVar17 + -0x94)" * (cast_expression "(undefined4 *)(puVar17 + -0x94)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x94)" ( (binary_expression "puVar17 + -0x94" identifier + number_literal) )))) = number_literal) ;) (expression_statement "puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);" (assignment_expression "puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10)" identifier = (cast_expression "(undefined1 *)((int)(puVar18 + 8) * 0x10)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)(puVar18 + 8) * 0x10)" ( (binary_expression "(int)(puVar18 + 8) * 0x10" (cast_expression "(int)(puVar18 + 8)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(puVar18 + 8)" ( (binary_expression "puVar18 + 8" identifier + number_literal) ))) * number_literal) )))) ;) (if_statement "if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }" if (parenthesized_expression "(puVar11 < (undefined1 *)0x7f01)" ( (binary_expression "puVar11 < (undefined1 *)0x7f01" identifier < (cast_expression "(undefined1 *)0x7f01" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }" { (expression_statement "*(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);" (assignment_expression "*(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10)" (pointer_expression "*(undefined1 **)(puVar17 + -0xb4)" * (cast_expression "(undefined1 **)(puVar17 + -0xb4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) )))) = (binary_expression "auStack_e0 + -(int)(puVar11 + 0x10)" identifier + (unary_expression "-(int)(puVar11 + 0x10)" - (cast_expression "(int)(puVar11 + 0x10)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(puVar11 + 0x10)" ( (binary_expression "puVar11 + 0x10" identifier + number_literal) )))))) ;) (expression_statement "puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);" (assignment_expression "puVar11 = auStack_e0 + -(int)(puVar11 + 0x10)" identifier = (binary_expression "auStack_e0 + -(int)(puVar11 + 0x10)" identifier + (unary_expression "-(int)(puVar11 + 0x10)" - (cast_expression "(int)(puVar11 + 0x10)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(puVar11 + 0x10)" ( (binary_expression "puVar11 + 0x10" identifier + number_literal) )))))) ;) }) (else_clause "else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }" else (compound_statement "{\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }" { (expression_statement "*(undefined1 **)(puVar17 + -0xa4) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa4) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = identifier) ;) (expression_statement "apuStack_f4[1] = puVar17 + -0x94;" (assignment_expression "apuStack_f4[1] = puVar17 + -0x94" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (binary_expression "puVar17 + -0x94" identifier + number_literal)) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x47de3;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x47de3" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x47de3" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "apuStack_f4[2] = puVar11;" (assignment_expression "apuStack_f4[2] = puVar11" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar10 = __gmp_tmp_reentrant_alloc();" (assignment_expression "uVar10 = __gmp_tmp_reentrant_alloc()" identifier = (call_expression "__gmp_tmp_reentrant_alloc()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar12 = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "puVar12 = *(undefined1 **)(puVar17 + -0xa4)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xb4) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xb4) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" identifier = identifier) ;) }))) (expression_statement "*(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;" (assignment_expression "*(int *)(puVar17 + -0xb8) = (int)puVar18 * 5" (pointer_expression "*(int *)(puVar17 + -0xb8)" * (cast_expression "(int *)(puVar17 + -0xb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 5" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "*(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;" (assignment_expression "*(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + 0x10) * 2" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) * number_literal)) ;) (expression_statement "*(int *)(puVar17 + -0xac) = (int)puVar18 * 7;" (assignment_expression "*(int *)(puVar17 + -0xac) = (int)puVar18 * 7" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 7" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (if_statement "if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }" if (parenthesized_expression "(SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0)" ( (binary_expression "SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0" (call_expression "SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5)" identifier (argument_list "(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5)" ( (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) , (binary_expression "(int)puVar18 * 5" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ))) == (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0" (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * -5" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) + (binary_expression "(int)puVar18 * -5" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) < number_literal)) )) (compound_statement "{\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }" { (expression_statement "uVar9 = ((int)puVar18 * 7 >> 1) * 4;" (assignment_expression "uVar9 = ((int)puVar18 * 7 >> 1) * 4" identifier = (binary_expression "((int)puVar18 * 7 >> 1) * 4" (parenthesized_expression "((int)puVar18 * 7 >> 1)" ( (binary_expression "(int)puVar18 * 7 >> 1" (binary_expression "(int)puVar18 * 7" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) >> number_literal) )) * number_literal)) ;) (if_statement "if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }" if (parenthesized_expression "(uVar9 < 0x7f01)" ( (binary_expression "uVar9 < 0x7f01" identifier < number_literal) )) (compound_statement "{\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }" { (expression_statement "iVar2 = -(uVar9 + 0x1b & 0xfffffff0);" (assignment_expression "iVar2 = -(uVar9 + 0x1b & 0xfffffff0)" identifier = (unary_expression "-(uVar9 + 0x1b & 0xfffffff0)" - (parenthesized_expression "(uVar9 + 0x1b & 0xfffffff0)" ( (binary_expression "uVar9 + 0x1b & 0xfffffff0" (binary_expression "uVar9 + 0x1b" identifier + number_literal) & number_literal) )))) ;) (expression_statement "iVar16 = (int)puVar11 + iVar2;" (assignment_expression "iVar16 = (int)puVar11 + iVar2" identifier = (binary_expression "(int)puVar11 + iVar2" (cast_expression "(int)puVar11" ( (type_descriptor "int" primitive_type) ) identifier) + identifier)) ;) (expression_statement "puVar11 = puVar11 + iVar2;" (assignment_expression "puVar11 = puVar11 + iVar2" identifier = (binary_expression "puVar11 + iVar2" identifier + identifier)) ;) (expression_statement "*(int *)(puVar17 + -0xa4) = iVar16;" (assignment_expression "*(int *)(puVar17 + -0xa4) = iVar16" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }" else (compound_statement "{\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }" { (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(puVar11 + -0xc) = uVar9;" (assignment_expression "*(uint *)(puVar11 + -0xc) = uVar9" (pointer_expression "*(uint *)(puVar11 + -0xc)" * (cast_expression "(uint *)(puVar11 + -0xc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = (binary_expression "puVar17 + -0x94" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x47eac;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x47eac" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar10 = __gmp_tmp_reentrant_alloc();" (assignment_expression "uVar10 = __gmp_tmp_reentrant_alloc()" identifier = (call_expression "__gmp_tmp_reentrant_alloc()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar12 = *(undefined1 **)(puVar17 + -0xa8);" (assignment_expression "puVar12 = *(undefined1 **)(puVar17 + -0xa8)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xa4) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xa4) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = identifier) ;) }))) (expression_statement "*(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;" (assignment_expression "*(int *)(puVar17 + -0xc4) = (int)puVar18 * 2" (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 2" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (if_statement "if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }" if (parenthesized_expression "((int)puVar18 < 0x6e)" ( (binary_expression "(int)puVar18 < 0x6e" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }" { (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar11 + -0x18) = (int)puVar18 * 2;" (assignment_expression "*(int *)(puVar11 + -0x18) = (int)puVar18 * 2" (pointer_expression "*(int *)(puVar11 + -0x18)" * (cast_expression "(int *)(puVar11 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 2" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" * (cast_expression "(undefined1 **)(puVar11 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" * (cast_expression "(undefined1 **)(puVar11 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x475ed;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x475ed" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);" (assignment_expression "iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4)" identifier = (binary_expression "*(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4)" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) - (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))))) ;) (expression_statement "*(int *)(puVar17 + -0xb0) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xb0) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar2 = (int)puVar18 * 8;" (assignment_expression "iVar2 = (int)puVar18 * 8" identifier = (binary_expression "(int)puVar18 * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "*(int *)(puVar17 + -0xc0) = iVar2;" (assignment_expression "*(int *)(puVar17 + -0xc0) = iVar2" (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar19 = puVar19 + iVar2;" (assignment_expression "puVar19 = puVar19 + iVar2" identifier = (binary_expression "puVar19 + iVar2" identifier + identifier)) ;) (expression_statement "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;" (assignment_expression "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xa8) + iVar2" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) + identifier)) ;) (expression_statement "*(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xa8) = (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "*(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xbc)" * (cast_expression "(int *)(puVar17 + -0xbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) + (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "iVar2 = *(int *)(puVar17 + -0xb8);" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xb8)" identifier = (pointer_expression "*(int *)(puVar17 + -0xb8)" * (cast_expression "(int *)(puVar17 + -0xb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) ))))) ;) (if_statement "if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" if (parenthesized_expression "(iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0)" ( (binary_expression "iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0" (binary_expression "iVar2 == iVar14 * 2" identifier == (binary_expression "iVar14 * 2" identifier * number_literal)) || (binary_expression "SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0" (call_expression "SBORROW4(iVar2,iVar14 * 2)" identifier (argument_list "(iVar2,iVar14 * 2)" ( identifier , (binary_expression "iVar14 * 2" identifier * number_literal) ))) != (binary_expression "iVar2 + iVar14 * -2 < 0" (binary_expression "iVar2 + iVar14 * -2" identifier + (binary_expression "iVar14 * -2" identifier * number_literal)) < number_literal))) )) (compound_statement "{\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" { (expression_statement "iVar2 = *(int *)(puVar17 + -0xc4);" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xc4)" identifier = (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar17 + 0x18) = puVar18;" (assignment_expression "*(undefined1 **)(puVar17 + 0x18) = puVar18" (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" * (cast_expression "(undefined1 **)(puVar17 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;" (assignment_expression "*(int *)(puVar17 + -0xd0) = (int)puVar18 * -4" (pointer_expression "*(int *)(puVar17 + -0xd0)" * (cast_expression "(int *)(puVar17 + -0xd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xd0)" ( (binary_expression "puVar17 + -0xd0" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * -4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;" (assignment_expression "iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2" identifier = (binary_expression "(*(int *)(puVar17 + -0xb0) - iVar2) * 2" (parenthesized_expression "(*(int *)(puVar17 + -0xb0) - iVar2)" ( (binary_expression "*(int *)(puVar17 + -0xb0) - iVar2" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) - identifier) )) * number_literal)) ;) (do_statement "do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);" do (compound_statement "{\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            }" { (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);" (assignment_expression "*(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18)" (pointer_expression "*(undefined4 *)(puVar11 + -0x10)" * (cast_expression "(undefined4 *)(puVar11 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x18)" * (cast_expression "(undefined4 *)(puVar17 + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar11 + -0x18) = iVar2;" (assignment_expression "*(int *)(puVar11 + -0x18) = iVar2" (pointer_expression "*(int *)(puVar11 + -0x18)" * (cast_expression "(int *)(puVar11 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(puVar11 + -0x1c)" * (cast_expression "(undefined4 *)(puVar11 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -0x20)" * (cast_expression "(undefined4 *)(puVar11 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar17 + -0xcc) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xcc) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xcc)" * (cast_expression "(int *)(puVar17 + -0xcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xcc)" ( (binary_expression "puVar17 + -0xcc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x4769a;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x4769a" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);" (assignment_expression "*(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18)" (pointer_expression "*(undefined4 *)(puVar11 + -4)" * (cast_expression "(undefined4 *)(puVar11 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -4)" ( (binary_expression "puVar11 + -4" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x18)" * (cast_expression "(undefined4 *)(puVar17 + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "puVar6 = *(undefined4 **)(puVar17 + -0x9c);" (assignment_expression "puVar6 = *(undefined4 **)(puVar17 + -0x9c)" identifier = (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = *(int *)(puVar17 + -0xc0);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xc0)" identifier = (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -8)" * (cast_expression "(undefined4 *)(puVar11 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -8)" ( (binary_expression "puVar11 + -8" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0xc) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0xc) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0xc)" * (cast_expression "(undefined1 **)(puVar11 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;" (assignment_expression "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xac) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) + identifier)) ;) (expression_statement "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;" (assignment_expression "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xb0) - iVar2" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) - identifier)) ;) (expression_statement "pcVar3 = (code *)*puVar6;" (assignment_expression "pcVar3 = (code *)*puVar6" identifier = (cast_expression "(code *)*puVar6" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar6" * identifier))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x476c2;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x476c2" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar10 = (*pcVar3)();" (assignment_expression "uVar10 = (*pcVar3)()" identifier = (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( )))) ;) (expression_statement "iVar14 = *(int *)(puVar17 + -0xa8);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xa8)" identifier = (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar17 + -200) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -200) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -200)" * (cast_expression "(undefined4 *)(puVar17 + -200)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -200)" ( (binary_expression "puVar17 + -200" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar4 = *(int *)(puVar17 + -0x9c);" (assignment_expression "iVar4 = *(int *)(puVar17 + -0x9c)" identifier = (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar11 + -8) = iVar2;" (assignment_expression "*(int *)(puVar11 + -8) = iVar2" (pointer_expression "*(int *)(puVar11 + -8)" * (cast_expression "(int *)(puVar11 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -8)" ( (binary_expression "puVar11 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;" (assignment_expression "*(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14" (pointer_expression "*(undefined1 **)(puVar17 + -0xc4)" * (cast_expression "(undefined1 **)(puVar17 + -0xc4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))) = (binary_expression "puVar19 + iVar14" identifier + identifier)) ;) (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = (binary_expression "puVar19 + iVar14" identifier + identifier)) ;) (expression_statement "pcVar3 = *(code **)(iVar4 + 0x28);" (assignment_expression "pcVar3 = *(code **)(iVar4 + 0x28)" identifier = (pointer_expression "*(code **)(iVar4 + 0x28)" * (cast_expression "(code **)(iVar4 + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar4 + 0x28)" ( (binary_expression "iVar4 + 0x28" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x476eb;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x476eb" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "puVar13 = *(uint **)(puVar17 + -0xc4);" (assignment_expression "puVar13 = *(uint **)(puVar17 + -0xc4)" identifier = (pointer_expression "*(uint **)(puVar17 + -0xc4)" * (cast_expression "(uint **)(puVar17 + -0xc4)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) ))))) ;) (expression_statement "uVar8 = *(uint *)(puVar17 + -200);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -200)" identifier = (pointer_expression "*(uint *)(puVar17 + -200)" * (cast_expression "(uint *)(puVar17 + -200)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -200)" ( (binary_expression "puVar17 + -200" identifier + number_literal) ))))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" { (do_statement "do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);" do (compound_statement "{\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                }" { (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0)" identifier = (binary_expression "*(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0)" (pointer_expression "*(int *)(puVar17 + -0xcc)" * (cast_expression "(int *)(puVar17 + -0xcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xcc)" ( (binary_expression "puVar17 + -0xcc" identifier + number_literal) )))) + (pointer_expression "*(int *)(puVar17 + -0xd0)" * (cast_expression "(int *)(puVar17 + -0xd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xd0)" ( (binary_expression "puVar17 + -0xd0" identifier + number_literal) )))))) ;) (expression_statement "puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);" (assignment_expression "puVar19 = puVar19 + *(int *)(puVar17 + -0xc0)" identifier = (binary_expression "puVar19 + *(int *)(puVar17 + -0xc0)" identifier + (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) )))))) ;) }) while (parenthesized_expression "(*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14)" ( (binary_expression "*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xb8)" * (cast_expression "(int *)(puVar17 + -0xb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) )))) <= (binary_expression "*(int *)(puVar17 + -0xa8) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) + identifier)) )) ;) (labeled_statement "LAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);" statement_identifier : (expression_statement "puVar18 = *(undefined1 **)(puVar17 + 0x18);" (assignment_expression "puVar18 = *(undefined1 **)(puVar17 + 0x18)" identifier = (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" * (cast_expression "(undefined1 **)(puVar17 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;)) })) }) (else_clause "else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }" else (compound_statement "{\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }" { (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" * (cast_expression "(undefined4 *)(puVar11 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xc4)" * (cast_expression "(undefined4 *)(puVar17 + -0xc4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" * (cast_expression "(undefined1 **)(puVar11 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" * (cast_expression "(undefined1 **)(puVar11 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47adb;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47adb" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom63_mul();" (call_expression "__gmpn_toom63_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;" (assignment_expression "*(int *)(puVar17 + -0xc0) = (int)puVar18 * 8" (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);" (assignment_expression "iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4)" identifier = (binary_expression "*(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4)" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) - (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))))) ;) (expression_statement "*(int *)(puVar17 + -0xb0) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xb0) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar19 = puVar19 + (int)puVar18 * 8;" (assignment_expression "puVar19 = puVar19 + (int)puVar18 * 8" identifier = (binary_expression "puVar19 + (int)puVar18 * 8" identifier + (binary_expression "(int)puVar18 * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;" (assignment_expression "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xa8) + (int)puVar18 * 8" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) + (binary_expression "(int)puVar18 * 8" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "*(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xa8) = (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "*(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xbc)" * (cast_expression "(int *)(puVar17 + -0xbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) + (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "iVar2 = *(int *)(puVar17 + -0xb8);" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xb8)" identifier = (pointer_expression "*(int *)(puVar17 + -0xb8)" * (cast_expression "(int *)(puVar17 + -0xb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) ))))) ;) (if_statement "if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }" if (parenthesized_expression "(iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0)" ( (binary_expression "iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0" (binary_expression "iVar2 == iVar14 * 2" identifier == (binary_expression "iVar14 * 2" identifier * number_literal)) || (binary_expression "SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0" (call_expression "SBORROW4(iVar2,iVar14 * 2)" identifier (argument_list "(iVar2,iVar14 * 2)" ( identifier , (binary_expression "iVar14 * 2" identifier * number_literal) ))) != (binary_expression "iVar2 + iVar14 * -2 < 0" (binary_expression "iVar2 + iVar14 * -2" identifier + (binary_expression "iVar14 * -2" identifier * number_literal)) < number_literal))) )) (compound_statement "{\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }" { (expression_statement "iVar2 = *(int *)(puVar17 + -0xc4);" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xc4)" identifier = (pointer_expression "*(int *)(puVar17 + -0xc4)" * (cast_expression "(int *)(puVar17 + -0xc4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar17 + 0x18) = puVar18;" (assignment_expression "*(undefined1 **)(puVar17 + 0x18) = puVar18" (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" * (cast_expression "(undefined1 **)(puVar17 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;" (assignment_expression "*(int *)(puVar17 + -0xd0) = (int)puVar18 * -4" (pointer_expression "*(int *)(puVar17 + -0xd0)" * (cast_expression "(int *)(puVar17 + -0xd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xd0)" ( (binary_expression "puVar17 + -0xd0" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * -4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "iVar14 = (iVar14 - iVar2) * 2;" (assignment_expression "iVar14 = (iVar14 - iVar2) * 2" identifier = (binary_expression "(iVar14 - iVar2) * 2" (parenthesized_expression "(iVar14 - iVar2)" ( (binary_expression "iVar14 - iVar2" identifier - identifier) )) * number_literal)) ;) (do_statement "do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);" do (compound_statement "{\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            }" { (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);" (assignment_expression "*(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18)" (pointer_expression "*(undefined4 *)(puVar11 + -0x10)" * (cast_expression "(undefined4 *)(puVar11 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x18)" * (cast_expression "(undefined4 *)(puVar17 + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar11 + -0x18) = iVar2;" (assignment_expression "*(int *)(puVar11 + -0x18) = iVar2" (pointer_expression "*(int *)(puVar11 + -0x18)" * (cast_expression "(int *)(puVar11 + -0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(puVar11 + -0x1c)" * (cast_expression "(undefined4 *)(puVar11 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -0x20)" * (cast_expression "(undefined4 *)(puVar11 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar17 + -0xcc) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xcc) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xcc)" * (cast_expression "(int *)(puVar17 + -0xcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xcc)" ( (binary_expression "puVar17 + -0xcc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47b8a;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47b8a" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom63_mul();" (call_expression "__gmpn_toom63_mul()" identifier (argument_list "()" ( ))) ;) (expression_statement "*(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);" (assignment_expression "*(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18)" (pointer_expression "*(undefined4 *)(puVar11 + -4)" * (cast_expression "(undefined4 *)(puVar11 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -4)" ( (binary_expression "puVar11 + -4" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x18)" * (cast_expression "(undefined4 *)(puVar17 + 0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x18)" ( (binary_expression "puVar17 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "puVar6 = *(undefined4 **)(puVar17 + -0x9c);" (assignment_expression "puVar6 = *(undefined4 **)(puVar17 + -0x9c)" identifier = (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "iVar14 = *(int *)(puVar17 + -0xc0);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xc0)" identifier = (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -8)" * (cast_expression "(undefined4 *)(puVar11 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -8)" ( (binary_expression "puVar11 + -8" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0xc) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0xc) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0xc)" * (cast_expression "(undefined1 **)(puVar11 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;" (assignment_expression "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xac) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) + identifier)) ;) (expression_statement "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;" (assignment_expression "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) = (binary_expression "*(int *)(puVar17 + -0xb0) - iVar2" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) - identifier)) ;) (expression_statement "pcVar3 = (code *)*puVar6;" (assignment_expression "pcVar3 = (code *)*puVar6" identifier = (cast_expression "(code *)*puVar6" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar6" * identifier))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x47bb2;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x47bb2" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar10 = (*pcVar3)();" (assignment_expression "uVar10 = (*pcVar3)()" identifier = (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( )))) ;) (expression_statement "iVar14 = *(int *)(puVar17 + -0xa8);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xa8)" identifier = (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar17 + -200) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -200) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -200)" * (cast_expression "(undefined4 *)(puVar17 + -200)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -200)" ( (binary_expression "puVar17 + -200" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar4 = *(int *)(puVar17 + -0x9c);" (assignment_expression "iVar4 = *(int *)(puVar17 + -0x9c)" identifier = (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "*(int *)(puVar11 + -8) = iVar2;" (assignment_expression "*(int *)(puVar11 + -8) = iVar2" (pointer_expression "*(int *)(puVar11 + -8)" * (cast_expression "(int *)(puVar11 + -8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -8)" ( (binary_expression "puVar11 + -8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;" (assignment_expression "*(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14" (pointer_expression "*(undefined1 **)(puVar17 + -0xc4)" * (cast_expression "(undefined1 **)(puVar17 + -0xc4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) )))) = (binary_expression "puVar19 + iVar14" identifier + identifier)) ;) (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = (binary_expression "puVar19 + iVar14" identifier + identifier)) ;) (expression_statement "pcVar3 = *(code **)(iVar4 + 0x28);" (assignment_expression "pcVar3 = *(code **)(iVar4 + 0x28)" identifier = (pointer_expression "*(code **)(iVar4 + 0x28)" * (cast_expression "(code **)(iVar4 + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar4 + 0x28)" ( (binary_expression "iVar4 + 0x28" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x47bda;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x47bda" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "puVar13 = *(uint **)(puVar17 + -0xc4);" (assignment_expression "puVar13 = *(uint **)(puVar17 + -0xc4)" identifier = (pointer_expression "*(uint **)(puVar17 + -0xc4)" * (cast_expression "(uint **)(puVar17 + -0xc4)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xc4)" ( (binary_expression "puVar17 + -0xc4" identifier + number_literal) ))))) ;) (expression_statement "uVar8 = *(uint *)(puVar17 + -200);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -200)" identifier = (pointer_expression "*(uint *)(puVar17 + -200)" * (cast_expression "(uint *)(puVar17 + -200)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -200)" ( (binary_expression "puVar17 + -200" identifier + number_literal) ))))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" { (do_statement "do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);" do (compound_statement "{\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                }" { (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0)" identifier = (binary_expression "*(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0)" (pointer_expression "*(int *)(puVar17 + -0xcc)" * (cast_expression "(int *)(puVar17 + -0xcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xcc)" ( (binary_expression "puVar17 + -0xcc" identifier + number_literal) )))) + (pointer_expression "*(int *)(puVar17 + -0xd0)" * (cast_expression "(int *)(puVar17 + -0xd0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xd0)" ( (binary_expression "puVar17 + -0xd0" identifier + number_literal) )))))) ;) (expression_statement "puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);" (assignment_expression "puVar19 = puVar19 + *(int *)(puVar17 + -0xc0)" identifier = (binary_expression "puVar19 + *(int *)(puVar17 + -0xc0)" identifier + (pointer_expression "*(int *)(puVar17 + -0xc0)" * (cast_expression "(int *)(puVar17 + -0xc0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xc0)" ( (binary_expression "puVar17 + -0xc0" identifier + number_literal) )))))) ;) }) while (parenthesized_expression "(*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14)" ( (binary_expression "*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xb8)" * (cast_expression "(int *)(puVar17 + -0xb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) )))) <= (binary_expression "*(int *)(puVar17 + -0xa8) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) + identifier)) )) ;) (goto_statement "goto LAB_0004772d;" goto statement_identifier ;) })) }))) (if_statement "if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }" if (parenthesized_expression "(*(int *)(puVar17 + -0xb0) < (int)puVar18)" ( (binary_expression "*(int *)(puVar17 + -0xb0) < (int)puVar18" (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))) < (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }" { (expression_statement "*(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);" (assignment_expression "*(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0)" (pointer_expression "*(int *)(puVar11 + -0x10)" * (cast_expression "(int *)(puVar11 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x18) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x18) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x18)" * (cast_expression "(undefined1 **)(puVar11 + -0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x1c)" * (cast_expression "(undefined4 *)(puVar11 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -0x20)" * (cast_expression "(undefined4 *)(puVar11 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x4775a;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x4775a" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_mul();" (call_expression "__gmpn_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }" else (compound_statement "{\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }" { (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" * (cast_expression "(undefined4 *)(puVar11 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb0)" * (cast_expression "(undefined4 *)(puVar17 + -0xb0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(puVar11 + -0x1c)" * (cast_expression "(undefined4 *)(puVar11 + -0x1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" * (cast_expression "(undefined4 *)(puVar17 + -0xac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -0x20)" * (cast_expression "(undefined4 *)(puVar11 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47c49;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47c49" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_mul();" (call_expression "__gmpn_mul()" identifier (argument_list "()" ( ))) ;) }))) (expression_statement "puVar6 = *(undefined4 **)(puVar17 + -0x9c);" (assignment_expression "puVar6 = *(undefined4 **)(puVar17 + -0x9c)" identifier = (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -4) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -4) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -4)" * (cast_expression "(undefined1 **)(puVar11 + -4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -4)" ( (binary_expression "puVar11 + -4" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -8)" * (cast_expression "(undefined4 *)(puVar11 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -8)" ( (binary_expression "puVar11 + -8" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0xc) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0xc) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0xc)" * (cast_expression "(undefined1 **)(puVar11 + -0xc)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "pcVar3 = (code *)*puVar6;" (assignment_expression "pcVar3 = (code *)*puVar6" identifier = (cast_expression "(code *)*puVar6" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar6" * identifier))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x4776e;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x4776e" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar10 = (*pcVar3)();" (assignment_expression "uVar10 = (*pcVar3)()" identifier = (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( )))) ;) (expression_statement "iVar2 = *(int *)(puVar17 + -0xa8);" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xa8)" identifier = (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar17 + -0xa4) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xa4) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" * (cast_expression "(undefined4 *)(puVar17 + -0xa4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar14 = *(int *)(puVar17 + -0x9c);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0x9c)" identifier = (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);" (assignment_expression "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0)" (pointer_expression "*(undefined4 *)(puVar11 + -8)" * (cast_expression "(undefined4 *)(puVar11 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -8)" ( (binary_expression "puVar11 + -8" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb0)" * (cast_expression "(undefined4 *)(puVar17 + -0xb0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2" (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) )))) = (binary_expression "puVar19 + iVar2" identifier + identifier)) ;) (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" * (cast_expression "(undefined4 *)(puVar17 + -0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xbc)" ( (binary_expression "puVar17 + -0xbc" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = (binary_expression "puVar19 + iVar2" identifier + identifier)) ;) (expression_statement "pcVar3 = *(code **)(iVar14 + 0x28);" (assignment_expression "pcVar3 = *(code **)(iVar14 + 0x28)" identifier = (pointer_expression "*(code **)(iVar14 + 0x28)" * (cast_expression "(code **)(iVar14 + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar14 + 0x28)" ( (binary_expression "iVar14 + 0x28" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x4779b;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x4779b" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "puVar13 = *(uint **)(puVar17 + -0xa0);" (assignment_expression "puVar13 = *(uint **)(puVar17 + -0xa0)" identifier = (pointer_expression "*(uint **)(puVar17 + -0xa0)" * (cast_expression "(uint **)(puVar17 + -0xa0)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "uVar8 = *(uint *)(puVar17 + -0xa4);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -0xa4)" identifier = (pointer_expression "*(uint *)(puVar17 + -0xa4)" * (cast_expression "(uint *)(puVar17 + -0xa4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }" { (do_statement "do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);" do (compound_statement "{\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          }" { (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0)" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = (binary_expression "puVar18 + *(int *)(puVar17 + -0xb0)" identifier + (pointer_expression "*(int *)(puVar17 + -0xb0)" * (cast_expression "(int *)(puVar17 + -0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb0)" ( (binary_expression "puVar17 + -0xb0" identifier + number_literal) )))))) ;) }) (else_clause "else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }" else (compound_statement "{\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }" { (expression_statement "iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;" (assignment_expression "iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2" identifier = (binary_expression "(*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2" (parenthesized_expression "(*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10))" ( (binary_expression "*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) + (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) )) * number_literal)) ;) (if_statement "if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" if (parenthesized_expression "(iVar2 < *(int *)(puVar17 + -0xac))" ( (binary_expression "iVar2 < *(int *)(puVar17 + -0xac)" identifier < (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) )) (compound_statement "{\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }" { (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" * (cast_expression "(undefined4 *)(puVar11 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" * (cast_expression "(undefined1 **)(puVar11 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" * (cast_expression "(undefined1 **)(puVar11 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47d4a;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47d4a" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom33_mul();" (call_expression "__gmpn_toom33_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" else (if_statement "if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" if (parenthesized_expression "(SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0)" ( (binary_expression "SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0" (call_expression "SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3)" identifier (argument_list "(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3)" ( (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) , (binary_expression "(int)puVar18 * 3" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ))) == (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0" (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * -3" (pointer_expression "*(int *)(puVar17 + -0xa4)" * (cast_expression "(int *)(puVar17 + -0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) + (binary_expression "(int)puVar18 * -3" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) < number_literal)) )) (compound_statement "{\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }" { (if_statement "if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }" if (parenthesized_expression "(iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2))" ( (binary_expression "iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)" identifier < (cast_expression "(int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(puVar18 + *(int *)(puVar17 + -0xb8) * 2)" ( (binary_expression "puVar18 + *(int *)(puVar17 + -0xb8) * 2" identifier + (binary_expression "*(int *)(puVar17 + -0xb8) * 2" (pointer_expression "*(int *)(puVar17 + -0xb8)" * (cast_expression "(int *)(puVar17 + -0xb8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb8)" ( (binary_expression "puVar17 + -0xb8" identifier + number_literal) )))) * number_literal)) )))) )) (compound_statement "{\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }" { (if_statement "if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;" if (parenthesized_expression "(*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac))" ( (binary_expression "*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)" (binary_expression "*(int *)(puVar17 + 0x10) * 4" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) * number_literal) < (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) )) (compound_statement "{\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }" { (if_statement "if ((int)puVar18 < 0x6e) goto LAB_00047dab;" if (parenthesized_expression "((int)puVar18 < 0x6e)" ( (binary_expression "(int)puVar18 < 0x6e" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_00047dab;" goto statement_identifier ;)) }) (else_clause "else if ((int)puVar18 < 100) goto LAB_00047e74;" else (if_statement "if ((int)puVar18 < 100) goto LAB_00047e74;" if (parenthesized_expression "((int)puVar18 < 100)" ( (binary_expression "(int)puVar18 < 100" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto LAB_00047e74;" goto statement_identifier ;)))) (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" * (cast_expression "(undefined4 *)(puVar11 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" * (cast_expression "(undefined1 **)(puVar11 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" * (cast_expression "(undefined1 **)(puVar11 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47d26;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47d26" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom53_mul();" (call_expression "__gmpn_toom53_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }" else (if_statement "if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }" if (parenthesized_expression "((int)puVar18 < 0x6e)" ( (binary_expression "(int)puVar18 < 0x6e" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }" { (labeled_statement "LAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" statement_identifier : (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;)) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" * (cast_expression "(undefined4 *)(puVar11 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" * (cast_expression "(undefined1 **)(puVar11 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" * (cast_expression "(undefined1 **)(puVar11 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47e8e;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47e8e" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }" else (compound_statement "{\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }" { (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" * (cast_expression "(undefined4 *)(puVar11 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" * (cast_expression "(undefined1 **)(puVar11 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" * (cast_expression "(undefined1 **)(puVar11 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47e27;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47e27" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom63_mul();" (call_expression "__gmpn_toom63_mul()" identifier (argument_list "()" ( ))) ;) }))))) }) (else_clause "else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" else (if_statement "if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" if (parenthesized_expression "((int)puVar18 < 100)" ( (binary_expression "(int)puVar18 < 100" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }" { (labeled_statement "LAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" statement_identifier : (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;)) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" * (cast_expression "(undefined4 *)(puVar11 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" * (cast_expression "(undefined1 **)(puVar11 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" * (cast_expression "(undefined1 **)(puVar11 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47dc5;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47dc5" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom32_mul();" (call_expression "__gmpn_toom32_mul()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" else (compound_statement "{\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" { (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" * (cast_expression "(undefined4 *)(puVar17 + -0xb4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xb4)" ( (binary_expression "puVar17 + -0xb4" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" * (cast_expression "(undefined1 **)(puVar11 + -0x10)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" * (cast_expression "(undefined4 *)(puVar17 + -0xa0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" * (cast_expression "(undefined4 *)(puVar11 + -0x18)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" * (cast_expression "(undefined4 *)(puVar17 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" * (cast_expression "(undefined1 **)(puVar11 + -0x1c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" * (cast_expression "(undefined1 **)(puVar11 + -0x20)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47a39;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47a39" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmpn_toom43_mul();" (call_expression "__gmpn_toom43_mul()" identifier (argument_list "()" ( ))) ;) }))))))) }))) (if_statement "if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }" if (parenthesized_expression "(*(int *)(puVar17 + -0x94) != 0)" ( (binary_expression "*(int *)(puVar17 + -0x94) != 0" (pointer_expression "*(int *)(puVar17 + -0x94)" * (cast_expression "(int *)(puVar17 + -0x94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x94)" ( (binary_expression "puVar17 + -0x94" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }" { (expression_statement "*(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);" (assignment_expression "*(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94)" (pointer_expression "*(int *)(puVar11 + -0x10)" * (cast_expression "(int *)(puVar11 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = (pointer_expression "*(int *)(puVar17 + -0x94)" * (cast_expression "(int *)(puVar17 + -0x94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x94)" ( (binary_expression "puVar17 + -0x94" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x47e00;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x47e00" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "__gmp_tmp_reentrant_free();" (call_expression "__gmp_tmp_reentrant_free()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "*(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);" (assignment_expression "*(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8)" (pointer_expression "*(undefined4 *)(puVar17 + -0x9c)" * (cast_expression "(undefined4 *)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = (pointer_expression "*(undefined4 *)(puVar17 + -0xa8)" * (cast_expression "(undefined4 *)(puVar17 + -0xa8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000471aa;" goto statement_identifier ;) })) }))) (expression_statement "pcVar3 = *(code **)(*(int *)(puVar17 + -0x9c) + 0x68);" (assignment_expression "pcVar3 = *(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" identifier = (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" * (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x68)" ( (binary_expression "*(int *)(puVar17 + -0x9c) + 0x68" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "apuStack_100[1] = puVar12;" (assignment_expression "apuStack_100[1] = puVar12" (subscript_expression "apuStack_100[1]" identifier [ number_literal ]) = identifier) ;) (if_statement "if ((*(int *)(puVar17 + 0x10) < 0x1f5) || (puVar18 == (undefined1 *)0x1)) {\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = *(int *)(puVar17 + 0x10);\n    auStack_8014[0x1fc4] = 0x47451;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n    puVar11 = auStack_e0;\n  }\n  else {\n    *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = 500;\n    auStack_8014[0x1fc4] = 0x46f33;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    apuStack_f4[1] = puVar17 + -0x90;\n    *(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];\n    apuStack_f4[0] = (undefined1 *)0x46f4e;\n    apuStack_f4[2] = puVar19 + 2000;\n    apuStack_f4[3] = puVar18;\n    (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n    iVar2 = *(int *)(puVar17 + 0x10);\n    puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);\n    *(int *)(puVar17 + -0xac) = (int)puVar18 * 4;\n    puVar19 = puVar19 + 2000;\n    while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }\n    if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n    apuStack_f4[0] = (undefined1 *)0x47047;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar19;\n    uStack_e4 = (uint)puVar18;\n    uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n    puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;\n    puVar11 = auStack_e0;\n  }" if (parenthesized_expression "((*(int *)(puVar17 + 0x10) < 0x1f5) || (puVar18 == (undefined1 *)0x1))" ( (binary_expression "(*(int *)(puVar17 + 0x10) < 0x1f5) || (puVar18 == (undefined1 *)0x1)" (parenthesized_expression "(*(int *)(puVar17 + 0x10) < 0x1f5)" ( (binary_expression "*(int *)(puVar17 + 0x10) < 0x1f5" (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))) < number_literal) )) || (parenthesized_expression "(puVar18 == (undefined1 *)0x1)" ( (binary_expression "puVar18 == (undefined1 *)0x1" identifier == (cast_expression "(undefined1 *)0x1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (compound_statement "{\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = *(int *)(puVar17 + 0x10);\n    auStack_8014[0x1fc4] = 0x47451;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n    puVar11 = auStack_e0;\n  }" { (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "iStack_f8 = *(int *)(puVar17 + 0x10);" (assignment_expression "iStack_f8 = *(int *)(puVar17 + 0x10)" identifier = (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "auStack_8014[0x1fc4] = 0x47451;" (assignment_expression "auStack_8014[0x1fc4] = 0x47451" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "apuStack_100[0] = puVar19;" (assignment_expression "apuStack_100[0] = puVar19" (subscript_expression "apuStack_100[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);" (assignment_expression "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10)" (pointer_expression "*(undefined1 **)(puVar17 + -0x9c)" * (cast_expression "(undefined1 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = (binary_expression "puVar18 + *(int *)(puVar17 + 0x10)" identifier + (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) )))))) ;) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" identifier = identifier) ;) }) (else_clause "else {\n    *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = 500;\n    auStack_8014[0x1fc4] = 0x46f33;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    apuStack_f4[1] = puVar17 + -0x90;\n    *(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];\n    apuStack_f4[0] = (undefined1 *)0x46f4e;\n    apuStack_f4[2] = puVar19 + 2000;\n    apuStack_f4[3] = puVar18;\n    (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n    iVar2 = *(int *)(puVar17 + 0x10);\n    puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);\n    *(int *)(puVar17 + -0xac) = (int)puVar18 * 4;\n    puVar19 = puVar19 + 2000;\n    while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }\n    if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n    apuStack_f4[0] = (undefined1 *)0x47047;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar19;\n    uStack_e4 = (uint)puVar18;\n    uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n    puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;\n    puVar11 = auStack_e0;\n  }" else (compound_statement "{\n    *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = 500;\n    auStack_8014[0x1fc4] = 0x46f33;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    apuStack_f4[1] = puVar17 + -0x90;\n    *(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];\n    apuStack_f4[0] = (undefined1 *)0x46f4e;\n    apuStack_f4[2] = puVar19 + 2000;\n    apuStack_f4[3] = puVar18;\n    (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n    iVar2 = *(int *)(puVar17 + 0x10);\n    puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);\n    *(int *)(puVar17 + -0xac) = (int)puVar18 * 4;\n    puVar19 = puVar19 + 2000;\n    while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }\n    if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n    apuStack_f4[0] = (undefined1 *)0x47047;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar19;\n    uStack_e4 = (uint)puVar18;\n    uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n    puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;\n    puVar11 = auStack_e0;\n  }" { (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = identifier) ;) (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "iStack_f8 = 500;" (assignment_expression "iStack_f8 = 500" identifier = number_literal) ;) (expression_statement "auStack_8014[0x1fc4] = 0x46f33;" (assignment_expression "auStack_8014[0x1fc4] = 0x46f33" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "apuStack_100[0] = puVar19;" (assignment_expression "apuStack_100[0] = puVar19" (subscript_expression "apuStack_100[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "apuStack_f4[1] = puVar17 + -0x90;" (assignment_expression "apuStack_f4[1] = puVar17 + -0x90" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (binary_expression "puVar17 + -0x90" identifier + number_literal)) ;) (expression_statement "*(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];" (assignment_expression "*(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1]" (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) )))) = (subscript_expression "apuStack_f4[1]" identifier [ number_literal ])) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x46f4e;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x46f4e" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x46f4e" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "apuStack_f4[2] = puVar19 + 2000;" (assignment_expression "apuStack_f4[2] = puVar19 + 2000" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = (binary_expression "puVar19 + 2000" identifier + number_literal)) ;) (expression_statement "apuStack_f4[3] = puVar18;" (assignment_expression "apuStack_f4[3] = puVar18" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))" ( (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" * (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" * (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x28)" ( (binary_expression "*(int *)(puVar17 + -0x9c) + 0x28" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar2 = *(int *)(puVar17 + 0x10);" (assignment_expression "iVar2 = *(int *)(puVar17 + 0x10)" identifier = (pointer_expression "*(int *)(puVar17 + 0x10)" * (cast_expression "(int *)(puVar17 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + 0x10)" ( (binary_expression "puVar17 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);" (assignment_expression "puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000)" identifier = (cast_expression "(undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar17 + -0xa8) + 2000)" ( (binary_expression "*(int *)(puVar17 + -0xa8) + 2000" (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "*(int *)(puVar17 + -0xac) = (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xac) = (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) )))) = (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) ;) (expression_statement "puVar19 = puVar19 + 2000;" (assignment_expression "puVar19 = puVar19 + 2000" identifier = (binary_expression "puVar19 + 2000" identifier + number_literal)) ;) (while_statement "while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }" while (parenthesized_expression "(puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11)" ( (comma_expression "puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11" (assignment_expression "puVar11 = (undefined1 *)(iVar2 - 500)" identifier = (cast_expression "(undefined1 *)(iVar2 - 500)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 - 500)" ( (binary_expression "iVar2 - 500" identifier - number_literal) )))) , (comma_expression "apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11" (assignment_expression "apuStack_100[0] = puVar19" (subscript_expression "apuStack_100[0]" identifier [ number_literal ]) = identifier) , (comma_expression "apuStack_100[1] = puVar12, 500 < (int)puVar11" (assignment_expression "apuStack_100[1] = puVar12" (subscript_expression "apuStack_100[1]" identifier [ number_literal ]) = identifier) , (binary_expression "500 < (int)puVar11" number_literal < (cast_expression "(int)puVar11" ( (type_descriptor "int" primitive_type) ) identifier))))) )) (compound_statement "{\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }" { (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar11;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar11" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" * (cast_expression "(undefined1 **)(puVar17 + -0xa8)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) )))) = identifier) ;) (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "iStack_f8 = 500;" (assignment_expression "iStack_f8 = 500" identifier = number_literal) ;) (expression_statement "auStack_8014[0x1fc4] = 0x46fa8;" (assignment_expression "auStack_8014[0x1fc4] = 0x46fa8" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))" ( (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" * (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" * (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x68)" ( (binary_expression "*(int *)(puVar17 + -0x9c) + 0x68" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4)" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x46fbc;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x46fbc" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x46fbc" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "apuStack_f4[1] = puVar19;" (assignment_expression "apuStack_f4[1] = puVar19" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[2] = puVar19;" (assignment_expression "apuStack_f4[2] = puVar19" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uStack_e4 = (uint)puVar18;" (assignment_expression "uStack_e4 = (uint)puVar18" identifier = (cast_expression "(uint)puVar18" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();" (assignment_expression "uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))()" identifier = (call_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))()" (parenthesized_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))" ( (pointer_expression "*(code *)**(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(code *)**(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar17 + -0x9c)" * (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))))) )) (argument_list "()" ( )))) ;) (expression_statement "puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));" (assignment_expression "puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac))" identifier = (cast_expression "(uint *)(puVar19 + *(int *)(puVar17 + -0xac))" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar19 + *(int *)(puVar17 + -0xac))" ( (binary_expression "puVar19 + *(int *)(puVar17 + -0xac)" identifier + (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) )))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }" { (do_statement "do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);" do (compound_statement "{\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        }" { (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "puVar19 = puVar19 + 2000;" (assignment_expression "puVar19 = puVar19 + 2000" identifier = (binary_expression "puVar19 + 2000" identifier + number_literal)) ;) (expression_statement "puVar12 = puVar12 + 2000;" (assignment_expression "puVar12 = puVar12 + 2000" identifier = (binary_expression "puVar12 + 2000" identifier + number_literal)) ;) (expression_statement "apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4)" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x46ff2;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x46ff2" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x46ff2" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "apuStack_f4[2] = puVar19;" (assignment_expression "apuStack_f4[2] = puVar19" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[3] = puVar18;" (assignment_expression "apuStack_f4[3] = puVar18" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))" ( (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" * (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" * (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x28)" ( (binary_expression "*(int *)(puVar17 + -0x9c) + 0x28" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar2 = *(int *)(puVar17 + -0xa8);" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xa8)" identifier = (pointer_expression "*(int *)(puVar17 + -0xa8)" * (cast_expression "(int *)(puVar17 + -0xa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xa8)" ( (binary_expression "puVar17 + -0xa8" identifier + number_literal) ))))) ;) })) (if_statement "if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }" if (parenthesized_expression "((int)puVar18 < (int)puVar11)" ( (binary_expression "(int)puVar18 < (int)puVar11" (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)puVar11" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }" { (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "auStack_8014[0x1fc4] = 0x47033;" (assignment_expression "auStack_8014[0x1fc4] = 0x47033" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "iStack_f8 = (int)puVar11;" (assignment_expression "iStack_f8 = (int)puVar11" identifier = (cast_expression "(int)puVar11" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))" ( (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" * (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" * (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x68)" ( (binary_expression "*(int *)(puVar17 + -0x9c) + 0x68" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "()" ( ))) ;) }) (else_clause "else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }" else (compound_statement "{\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }" { (expression_statement "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_100[1]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" * (cast_expression "(undefined1 **)(puVar17 + -0xa0)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa0)" ( (binary_expression "puVar17 + -0xa0" identifier + number_literal) ))))) ;) (expression_statement "auStack_8014[0x1fc4] = 0x477f7;" (assignment_expression "auStack_8014[0x1fc4] = 0x477f7" (subscript_expression "auStack_8014[0x1fc4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "iStack_f8 = (int)puVar18;" (assignment_expression "iStack_f8 = (int)puVar18" identifier = (cast_expression "(int)puVar18" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "apuStack_f4[0] = puVar12;" (assignment_expression "apuStack_f4[0] = puVar12" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[1] = puVar11;" (assignment_expression "apuStack_f4[1] = puVar11" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))" ( (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" * (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" * (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x68)" ( (binary_expression "*(int *)(puVar17 + -0x9c) + 0x68" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "()" ( ))) ;) }))) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4)" (subscript_expression "apuStack_f4[3]" identifier [ number_literal ]) = (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" * (cast_expression "(undefined1 **)(puVar17 + -0xa4)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0xa4)" ( (binary_expression "puVar17 + -0xa4" identifier + number_literal) ))))) ;) (expression_statement "apuStack_f4[0] = (undefined1 *)0x47047;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x47047" (subscript_expression "apuStack_f4[0]" identifier [ number_literal ]) = (cast_expression "(undefined1 *)0x47047" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "apuStack_f4[1] = puVar19;" (assignment_expression "apuStack_f4[1] = puVar19" (subscript_expression "apuStack_f4[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "apuStack_f4[2] = puVar19;" (assignment_expression "apuStack_f4[2] = puVar19" (subscript_expression "apuStack_f4[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uStack_e4 = (uint)puVar18;" (assignment_expression "uStack_e4 = (uint)puVar18" identifier = (cast_expression "(uint)puVar18" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();" (assignment_expression "uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))()" identifier = (call_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))()" (parenthesized_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))" ( (pointer_expression "*(code *)**(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(code *)**(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar17 + -0x9c)" * (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" * (cast_expression "(undefined4 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) ))))))) )) (argument_list "()" ( )))) ;) (expression_statement "puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));" (assignment_expression "puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac))" identifier = (cast_expression "(uint *)(puVar19 + *(int *)(puVar17 + -0xac))" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar19 + *(int *)(puVar17 + -0xac))" ( (binary_expression "puVar19 + *(int *)(puVar17 + -0xac)" identifier + (pointer_expression "*(int *)(puVar17 + -0xac)" * (cast_expression "(int *)(puVar17 + -0xac)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0xac)" ( (binary_expression "puVar17 + -0xac" identifier + number_literal) ))))) )))) ;) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" identifier = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) = (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" * identifier) + identifier)) ;) (if_statement "if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }" if (parenthesized_expression "(CARRY4(uVar9,uVar8))" ( (call_expression "CARRY4(uVar9,uVar8)" identifier (argument_list "(uVar9,uVar8)" ( identifier , identifier ))) )) (compound_statement "{\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }" { (do_statement "do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);" do (compound_statement "{\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      }" { (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" identifier = (pointer_expression "*puVar1" * identifier)) ;) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" * identifier) = (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" * identifier) + number_literal)) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(0xfffffffe < uVar9)" ( (binary_expression "0xfffffffe < uVar9" number_literal < identifier) )) ;) })) (expression_statement "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;" (assignment_expression "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11" (pointer_expression "*(undefined1 **)(puVar17 + -0x9c)" * (cast_expression "(undefined1 **)(puVar17 + -0x9c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) = (binary_expression "puVar18 + (int)puVar11" identifier + (cast_expression "(int)puVar11" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" identifier = identifier) ;) }))) (labeled_statement "LAB_000471aa:\n  if (*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14)) {\n    return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);\n  }" statement_identifier : (if_statement "if (*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14)) {\n    return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);\n  }" if (parenthesized_expression "(*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14))" ( (binary_expression "*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14)" (pointer_expression "*(int *)(puVar17 + -0x1c)" * (cast_expression "(int *)(puVar17 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x1c)" ( (binary_expression "puVar17 + -0x1c" identifier + number_literal) )))) == (pointer_expression "*(int *)(in_GS_OFFSET + 0x14)" * (cast_expression "(int *)(in_GS_OFFSET + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(in_GS_OFFSET + 0x14)" ( (binary_expression "in_GS_OFFSET + 0x14" identifier + number_literal) ))))) )) (compound_statement "{\n    return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);\n  }" { (return_statement "return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);" return (pointer_expression "*(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4)" * (cast_expression "(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4)" ( (binary_expression "puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4" (binary_expression "puVar19 + *(int *)(puVar17 + -0x9c) * 4" identifier + (binary_expression "*(int *)(puVar17 + -0x9c) * 4" (pointer_expression "*(int *)(puVar17 + -0x9c)" * (cast_expression "(int *)(puVar17 + -0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar17 + -0x9c)" ( (binary_expression "puVar17 + -0x9c" identifier + number_literal) )))) * number_literal)) + number_literal) )))) ;) }))) (expression_statement "*(undefined4 *)(puVar11 + -4) = 0x47f0b;" (assignment_expression "*(undefined4 *)(puVar11 + -4) = 0x47f0b" (pointer_expression "*(undefined4 *)(puVar11 + -4)" * (cast_expression "(undefined4 *)(puVar11 + -4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -4)" ( (binary_expression "puVar11 + -4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "FUN_0007ebe0();" (call_expression "FUN_0007ebe0()" identifier (argument_list "()" ( ))) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (pointer_declarator * (array_declarator IDENT [ LIT ])) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (array_declarator IDENT [ LIT ])) ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == IDENT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) })) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) <= (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression IDENT = (unary_expression - (parenthesized_expression ( (binary_expression (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) )) / LIT) )) * LIT) + LIT) & LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT) < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & IDENT)) + IDENT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT) < (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & IDENT)) + IDENT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & IDENT)) + IDENT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) }))))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (unary_expression - (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) + LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression IDENT + IDENT) + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) <= IDENT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = LIT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) + IDENT)) ;) (if_statement if (parenthesized_expression ( (call_expression IDENT (argument_list ( IDENT , IDENT ))) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression LIT < IDENT) )) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) while (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) <= IDENT) )) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT * LIT) < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT * LIT) < (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }))))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT + IDENT) + IDENT) + LIT) )))) = LIT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) + IDENT)) ;) (if_statement if (parenthesized_expression ( (call_expression IDENT (argument_list ( IDENT , IDENT ))) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression LIT < IDENT) )) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + IDENT)) ;) }))) (goto_statement goto statement_identifier ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )))) )) && (parenthesized_expression ( (comma_expression (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) , (binary_expression LIT < (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT))) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT - (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) == LIT) || (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) >> LIT) )) << LIT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT * LIT) < (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))))) )) (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) + IDENT)) ;) (if_statement if (parenthesized_expression ( (call_expression IDENT (argument_list ( IDENT , IDENT ))) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression LIT < IDENT) )) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) while (parenthesized_expression ( (binary_expression (binary_expression IDENT == (binary_expression IDENT * LIT)) || (binary_expression (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT * LIT) ))) != (binary_expression (binary_expression IDENT + (binary_expression IDENT * LIT)) < LIT))) )) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }))) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))))) )) (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) + IDENT)) ;) (if_statement if (parenthesized_expression ( (call_expression IDENT (argument_list ( IDENT , IDENT ))) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression LIT < IDENT) )) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT) + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) ))) != (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) < LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (unary_expression - (parenthesized_expression ( (binary_expression (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT) + LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & IDENT)) + IDENT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (unary_expression - (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT / LIT) )) * LIT) + LIT) )) * LIT) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & IDENT)) + IDENT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT / LIT) + LIT) )) * LIT) ))) >> LIT) )) * LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (unary_expression - (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (goto_statement goto statement_identifier ;) })) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))) * LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + (unary_expression - (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (unary_expression - (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) ))) == (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) < LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) >> LIT) )) * LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (unary_expression - (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == (binary_expression IDENT * LIT)) || (binary_expression (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT * LIT) ))) != (binary_expression (binary_expression IDENT + (binary_expression IDENT * LIT)) < LIT))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - IDENT) )) * LIT)) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) + IDENT)) ;) (if_statement if (parenthesized_expression ( (call_expression IDENT (argument_list ( IDENT , IDENT ))) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression LIT < IDENT) )) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) }) while (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) <= (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + IDENT)) )) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == (binary_expression IDENT * LIT)) || (binary_expression (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT * LIT) ))) != (binary_expression (binary_expression IDENT + (binary_expression IDENT * LIT)) < LIT))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) * LIT)) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) + IDENT)) ;) (if_statement if (parenthesized_expression ( (call_expression IDENT (argument_list ( IDENT , IDENT ))) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression LIT < IDENT) )) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) }) while (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) <= (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + IDENT)) )) ;) (goto_statement goto statement_identifier ;) })) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) + IDENT)) ;) (if_statement if (parenthesized_expression ( (call_expression IDENT (argument_list ( IDENT , IDENT ))) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression LIT < IDENT) )) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) * LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) ))) == (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) < LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT)) )))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT) < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (goto_statement goto statement_identifier ;)))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }))))) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }))))))) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < LIT) )) || (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT - LIT) )))) , (comma_expression (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) , (comma_expression (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) , (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT))))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))))) )) (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) + IDENT)) ;) (if_statement if (parenthesized_expression ( (call_expression IDENT (argument_list ( IDENT , IDENT ))) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression LIT < IDENT) )) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (argument_list ( ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (argument_list ( ))) ;) }))) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))))) )) (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) + IDENT)) ;) (if_statement if (parenthesized_expression ( (call_expression IDENT (argument_list ( IDENT , IDENT ))) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression LIT < IDENT) )) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (return_statement return (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * LIT)) + LIT) )))) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })))
(function_definition "undefined4 __gmpn_mul(void)\n\n{\n  uint *puVar1;\n  int iVar2;\n  code *pcVar3;\n  int iVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int iVar7;\n  uint uVar8;\n  uint uVar9;\n  undefined4 uVar10;\n  undefined1 *puVar11;\n  undefined1 *puVar12;\n  uint *puVar13;\n  int iVar14;\n  int unaff_EBX;\n  undefined1 *puVar15;\n  int iVar16;\n  undefined1 *puVar17;\n  undefined1 *puVar18;\n  undefined1 *puVar19;\n  int in_GS_OFFSET;\n  uint auStack_8014 [8133];\n  undefined1 *apuStack_100 [2];\n  int iStack_f8;\n  undefined1 *apuStack_f4 [4];\n  uint uStack_e4;\n  undefined1 auStack_e0 [204];\n  undefined4 uStack_14;\n  \n  puVar17 = &stack0xfffffffc;\n  uStack_14 = 0x46e9b;\n  entry();\n  puVar15 = auStack_e0;\n  puVar11 = auStack_e0;\n  puVar19 = *(undefined1 **)(puVar17 + 8);\n  puVar12 = *(undefined1 **)(puVar17 + 0xc);\n  puVar18 = *(undefined1 **)(puVar17 + 0x18);\n  *(undefined4 *)(puVar17 + -0xa0) = *(undefined4 *)(puVar17 + 0x14);\n  *(undefined4 *)(puVar17 + -0x1c) = *(undefined4 *)(in_GS_OFFSET + 0x14);\n  if (*(undefined1 **)(puVar17 + 0x10) == puVar18) {\n    *(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar12;\n    if (puVar12 == *(undefined1 **)(puVar17 + -0xa0)) {\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }\n    else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }\n    goto LAB_000471aa;\n  }\n  if (**(int **)(unaff_EBX + 0x56ebd) == 0) {\n    *(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd);\n    *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n    uStack_e4 = 0x47081;\n    __gmpn_cpuvec_init();\n    puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n    iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94);\n    *(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9);\n    if (iVar2 <= (int)puVar18) {\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }\n  }\n  else {\n    iVar2 = *(int *)(unaff_EBX + 0x56ef9);\n    *(int *)(puVar17 + -0x9c) = iVar2;\n    if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }\n  }\n  pcVar3 = *(code **)(*(int *)(puVar17 + -0x9c) + 0x68);\n  apuStack_100[1] = puVar12;\n  if ((*(int *)(puVar17 + 0x10) < 0x1f5) || (puVar18 == (undefined1 *)0x1)) {\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = *(int *)(puVar17 + 0x10);\n    auStack_8014[0x1fc4] = 0x47451;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n    puVar11 = auStack_e0;\n  }\n  else {\n    *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = 500;\n    auStack_8014[0x1fc4] = 0x46f33;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    apuStack_f4[1] = puVar17 + -0x90;\n    *(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];\n    apuStack_f4[0] = (undefined1 *)0x46f4e;\n    apuStack_f4[2] = puVar19 + 2000;\n    apuStack_f4[3] = puVar18;\n    (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n    iVar2 = *(int *)(puVar17 + 0x10);\n    puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);\n    *(int *)(puVar17 + -0xac) = (int)puVar18 * 4;\n    puVar19 = puVar19 + 2000;\n    while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }\n    if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n    apuStack_f4[0] = (undefined1 *)0x47047;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar19;\n    uStack_e4 = (uint)puVar18;\n    uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n    puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;\n    puVar11 = auStack_e0;\n  }\nLAB_000471aa:\n  if (*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14)) {\n    return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);\n  }\n                    \n  *(undefined4 *)(puVar11 + -4) = 0x47f0b;\n  FUN_0007ebe0();\n}" (type_identifier "undefined4") (function_declarator "__gmpn_mul(void)" (identifier "__gmpn_mul") (parameter_list "(void)" (( "(") (parameter_declaration "void" (primitive_type "void")) () ")"))) (compound_statement "{\n  uint *puVar1;\n  int iVar2;\n  code *pcVar3;\n  int iVar4;\n  int iVar5;\n  undefined4 *puVar6;\n  int iVar7;\n  uint uVar8;\n  uint uVar9;\n  undefined4 uVar10;\n  undefined1 *puVar11;\n  undefined1 *puVar12;\n  uint *puVar13;\n  int iVar14;\n  int unaff_EBX;\n  undefined1 *puVar15;\n  int iVar16;\n  undefined1 *puVar17;\n  undefined1 *puVar18;\n  undefined1 *puVar19;\n  int in_GS_OFFSET;\n  uint auStack_8014 [8133];\n  undefined1 *apuStack_100 [2];\n  int iStack_f8;\n  undefined1 *apuStack_f4 [4];\n  uint uStack_e4;\n  undefined1 auStack_e0 [204];\n  undefined4 uStack_14;\n  \n  puVar17 = &stack0xfffffffc;\n  uStack_14 = 0x46e9b;\n  entry();\n  puVar15 = auStack_e0;\n  puVar11 = auStack_e0;\n  puVar19 = *(undefined1 **)(puVar17 + 8);\n  puVar12 = *(undefined1 **)(puVar17 + 0xc);\n  puVar18 = *(undefined1 **)(puVar17 + 0x18);\n  *(undefined4 *)(puVar17 + -0xa0) = *(undefined4 *)(puVar17 + 0x14);\n  *(undefined4 *)(puVar17 + -0x1c) = *(undefined4 *)(in_GS_OFFSET + 0x14);\n  if (*(undefined1 **)(puVar17 + 0x10) == puVar18) {\n    *(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar12;\n    if (puVar12 == *(undefined1 **)(puVar17 + -0xa0)) {\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }\n    else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }\n    goto LAB_000471aa;\n  }\n  if (**(int **)(unaff_EBX + 0x56ebd) == 0) {\n    *(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd);\n    *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n    uStack_e4 = 0x47081;\n    __gmpn_cpuvec_init();\n    puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n    iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94);\n    *(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9);\n    if (iVar2 <= (int)puVar18) {\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }\n  }\n  else {\n    iVar2 = *(int *)(unaff_EBX + 0x56ef9);\n    *(int *)(puVar17 + -0x9c) = iVar2;\n    if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }\n  }\n  pcVar3 = *(code **)(*(int *)(puVar17 + -0x9c) + 0x68);\n  apuStack_100[1] = puVar12;\n  if ((*(int *)(puVar17 + 0x10) < 0x1f5) || (puVar18 == (undefined1 *)0x1)) {\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = *(int *)(puVar17 + 0x10);\n    auStack_8014[0x1fc4] = 0x47451;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n    puVar11 = auStack_e0;\n  }\n  else {\n    *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = 500;\n    auStack_8014[0x1fc4] = 0x46f33;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    apuStack_f4[1] = puVar17 + -0x90;\n    *(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];\n    apuStack_f4[0] = (undefined1 *)0x46f4e;\n    apuStack_f4[2] = puVar19 + 2000;\n    apuStack_f4[3] = puVar18;\n    (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n    iVar2 = *(int *)(puVar17 + 0x10);\n    puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);\n    *(int *)(puVar17 + -0xac) = (int)puVar18 * 4;\n    puVar19 = puVar19 + 2000;\n    while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }\n    if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n    apuStack_f4[0] = (undefined1 *)0x47047;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar19;\n    uStack_e4 = (uint)puVar18;\n    uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n    puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;\n    puVar11 = auStack_e0;\n  }\nLAB_000471aa:\n  if (*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14)) {\n    return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);\n  }\n                    \n  *(undefined4 *)(puVar11 + -4) = 0x47f0b;\n  FUN_0007ebe0();\n}" ({ "{") (declaration "uint *puVar1;" (type_identifier "uint") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "code *pcVar3;" (type_identifier "code") (pointer_declarator "*pcVar3" (* "*") (identifier "pcVar3")) (; ";")) (declaration "int iVar4;" (primitive_type "int") (identifier "iVar4") (; ";")) (declaration "int iVar5;" (primitive_type "int") (identifier "iVar5") (; ";")) (declaration "undefined4 *puVar6;" (type_identifier "undefined4") (pointer_declarator "*puVar6" (* "*") (identifier "puVar6")) (; ";")) (declaration "int iVar7;" (primitive_type "int") (identifier "iVar7") (; ";")) (declaration "uint uVar8;" (type_identifier "uint") (identifier "uVar8") (; ";")) (declaration "uint uVar9;" (type_identifier "uint") (identifier "uVar9") (; ";")) (declaration "undefined4 uVar10;" (type_identifier "undefined4") (identifier "uVar10") (; ";")) (declaration "undefined1 *puVar11;" (type_identifier "undefined1") (pointer_declarator "*puVar11" (* "*") (identifier "puVar11")) (; ";")) (declaration "undefined1 *puVar12;" (type_identifier "undefined1") (pointer_declarator "*puVar12" (* "*") (identifier "puVar12")) (; ";")) (declaration "uint *puVar13;" (type_identifier "uint") (pointer_declarator "*puVar13" (* "*") (identifier "puVar13")) (; ";")) (declaration "int iVar14;" (primitive_type "int") (identifier "iVar14") (; ";")) (declaration "int unaff_EBX;" (primitive_type "int") (identifier "unaff_EBX") (; ";")) (declaration "undefined1 *puVar15;" (type_identifier "undefined1") (pointer_declarator "*puVar15" (* "*") (identifier "puVar15")) (; ";")) (declaration "int iVar16;" (primitive_type "int") (identifier "iVar16") (; ";")) (declaration "undefined1 *puVar17;" (type_identifier "undefined1") (pointer_declarator "*puVar17" (* "*") (identifier "puVar17")) (; ";")) (declaration "undefined1 *puVar18;" (type_identifier "undefined1") (pointer_declarator "*puVar18" (* "*") (identifier "puVar18")) (; ";")) (declaration "undefined1 *puVar19;" (type_identifier "undefined1") (pointer_declarator "*puVar19" (* "*") (identifier "puVar19")) (; ";")) (declaration "int in_GS_OFFSET;" (primitive_type "int") (identifier "in_GS_OFFSET") (; ";")) (declaration "uint auStack_8014 [8133];" (type_identifier "uint") (array_declarator "auStack_8014 [8133]" (identifier "auStack_8014") ([ "[") (number_literal "8133") (] "]")) (; ";")) (declaration "undefined1 *apuStack_100 [2];" (type_identifier "undefined1") (pointer_declarator "*apuStack_100 [2]" (* "*") (array_declarator "apuStack_100 [2]" (identifier "apuStack_100") ([ "[") (number_literal "2") (] "]"))) (; ";")) (declaration "int iStack_f8;" (primitive_type "int") (identifier "iStack_f8") (; ";")) (declaration "undefined1 *apuStack_f4 [4];" (type_identifier "undefined1") (pointer_declarator "*apuStack_f4 [4]" (* "*") (array_declarator "apuStack_f4 [4]" (identifier "apuStack_f4") ([ "[") (number_literal "4") (] "]"))) (; ";")) (declaration "uint uStack_e4;" (type_identifier "uint") (identifier "uStack_e4") (; ";")) (declaration "undefined1 auStack_e0 [204];" (type_identifier "undefined1") (array_declarator "auStack_e0 [204]" (identifier "auStack_e0") ([ "[") (number_literal "204") (] "]")) (; ";")) (declaration "undefined4 uStack_14;" (type_identifier "undefined4") (identifier "uStack_14") (; ";")) (expression_statement "puVar17 = &stack0xfffffffc;" (assignment_expression "puVar17 = &stack0xfffffffc" (identifier "puVar17") (= "=") (pointer_expression "&stack0xfffffffc" (& "&") (identifier "stack0xfffffffc"))) (; ";")) (expression_statement "uStack_14 = 0x46e9b;" (assignment_expression "uStack_14 = 0x46e9b" (identifier "uStack_14") (= "=") (number_literal "0x46e9b")) (; ";")) (expression_statement "entry();" (call_expression "entry()" (identifier "entry") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar15 = auStack_e0;" (assignment_expression "puVar15 = auStack_e0" (identifier "puVar15") (= "=") (identifier "auStack_e0")) (; ";")) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" (identifier "puVar11") (= "=") (identifier "auStack_e0")) (; ";")) (expression_statement "puVar19 = *(undefined1 **)(puVar17 + 8);" (assignment_expression "puVar19 = *(undefined1 **)(puVar17 + 8)" (identifier "puVar19") (= "=") (pointer_expression "*(undefined1 **)(puVar17 + 8)" (* "*") (cast_expression "(undefined1 **)(puVar17 + 8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + 8)" (( "(") (binary_expression "puVar17 + 8" (identifier "puVar17") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "puVar12 = *(undefined1 **)(puVar17 + 0xc);" (assignment_expression "puVar12 = *(undefined1 **)(puVar17 + 0xc)" (identifier "puVar12") (= "=") (pointer_expression "*(undefined1 **)(puVar17 + 0xc)" (* "*") (cast_expression "(undefined1 **)(puVar17 + 0xc)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + 0xc)" (( "(") (binary_expression "puVar17 + 0xc" (identifier "puVar17") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (expression_statement "puVar18 = *(undefined1 **)(puVar17 + 0x18);" (assignment_expression "puVar18 = *(undefined1 **)(puVar17 + 0x18)" (identifier "puVar18") (= "=") (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" (* "*") (cast_expression "(undefined1 **)(puVar17 + 0x18)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + 0x18)" (( "(") (binary_expression "puVar17 + 0x18" (identifier "puVar17") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0xa0) = *(undefined4 *)(puVar17 + 0x14);" (assignment_expression "*(undefined4 *)(puVar17 + -0xa0) = *(undefined4 *)(puVar17 + 0x14)" (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + 0x14)" (* "*") (cast_expression "(undefined4 *)(puVar17 + 0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x14)" (( "(") (binary_expression "puVar17 + 0x14" (identifier "puVar17") (+ "+") (number_literal "0x14")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0x1c) = *(undefined4 *)(in_GS_OFFSET + 0x14);" (assignment_expression "*(undefined4 *)(puVar17 + -0x1c) = *(undefined4 *)(in_GS_OFFSET + 0x14)" (pointer_expression "*(undefined4 *)(puVar17 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x1c)" (( "(") (binary_expression "puVar17 + -0x1c" (identifier "puVar17") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(in_GS_OFFSET + 0x14)" (* "*") (cast_expression "(undefined4 *)(in_GS_OFFSET + 0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(in_GS_OFFSET + 0x14)" (( "(") (binary_expression "in_GS_OFFSET + 0x14" (identifier "in_GS_OFFSET") (+ "+") (number_literal "0x14")) () ")"))))) (; ";")) (if_statement "if (*(undefined1 **)(puVar17 + 0x10) == puVar18) {\n    *(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar12;\n    if (puVar12 == *(undefined1 **)(puVar17 + -0xa0)) {\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }\n    else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }\n    goto LAB_000471aa;\n  }" (if "if") (parenthesized_expression "(*(undefined1 **)(puVar17 + 0x10) == puVar18)" (( "(") (binary_expression "*(undefined1 **)(puVar17 + 0x10) == puVar18" (pointer_expression "*(undefined1 **)(puVar17 + 0x10)" (* "*") (cast_expression "(undefined1 **)(puVar17 + 0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")")))) (== "==") (identifier "puVar18")) () ")")) (compound_statement "{\n    *(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar12;\n    if (puVar12 == *(undefined1 **)(puVar17 + -0xa0)) {\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }\n    else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }\n    goto LAB_000471aa;\n  }" ({ "{") (expression_statement "*(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2;" (assignment_expression "*(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2" (pointer_expression "*(int *)(puVar17 + -0x9c)" (* "*") (cast_expression "(int *)(puVar17 + -0x9c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + 0x10) * 2" (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")")))) (* "*") (number_literal "2"))) (; ";")) (expression_statement "apuStack_f4[1] = puVar19;" (assignment_expression "apuStack_f4[1] = puVar19" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "apuStack_f4[2] = puVar12;" (assignment_expression "apuStack_f4[2] = puVar12" (subscript_expression "apuStack_f4[2]" (identifier "apuStack_f4") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "puVar12")) (; ";")) (if_statement "if (puVar12 == *(undefined1 **)(puVar17 + -0xa0)) {\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }\n    else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }" (if "if") (parenthesized_expression "(puVar12 == *(undefined1 **)(puVar17 + -0xa0))" (( "(") (binary_expression "puVar12 == *(undefined1 **)(puVar17 + -0xa0)" (identifier "puVar12") (== "==") (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) () ")")) (compound_statement "{\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);\n      apuStack_f4[0] = (undefined1 *)0x477dd;\n      __gmpn_sqr();\n      puVar11 = auStack_e0;\n    }" ({ "{") (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10)" (subscript_expression "apuStack_f4[3]" (identifier "apuStack_f4") ([ "[") (number_literal "3") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + 0x10)" (* "*") (cast_expression "(undefined1 **)(puVar17 + 0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "apuStack_f4[0] = (undefined1 *)0x477dd;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x477dd" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (cast_expression "(undefined1 *)0x477dd" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x477dd"))) (; ";")) (expression_statement "__gmpn_sqr();" (call_expression "__gmpn_sqr()" (identifier "__gmpn_sqr") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" (identifier "puVar11") (= "=") (identifier "auStack_e0")) (; ";")) (} "}")) (else_clause "else {\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }" (else "else") (compound_statement "{\n      uStack_e4 = *(uint *)(puVar17 + 0x10);\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);\n      apuStack_f4[0] = (undefined1 *)0x471a7;\n      __gmpn_mul_n();\n      puVar11 = auStack_e0;\n    }" ({ "{") (expression_statement "uStack_e4 = *(uint *)(puVar17 + 0x10);" (assignment_expression "uStack_e4 = *(uint *)(puVar17 + 0x10)" (identifier "uStack_e4") (= "=") (pointer_expression "*(uint *)(puVar17 + 0x10)" (* "*") (cast_expression "(uint *)(puVar17 + 0x10)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[3]" (identifier "apuStack_f4") ([ "[") (number_literal "3") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "apuStack_f4[0] = (undefined1 *)0x471a7;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x471a7" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (cast_expression "(undefined1 *)0x471a7" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x471a7"))) (; ";")) (expression_statement "__gmpn_mul_n();" (call_expression "__gmpn_mul_n()" (identifier "__gmpn_mul_n") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" (identifier "puVar11") (= "=") (identifier "auStack_e0")) (; ";")) (} "}")))) (goto_statement "goto LAB_000471aa;" (goto "goto") (statement_identifier "LAB_000471aa") (; ";")) (} "}"))) (if_statement "if (**(int **)(unaff_EBX + 0x56ebd) == 0) {\n    *(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd);\n    *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n    uStack_e4 = 0x47081;\n    __gmpn_cpuvec_init();\n    puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n    iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94);\n    *(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9);\n    if (iVar2 <= (int)puVar18) {\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }\n  }\n  else {\n    iVar2 = *(int *)(unaff_EBX + 0x56ef9);\n    *(int *)(puVar17 + -0x9c) = iVar2;\n    if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }\n  }" (if "if") (parenthesized_expression "(**(int **)(unaff_EBX + 0x56ebd) == 0)" (( "(") (binary_expression "**(int **)(unaff_EBX + 0x56ebd) == 0" (pointer_expression "**(int **)(unaff_EBX + 0x56ebd)" (* "*") (pointer_expression "*(int **)(unaff_EBX + 0x56ebd)" (* "*") (cast_expression "(int **)(unaff_EBX + 0x56ebd)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(unaff_EBX + 0x56ebd)" (( "(") (binary_expression "unaff_EBX + 0x56ebd" (identifier "unaff_EBX") (+ "+") (number_literal "0x56ebd")) () ")"))))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    *(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd);\n    *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n    uStack_e4 = 0x47081;\n    __gmpn_cpuvec_init();\n    puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n    iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94);\n    *(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9);\n    if (iVar2 <= (int)puVar18) {\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }\n  }" ({ "{") (expression_statement "*(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd);" (assignment_expression "*(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd)" (pointer_expression "*(int **)(puVar17 + -0xa8)" (* "*") (cast_expression "(int **)(puVar17 + -0xa8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (= "=") (pointer_expression "*(int **)(unaff_EBX + 0x56ebd)" (* "*") (cast_expression "(int **)(unaff_EBX + 0x56ebd)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(unaff_EBX + 0x56ebd)" (( "(") (binary_expression "unaff_EBX + 0x56ebd" (identifier "unaff_EBX") (+ "+") (number_literal "0x56ebd")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -0xa4) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa4) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "uStack_e4 = 0x47081;" (assignment_expression "uStack_e4 = 0x47081" (identifier "uStack_e4") (= "=") (number_literal "0x47081")) (; ";")) (expression_statement "__gmpn_cpuvec_init();" (call_expression "__gmpn_cpuvec_init()" (identifier "__gmpn_cpuvec_init") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar12 = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "puVar12 = *(undefined1 **)(puVar17 + -0xa4)" (identifier "puVar12") (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (expression_statement "iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94);" (assignment_expression "iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94)" (* "*") (cast_expression "(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(unaff_EBX + 0x56ef9) + 0x94)" (( "(") (binary_expression "*(int *)(unaff_EBX + 0x56ef9) + 0x94" (pointer_expression "*(int *)(unaff_EBX + 0x56ef9)" (* "*") (cast_expression "(int *)(unaff_EBX + 0x56ef9)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_EBX + 0x56ef9)" (( "(") (binary_expression "unaff_EBX + 0x56ef9" (identifier "unaff_EBX") (+ "+") (number_literal "0x56ef9")) () ")")))) (+ "+") (number_literal "0x94")) () ")"))))) (; ";")) (expression_statement "*(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9);" (assignment_expression "*(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9)" (pointer_expression "*(int *)(puVar17 + -0x9c)" (* "*") (cast_expression "(int *)(puVar17 + -0x9c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (= "=") (pointer_expression "*(int *)(unaff_EBX + 0x56ef9)" (* "*") (cast_expression "(int *)(unaff_EBX + 0x56ef9)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_EBX + 0x56ef9)" (( "(") (binary_expression "unaff_EBX + 0x56ef9" (identifier "unaff_EBX") (+ "+") (number_literal "0x56ef9")) () ")"))))) (; ";")) (if_statement "if (iVar2 <= (int)puVar18) {\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }" (if "if") (parenthesized_expression "(iVar2 <= (int)puVar18)" (( "(") (binary_expression "iVar2 <= (int)puVar18" (identifier "iVar2") (<= "<=") (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18"))) () ")")) (compound_statement "{\n      if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }\n      goto LAB_000470c0;\n    }" ({ "{") (if_statement "if (**(int **)(puVar17 + -0xa8) == 0) {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }" (if "if") (parenthesized_expression "(**(int **)(puVar17 + -0xa8) == 0)" (( "(") (binary_expression "**(int **)(puVar17 + -0xa8) == 0" (pointer_expression "**(int **)(puVar17 + -0xa8)" (* "*") (pointer_expression "*(int **)(puVar17 + -0xa8)" (* "*") (cast_expression "(int **)(puVar17 + -0xa8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")"))))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        uStack_e4 = 0x470b6;\n        __gmpn_cpuvec_init();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n      }" ({ "{") (expression_statement "*(undefined1 **)(puVar17 + -0xa4) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa4) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "uStack_e4 = 0x470b6;" (assignment_expression "uStack_e4 = 0x470b6" (identifier "uStack_e4") (= "=") (number_literal "0x470b6")) (; ";")) (expression_statement "__gmpn_cpuvec_init();" (call_expression "__gmpn_cpuvec_init()" (identifier "__gmpn_cpuvec_init") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar12 = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "puVar12 = *(undefined1 **)(puVar17 + -0xa4)" (identifier "puVar12") (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (} "}"))) (goto_statement "goto LAB_000470c0;" (goto "goto") (statement_identifier "LAB_000470c0") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n    iVar2 = *(int *)(unaff_EBX + 0x56ef9);\n    *(int *)(puVar17 + -0x9c) = iVar2;\n    if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }\n  }" (else "else") (compound_statement "{\n    iVar2 = *(int *)(unaff_EBX + 0x56ef9);\n    *(int *)(puVar17 + -0x9c) = iVar2;\n    if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }\n  }" ({ "{") (expression_statement "iVar2 = *(int *)(unaff_EBX + 0x56ef9);" (assignment_expression "iVar2 = *(int *)(unaff_EBX + 0x56ef9)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(unaff_EBX + 0x56ef9)" (* "*") (cast_expression "(int *)(unaff_EBX + 0x56ef9)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_EBX + 0x56ef9)" (( "(") (binary_expression "unaff_EBX + 0x56ef9" (identifier "unaff_EBX") (+ "+") (number_literal "0x56ef9")) () ")"))))) (; ";")) (expression_statement "*(int *)(puVar17 + -0x9c) = iVar2;" (assignment_expression "*(int *)(puVar17 + -0x9c) = iVar2" (pointer_expression "*(int *)(puVar17 + -0x9c)" (* "*") (cast_expression "(int *)(puVar17 + -0x9c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (if_statement "if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }" (if "if") (parenthesized_expression "(*(int *)(iVar2 + 0x94) <= (int)puVar18)" (( "(") (binary_expression "*(int *)(iVar2 + 0x94) <= (int)puVar18" (pointer_expression "*(int *)(iVar2 + 0x94)" (* "*") (cast_expression "(int *)(iVar2 + 0x94)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x94)" (( "(") (binary_expression "iVar2 + 0x94" (identifier "iVar2") (+ "+") (number_literal "0x94")) () ")")))) (<= "<=") (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18"))) () ")")) (compound_statement "{\nLAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }\n      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);\n      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }\n      if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }\n      *(undefined4 *)(puVar17 + -0x94) = 0;\n      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);\n      if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }\n      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;\n      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;\n      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;\n      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }\n      if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }\n      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n      goto LAB_000471aa;\n    }" ({ "{") (labeled_statement "LAB_000470c0:\n      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }" (statement_identifier "LAB_000470c0") (: ":") (if_statement "if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }" (if "if") (parenthesized_expression "((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98))" (( "(") (binary_expression "(int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (< "<") (pointer_expression "*(int *)(*(int *)(puVar17 + -0x9c) + 0x98)" (* "*") (cast_expression "(int *)(*(int *)(puVar17 + -0x9c) + 0x98)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x98)" (( "(") (binary_expression "*(int *)(puVar17 + -0x9c) + 0x98" (pointer_expression "*(int *)(puVar17 + -0x9c)" (* "*") (cast_expression "(int *)(puVar17 + -0x9c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (+ "+") (number_literal "0x98")) () ")"))))) () ")")) (compound_statement "{\n        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;\n        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;\n        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;\n        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);\n        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;\n        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;\n        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }\n        goto LAB_000471aa;\n      }" ({ "{") (expression_statement "*(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;" (assignment_expression "*(int *)(puVar17 + -0xa4) = (int)puVar18 * 8" (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (= "=") (binary_expression "(int)puVar18 * 8" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "8"))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xc0) = (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xc0)" (* "*") (cast_expression "(int *)(puVar17 + -0xc0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc0)" (( "(") (binary_expression "puVar17 + -0xc0" (identifier "puVar17") (+ "+") (number_literal "-0xc0")) () ")")))) (= "=") (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "4"))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;" (assignment_expression "*(int *)(puVar17 + -0xcc) = (int)puVar18 * 5" (pointer_expression "*(int *)(puVar17 + -0xcc)" (* "*") (cast_expression "(int *)(puVar17 + -0xcc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xcc)" (( "(") (binary_expression "puVar17 + -0xcc" (identifier "puVar17") (+ "+") (number_literal "-0xcc")) () ")")))) (= "=") (binary_expression "(int)puVar18 * 5" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "5"))) (; ";")) (expression_statement "iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);" (assignment_expression "iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0)" (identifier "iVar2") (= "=") (unary_expression "-((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0)" (- "-") (parenthesized_expression "((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0)" (( "(") (binary_expression "(((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0" (binary_expression "(((int)puVar18 * 9) / 2) * 4 + 0x11bU" (binary_expression "(((int)puVar18 * 9) / 2) * 4" (parenthesized_expression "(((int)puVar18 * 9) / 2)" (( "(") (binary_expression "((int)puVar18 * 9) / 2" (parenthesized_expression "((int)puVar18 * 9)" (( "(") (binary_expression "(int)puVar18 * 9" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "9")) () ")")) (/ "/") (number_literal "2")) () ")")) (* "*") (number_literal "4")) (+ "+") (number_literal "0x11bU")) (& "&") (number_literal "0xfffffff0")) () ")")))) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;" (assignment_expression "*(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2" (pointer_expression "*(undefined1 **)(puVar17 + -0xbc)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xbc)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xbc)" (( "(") (binary_expression "puVar17 + -0xbc" (identifier "puVar17") (+ "+") (number_literal "-0xbc")) () ")")))) (= "=") (binary_expression "auStack_e0 + iVar2" (identifier "auStack_e0") (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;" (assignment_expression "*(int *)(puVar17 + -0xb4) = (int)puVar18 * 2" (pointer_expression "*(int *)(puVar17 + -0xb4)" (* "*") (cast_expression "(int *)(puVar17 + -0xb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")")))) (= "=") (binary_expression "(int)puVar18 * 2" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "2"))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;" (assignment_expression "*(int *)(puVar17 + -0xc4) = (int)puVar18 * 3" (pointer_expression "*(int *)(puVar17 + -0xc4)" (* "*") (cast_expression "(int *)(puVar17 + -0xc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc4)" (( "(") (binary_expression "puVar17 + -0xc4" (identifier "puVar17") (+ "+") (number_literal "-0xc4")) () ")")))) (= "=") (binary_expression "(int)puVar18 * 3" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "3"))) (; ";")) (if_statement "if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }" (if "if") (parenthesized_expression "(*(int *)(puVar17 + 0x10) < (int)puVar18 * 3)" (( "(") (binary_expression "*(int *)(puVar17 + 0x10) < (int)puVar18 * 3" (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")")))) (< "<") (binary_expression "(int)puVar18 * 3" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "3"))) () ")")) (compound_statement "{\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n        }" ({ "{") (expression_statement "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);" (assignment_expression "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10)" (pointer_expression "*(undefined1 **)(puVar17 + -0x9c)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0x9c)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (= "=") (binary_expression "puVar18 + *(int *)(puVar17 + 0x10)" (identifier "puVar18") (+ "+") (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")")))))) (; ";")) (if_statement "if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" (if "if") (parenthesized_expression "(*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc))" (( "(") (binary_expression "*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)" (binary_expression "*(int *)(puVar17 + 0x10) * 4" (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")")))) (* "*") (number_literal "4")) (< "<") (pointer_expression "*(int *)(puVar17 + -0xcc)" (* "*") (cast_expression "(int *)(puVar17 + -0xcc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xcc)" (( "(") (binary_expression "puVar17 + -0xcc" (identifier "puVar17") (+ "+") (number_literal "-0xcc")) () ")"))))) () ")")) (compound_statement "{\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;\n            __gmpn_toom22_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" ({ "{") (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8)" (* "*") (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2 + 8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)apuStack_f4 + iVar2 + 8)" (( "(") (binary_expression "(int)apuStack_f4 + iVar2 + 8" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_f4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "8")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xbc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xbc)" (( "(") (binary_expression "puVar17 + -0xbc" (identifier "puVar17") (+ "+") (number_literal "-0xbc")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" (* "*") (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)apuStack_f4 + iVar2 + 4)" (( "(") (binary_expression "(int)apuStack_f4 + iVar2 + 4" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_f4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "4")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2)" (* "*") (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)apuStack_f4 + iVar2)" (( "(") (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_f4")) (+ "+") (identifier "iVar2")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)((int)&iStack_f8 + iVar2)" (* "*") (cast_expression "(undefined4 *)((int)&iStack_f8 + iVar2)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&iStack_f8 + iVar2)" (( "(") (binary_expression "(int)&iStack_f8 + iVar2" (cast_expression "(int)&iStack_f8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&iStack_f8" (& "&") (identifier "iStack_f8"))) (+ "+") (identifier "iVar2")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" (* "*") (cast_expression "(undefined4 *)(puVar17 + 0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4)" (* "*") (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2 + 4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)apuStack_100 + iVar2 + 4)" (( "(") (binary_expression "(int)apuStack_100 + iVar2 + 4" (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_100")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "4")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2)" (* "*") (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)apuStack_100 + iVar2)" (( "(") (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_100")) (+ "+") (identifier "iVar2")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;" (assignment_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa" (pointer_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" (* "*") (cast_expression "(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)auStack_8014 + iVar2 + 0x7f10)" (( "(") (binary_expression "(int)auStack_8014 + iVar2 + 0x7f10" (binary_expression "(int)auStack_8014 + iVar2" (cast_expression "(int)auStack_8014" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "auStack_8014")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "0x7f10")) () ")")))) (= "=") (number_literal "0x47aaa")) (; ";")) (expression_statement "__gmpn_toom22_mul();" (call_expression "__gmpn_toom22_mul()" (identifier "__gmpn_toom22_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar11 = auStack_e0 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar2" (identifier "puVar11") (= "=") (binary_expression "auStack_e0 + iVar2" (identifier "auStack_e0") (+ "+") (identifier "iVar2"))) (; ";")) (} "}")) (else_clause "else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" (else "else") (if_statement "if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }\n          else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" (if "if") (parenthesized_expression "(*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18)" (( "(") (binary_expression "*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18" (binary_expression "*(int *)(puVar17 + 0x10) * 4" (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")")))) (* "*") (number_literal "4")) (< "<") (binary_expression "*(int *)(puVar17 + -0xa4) - (int)puVar18" (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (- "-") (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")))) () ")")) (compound_statement "{\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;\n            __gmpn_toom32_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" ({ "{") (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8)" (* "*") (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2 + 8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)apuStack_f4 + iVar2 + 8)" (( "(") (binary_expression "(int)apuStack_f4 + iVar2 + 8" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_f4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "8")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xbc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xbc)" (( "(") (binary_expression "puVar17 + -0xbc" (identifier "puVar17") (+ "+") (number_literal "-0xbc")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" (* "*") (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)apuStack_f4 + iVar2 + 4)" (( "(") (binary_expression "(int)apuStack_f4 + iVar2 + 4" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_f4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "4")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2)" (* "*") (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)apuStack_f4 + iVar2)" (( "(") (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_f4")) (+ "+") (identifier "iVar2")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)((int)&iStack_f8 + iVar2)" (* "*") (cast_expression "(undefined4 *)((int)&iStack_f8 + iVar2)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&iStack_f8 + iVar2)" (( "(") (binary_expression "(int)&iStack_f8 + iVar2" (cast_expression "(int)&iStack_f8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&iStack_f8" (& "&") (identifier "iStack_f8"))) (+ "+") (identifier "iVar2")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" (* "*") (cast_expression "(undefined4 *)(puVar17 + 0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4)" (* "*") (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2 + 4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)apuStack_100 + iVar2 + 4)" (( "(") (binary_expression "(int)apuStack_100 + iVar2 + 4" (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_100")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "4")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2)" (* "*") (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)apuStack_100 + iVar2)" (( "(") (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_100")) (+ "+") (identifier "iVar2")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;" (assignment_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a" (pointer_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" (* "*") (cast_expression "(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)auStack_8014 + iVar2 + 0x7f10)" (( "(") (binary_expression "(int)auStack_8014 + iVar2 + 0x7f10" (binary_expression "(int)auStack_8014 + iVar2" (cast_expression "(int)auStack_8014" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "auStack_8014")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "0x7f10")) () ")")))) (= "=") (number_literal "0x4717a")) (; ";")) (expression_statement "__gmpn_toom32_mul();" (call_expression "__gmpn_toom32_mul()" (identifier "__gmpn_toom32_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar11 = auStack_e0 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar2" (identifier "puVar11") (= "=") (binary_expression "auStack_e0 + iVar2" (identifier "auStack_e0") (+ "+") (identifier "iVar2"))) (; ";")) (} "}")) (else_clause "else {\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" (else "else") (compound_statement "{\n            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;\n            __gmpn_toom42_mul();\n            puVar11 = auStack_e0 + iVar2;\n          }" ({ "{") (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2 + 8)" (* "*") (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2 + 8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)apuStack_f4 + iVar2 + 8)" (( "(") (binary_expression "(int)apuStack_f4 + iVar2 + 8" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_f4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "8")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xbc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xbc)" (( "(") (binary_expression "puVar17 + -0xbc" (identifier "puVar17") (+ "+") (number_literal "-0xbc")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" (* "*") (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)apuStack_f4 + iVar2 + 4)" (( "(") (binary_expression "(int)apuStack_f4 + iVar2 + 4" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_f4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "4")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2)" (* "*") (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)apuStack_f4 + iVar2)" (( "(") (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_f4")) (+ "+") (identifier "iVar2")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)((int)&iStack_f8 + iVar2)" (* "*") (cast_expression "(undefined4 *)((int)&iStack_f8 + iVar2)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&iStack_f8 + iVar2)" (( "(") (binary_expression "(int)&iStack_f8 + iVar2" (cast_expression "(int)&iStack_f8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&iStack_f8" (& "&") (identifier "iStack_f8"))) (+ "+") (identifier "iVar2")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" (* "*") (cast_expression "(undefined4 *)(puVar17 + 0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4)" (* "*") (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2 + 4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)apuStack_100 + iVar2 + 4)" (( "(") (binary_expression "(int)apuStack_100 + iVar2 + 4" (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_100")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "4")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2)" (* "*") (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)apuStack_100 + iVar2)" (( "(") (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_100")) (+ "+") (identifier "iVar2")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;" (assignment_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a" (pointer_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" (* "*") (cast_expression "(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)auStack_8014 + iVar2 + 0x7f10)" (( "(") (binary_expression "(int)auStack_8014 + iVar2 + 0x7f10" (binary_expression "(int)auStack_8014 + iVar2" (cast_expression "(int)auStack_8014" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "auStack_8014")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "0x7f10")) () ")")))) (= "=") (number_literal "0x47a7a")) (; ";")) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" (identifier "__gmpn_toom42_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar11 = auStack_e0 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar2" (identifier "puVar11") (= "=") (binary_expression "auStack_e0 + iVar2" (identifier "auStack_e0") (+ "+") (identifier "iVar2"))) (; ";")) (} "}")))))) (} "}")) (else_clause "else {\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }" (else "else") (compound_statement "{\n          *(undefined1 **)(puVar17 + -0xb0) = puVar12;\n          iVar4 = -((int)puVar18 * 0x10 + 0x10);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);\n          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -0xa8) = iVar14;\n          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);\n          if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }\n          puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n          pcVar3 = (code *)*puVar6;\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;\n          uVar10 = (*pcVar3)();\n          *(undefined4 *)(puVar17 + -0xa0) = uVar10;\n          iVar14 = *(int *)(puVar17 + -0x9c);\n          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;\n          pcVar3 = *(code **)(iVar14 + 0x28);\n          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;\n          (*pcVar3)();\n          uVar8 = *(uint *)(puVar17 + -0xa0);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);\n          puVar11 = auStack_e0 + iVar4 + iVar2;\n        }" ({ "{") (expression_statement "*(undefined1 **)(puVar17 + -0xb0) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xb0) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xb0)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xb0)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "iVar4 = -((int)puVar18 * 0x10 + 0x10);" (assignment_expression "iVar4 = -((int)puVar18 * 0x10 + 0x10)" (identifier "iVar4") (= "=") (unary_expression "-((int)puVar18 * 0x10 + 0x10)" (- "-") (parenthesized_expression "((int)puVar18 * 0x10 + 0x10)" (( "(") (binary_expression "(int)puVar18 * 0x10 + 0x10" (binary_expression "(int)puVar18 * 0x10" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "0x10")) (+ "+") (number_literal "0x10")) () ")")))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xbc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xbc)" (( "(") (binary_expression "puVar17 + -0xbc" (identifier "puVar17") (+ "+") (number_literal "-0xbc")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" (* "*") (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x18)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x18" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c)" (* "*") (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x1c)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x1c" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20)" (* "*") (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x20)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x20" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;" (assignment_expression "*(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2" (pointer_expression "*(undefined1 **)(puVar17 + -0xac)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xac)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")")))) (= "=") (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x24)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x24" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x4783a")) (; ";")) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" (identifier "__gmpn_toom42_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);" (assignment_expression "iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4)" (identifier "iVar14") (= "=") (binary_expression "*(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4)" (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")")))) (- "-") (pointer_expression "*(int *)(puVar17 + -0xb4)" (* "*") (cast_expression "(int *)(puVar17 + -0xb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")")))))) (; ";")) (expression_statement "puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);" (assignment_expression "puVar19 = puVar19 + *(int *)(puVar17 + -0xa4)" (identifier "puVar19") (= "=") (binary_expression "puVar19 + *(int *)(puVar17 + -0xa4)" (identifier "puVar19") (+ "+") (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xa8) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xa8) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xa8)" (* "*") (cast_expression "(int *)(puVar17 + -0xa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (= "=") (identifier "iVar14")) (; ";")) (expression_statement "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);" (assignment_expression "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4)" (pointer_expression "*(int *)(puVar17 + -0xb0)" (* "*") (cast_expression "(int *)(puVar17 + -0xb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4)" (pointer_expression "*(int *)(puVar17 + -0xb0)" (* "*") (cast_expression "(int *)(puVar17 + -0xb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")")))) (+ "+") (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))))) (; ";")) (expression_statement "*(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);" (assignment_expression "*(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0)" (pointer_expression "*(int *)(puVar17 + -200)" (* "*") (cast_expression "(int *)(puVar17 + -200)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -200)" (( "(") (binary_expression "puVar17 + -200" (identifier "puVar17") (+ "+") (number_literal "-200")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0)" (pointer_expression "*(int *)(puVar17 + -0xac)" (* "*") (cast_expression "(int *)(puVar17 + -0xac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")")))) (+ "+") (pointer_expression "*(int *)(puVar17 + -0xc0)" (* "*") (cast_expression "(int *)(puVar17 + -0xc0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc0)" (( "(") (binary_expression "puVar17 + -0xc0" (identifier "puVar17") (+ "+") (number_literal "-0xc0")) () ")")))))) (; ";")) (if_statement "if (*(int *)(puVar17 + -0xc4) <= iVar14) {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" (if "if") (parenthesized_expression "(*(int *)(puVar17 + -0xc4) <= iVar14)" (( "(") (binary_expression "*(int *)(puVar17 + -0xc4) <= iVar14" (pointer_expression "*(int *)(puVar17 + -0xc4)" (* "*") (cast_expression "(int *)(puVar17 + -0xc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc4)" (( "(") (binary_expression "puVar17 + -0xc4" (identifier "puVar17") (+ "+") (number_literal "-0xc4")) () ")")))) (<= "<=") (identifier "iVar14")) () ")")) (compound_statement "{\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            iVar5 = *(int *)(puVar17 + -0xb4);\n            do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" ({ "{") (expression_statement "*(undefined1 **)(puVar17 + 0x18) = puVar18;" (assignment_expression "*(undefined1 **)(puVar17 + 0x18) = puVar18" (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" (* "*") (cast_expression "(undefined1 **)(puVar17 + 0x18)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + 0x18)" (( "(") (binary_expression "puVar17 + 0x18" (identifier "puVar17") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "iVar5 = *(int *)(puVar17 + -0xb4);" (assignment_expression "iVar5 = *(int *)(puVar17 + -0xb4)" (identifier "iVar5") (= "=") (pointer_expression "*(int *)(puVar17 + -0xb4)" (* "*") (cast_expression "(int *)(puVar17 + -0xb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")"))))) (; ";")) (do_statement "do {\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            } while (*(int *)(puVar17 + -0xc4) <= iVar14);" (do "do") (compound_statement "{\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;\n              __gmpn_toom42_mul();\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xa4);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);\n              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0x9c);\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              iVar7 = *(int *)(puVar17 + -0xc0);\n              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;\n              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);\n              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;\n              pcVar3 = *(code **)(iVar14 + 0x28);\n              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);\n              iVar14 = *(int *)(puVar17 + -0xa8);\n            }" ({ "{") (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xbc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xbc)" (( "(") (binary_expression "puVar17 + -0xbc" (identifier "puVar17") (+ "+") (number_literal "-0xbc")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + 0x18)" (* "*") (cast_expression "(undefined4 *)(puVar17 + 0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x18)" (( "(") (binary_expression "puVar17 + 0x18" (identifier "puVar17") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)\n              ;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;" (assignment_expression "*(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5" (pointer_expression "*(int *)(auStack_e0 + iVar4 + iVar2 + -0x18)" (* "*") (cast_expression "(int *)(auStack_e0 + iVar4 + iVar2 + -0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x18)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x18" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "iVar5")) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)\n              ;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x1c)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x1c" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xb0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)\n              ;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x20)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x20" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xac)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x24)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x24" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x478b4")) (; ";")) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" (identifier "__gmpn_toom42_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar6 = *(undefined4 **)(puVar17 + -0x9c);" (assignment_expression "puVar6 = *(undefined4 **)(puVar17 + -0x9c)" (identifier "puVar6") (= "=") (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" (* "*") (cast_expression "(undefined4 **)(puVar17 + -0x9c)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")"))))) (; ";")) (expression_statement "iVar14 = *(int *)(puVar17 + -0xa4);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xa4)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -4)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -4" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-4")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + 0x18)" (* "*") (cast_expression "(undefined4 *)(puVar17 + 0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x18)" (( "(") (binary_expression "puVar17 + 0x18" (identifier "puVar17") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;" (assignment_expression "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xb0)" (* "*") (cast_expression "(int *)(puVar17 + -0xb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + -0xb0) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xb0)" (* "*") (cast_expression "(int *)(puVar17 + -0xb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")")))) (+ "+") (identifier "iVar14"))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -8)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -8" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xac)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")"))))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;" (assignment_expression "*(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5" (pointer_expression "*(int *)(puVar17 + -0xa8)" (* "*") (cast_expression "(int *)(puVar17 + -0xa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + -0xa8) - iVar5" (pointer_expression "*(int *)(puVar17 + -0xa8)" (* "*") (cast_expression "(int *)(puVar17 + -0xa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (- "-") (identifier "iVar5"))) (; ";")) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc)" (* "*") (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" (* "*") (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "pcVar3 = (code *)*puVar6;" (assignment_expression "pcVar3 = (code *)*puVar6" (identifier "pcVar3") (= "=") (cast_expression "(code *)*puVar6" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar6" (* "*") (identifier "puVar6")))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x478dc")) (; ";")) (expression_statement "uVar10 = (*pcVar3)();" (assignment_expression "uVar10 = (*pcVar3)()" (identifier "uVar10") (= "=") (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar14 = *(int *)(puVar17 + -0x9c);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0x9c)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(puVar17 + -0x9c)" (* "*") (cast_expression "(int *)(puVar17 + -0x9c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0xb8) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xb8) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xb8)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb8)" (( "(") (binary_expression "puVar17 + -0xb8" (identifier "puVar17") (+ "+") (number_literal "-0xb8")) () ")")))) (= "=") (identifier "uVar10")) (; ";")) (expression_statement "iVar7 = *(int *)(puVar17 + -0xc0);" (assignment_expression "iVar7 = *(int *)(puVar17 + -0xc0)" (identifier "iVar7") (= "=") (pointer_expression "*(int *)(puVar17 + -0xc0)" (* "*") (cast_expression "(int *)(puVar17 + -0xc0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc0)" (( "(") (binary_expression "puVar17 + -0xc0" (identifier "puVar17") (+ "+") (number_literal "-0xc0")) () ")"))))) (; ";")) (expression_statement "*(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;" (assignment_expression "*(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5" (pointer_expression "*(int *)(auStack_e0 + iVar4 + iVar2 + -8)" (* "*") (cast_expression "(int *)(auStack_e0 + iVar4 + iVar2 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -8)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -8" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "iVar5")) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;" (assignment_expression "*(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7" (pointer_expression "*(undefined1 **)(puVar17 + -0xb4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xb4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")")))) (= "=") (binary_expression "puVar19 + iVar7" (identifier "puVar19") (+ "+") (identifier "iVar7"))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -200)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -200)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -200)" (( "(") (binary_expression "puVar17 + -200" (identifier "puVar17") (+ "+") (number_literal "-200")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" (* "*") (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "puVar19 + iVar7" (identifier "puVar19") (+ "+") (identifier "iVar7"))) (; ";")) (expression_statement "pcVar3 = *(code **)(iVar14 + 0x28);" (assignment_expression "pcVar3 = *(code **)(iVar14 + 0x28)" (identifier "pcVar3") (= "=") (pointer_expression "*(code **)(iVar14 + 0x28)" (* "*") (cast_expression "(code **)(iVar14 + 0x28)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar14 + 0x28)" (( "(") (binary_expression "iVar14 + 0x28" (identifier "iVar14") (+ "+") (number_literal "0x28")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x47905")) (; ";")) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar13 = *(uint **)(puVar17 + -0xb4);" (assignment_expression "puVar13 = *(uint **)(puVar17 + -0xb4)" (identifier "puVar13") (= "=") (pointer_expression "*(uint **)(puVar17 + -0xb4)" (* "*") (cast_expression "(uint **)(puVar17 + -0xb4)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")"))))) (; ";")) (expression_statement "uVar8 = *(uint *)(puVar17 + -0xb8);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -0xb8)" (identifier "uVar8") (= "=") (pointer_expression "*(uint *)(puVar17 + -0xb8)" (* "*") (cast_expression "(uint *)(puVar17 + -0xb8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb8)" (( "(") (binary_expression "puVar17 + -0xb8" (identifier "puVar17") (+ "+") (number_literal "-0xb8")) () ")"))))) (; ";")) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" (identifier "uVar9") (= "=") (pointer_expression "*puVar13" (* "*") (identifier "puVar13"))) (; ";")) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (= "=") (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (+ "+") (identifier "uVar8"))) (; ";")) (if_statement "if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" (if "if") (parenthesized_expression "(CARRY4(uVar9,uVar8))" (( "(") (call_expression "CARRY4(uVar9,uVar8)" (identifier "CARRY4") (argument_list "(uVar9,uVar8)" (( "(") (identifier "uVar9") (, ",") (identifier "uVar8") () ")"))) () ")")) (compound_statement "{\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" ({ "{") (do_statement "do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);" (do "do") (compound_statement "{\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                }" ({ "{") (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" (identifier "puVar1") (= "=") (binary_expression "puVar13 + 1" (identifier "puVar13") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" (identifier "uVar9") (= "=") (pointer_expression "*puVar1" (* "*") (identifier "puVar1"))) (; ";")) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (= "=") (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" (identifier "puVar13") (= "=") (binary_expression "puVar13 + 1" (identifier "puVar13") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(0xfffffffe < uVar9)" (( "(") (binary_expression "0xfffffffe < uVar9" (number_literal "0xfffffffe") (< "<") (identifier "uVar9")) () ")")) (; ";")) (} "}"))) (expression_statement "puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);" (assignment_expression "puVar19 = puVar19 + *(int *)(puVar17 + -0xa4)" (identifier "puVar19") (= "=") (binary_expression "puVar19 + *(int *)(puVar17 + -0xa4)" (identifier "puVar19") (+ "+") (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))))) (; ";")) (expression_statement "iVar14 = *(int *)(puVar17 + -0xa8);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xa8)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(puVar17 + -0xa8)" (* "*") (cast_expression "(int *)(puVar17 + -0xa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")"))))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(*(int *)(puVar17 + -0xc4) <= iVar14)" (( "(") (binary_expression "*(int *)(puVar17 + -0xc4) <= iVar14" (pointer_expression "*(int *)(puVar17 + -0xc4)" (* "*") (cast_expression "(int *)(puVar17 + -0xc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc4)" (( "(") (binary_expression "puVar17 + -0xc4" (identifier "puVar17") (+ "+") (number_literal "-0xc4")) () ")")))) (<= "<=") (identifier "iVar14")) () ")")) (; ";")) (expression_statement "puVar18 = *(undefined1 **)(puVar17 + 0x18);" (assignment_expression "puVar18 = *(undefined1 **)(puVar17 + 0x18)" (identifier "puVar18") (= "=") (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" (* "*") (cast_expression "(undefined1 **)(puVar17 + 0x18)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + 0x18)" (( "(") (binary_expression "puVar17 + 0x18" (identifier "puVar17") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (} "}"))) (if_statement "if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }\n          else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }" (if "if") (parenthesized_expression "(iVar14 * 4 < *(int *)(puVar17 + -0xcc))" (( "(") (binary_expression "iVar14 * 4 < *(int *)(puVar17 + -0xcc)" (binary_expression "iVar14 * 4" (identifier "iVar14") (* "*") (number_literal "4")) (< "<") (pointer_expression "*(int *)(puVar17 + -0xcc)" (* "*") (cast_expression "(int *)(puVar17 + -0xcc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xcc)" (( "(") (binary_expression "puVar17 + -0xcc" (identifier "puVar17") (+ "+") (number_literal "-0xcc")) () ")"))))) () ")")) (compound_statement "{\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;\n            __gmpn_toom22_mul();\n          }" ({ "{") (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xbc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xbc)" (( "(") (binary_expression "puVar17 + -0xbc" (identifier "puVar17") (+ "+") (number_literal "-0xbc")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" (* "*") (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;" (assignment_expression "*(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14" (pointer_expression "*(int *)(auStack_e0 + iVar4 + iVar2 + -0x18)" (* "*") (cast_expression "(int *)(auStack_e0 + iVar4 + iVar2 + -0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x18)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x18" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "iVar14")) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x1c)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x1c" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xb0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x20)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x20" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xac)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x24)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x24" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x47cd2")) (; ";")) (expression_statement "__gmpn_toom22_mul();" (call_expression "__gmpn_toom22_mul()" (identifier "__gmpn_toom22_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }" (else "else") (if_statement "if (iVar14 * 4 < (int)puVar18 * 7) {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }\n          else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }" (if "if") (parenthesized_expression "(iVar14 * 4 < (int)puVar18 * 7)" (( "(") (binary_expression "iVar14 * 4 < (int)puVar18 * 7" (binary_expression "iVar14 * 4" (identifier "iVar14") (* "*") (number_literal "4")) (< "<") (binary_expression "(int)puVar18 * 7" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "7"))) () ")")) (compound_statement "{\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;\n            __gmpn_toom32_mul();\n          }" ({ "{") (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xbc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xbc)" (( "(") (binary_expression "puVar17 + -0xbc" (identifier "puVar17") (+ "+") (number_literal "-0xbc")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" (* "*") (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x18)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x18" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa8)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x1c)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x1c" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xb0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x20)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x20" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xac)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x24)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x24" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x47987")) (; ";")) (expression_statement "__gmpn_toom32_mul();" (call_expression "__gmpn_toom32_mul()" (identifier "__gmpn_toom32_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else {\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }" (else "else") (compound_statement "{\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);\n            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;\n            __gmpn_toom42_mul();\n          }" ({ "{") (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xbc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xbc)" (( "(") (binary_expression "puVar17 + -0xbc" (identifier "puVar17") (+ "+") (number_literal "-0xbc")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" (* "*") (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x18)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x18" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa8)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x1c)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x1c" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xb0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x20)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x20" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xac)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x24)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x24" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x47ca7")) (; ";")) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" (identifier "__gmpn_toom42_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))))) (expression_statement "puVar6 = *(undefined4 **)(puVar17 + -0x9c);" (assignment_expression "puVar6 = *(undefined4 **)(puVar17 + -0x9c)" (identifier "puVar6") (= "=") (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" (* "*") (cast_expression "(undefined4 **)(puVar17 + -0x9c)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4)" (* "*") (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -4)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -4" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -8)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -8" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xac)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc)" (* "*") (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;" (assignment_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19" (pointer_expression "*(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" (* "*") (cast_expression "(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "pcVar3 = (code *)*puVar6;" (assignment_expression "pcVar3 = (code *)*puVar6" (identifier "pcVar3") (= "=") (cast_expression "(code *)*puVar6" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar6" (* "*") (identifier "puVar6")))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x4799b")) (; ";")) (expression_statement "uVar10 = (*pcVar3)();" (assignment_expression "uVar10 = (*pcVar3)()" (identifier "uVar10") (= "=") (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0xa0) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xa0) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")")))) (= "=") (identifier "uVar10")) (; ";")) (expression_statement "iVar14 = *(int *)(puVar17 + -0x9c);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0x9c)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(puVar17 + -0x9c)" (* "*") (cast_expression "(int *)(puVar17 + -0x9c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")"))))) (; ";")) (expression_statement "puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));" (assignment_expression "puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0))" (identifier "puVar13") (= "=") (cast_expression "(uint *)(puVar19 + *(int *)(puVar17 + -0xc0))" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar19 + *(int *)(puVar17 + -0xc0))" (( "(") (binary_expression "puVar19 + *(int *)(puVar17 + -0xc0)" (identifier "puVar19") (+ "+") (pointer_expression "*(int *)(puVar17 + -0xc0)" (* "*") (cast_expression "(int *)(puVar17 + -0xc0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc0)" (( "(") (binary_expression "puVar17 + -0xc0" (identifier "puVar17") (+ "+") (number_literal "-0xc0")) () ")"))))) () ")")))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -8)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -8" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa8)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200)" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0xc)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0xc" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -200)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -200)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -200)" (( "(") (binary_expression "puVar17 + -200" (identifier "puVar17") (+ "+") (number_literal "-200")) () ")"))))) (; ";")) (expression_statement "*(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;" (assignment_expression "*(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13" (pointer_expression "*(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10)" (* "*") (cast_expression "(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x10)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x10" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar13")) (; ";")) (expression_statement "pcVar3 = *(code **)(iVar14 + 0x28);" (assignment_expression "pcVar3 = *(code **)(iVar14 + 0x28)" (identifier "pcVar3") (= "=") (pointer_expression "*(code **)(iVar14 + 0x28)" (* "*") (cast_expression "(code **)(iVar14 + 0x28)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar14 + 0x28)" (( "(") (binary_expression "iVar14 + 0x28" (identifier "iVar14") (+ "+") (number_literal "0x28")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;" (assignment_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2" (pointer_expression "*(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" (* "*") (cast_expression "(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(auStack_e0 + iVar4 + iVar2 + -0x14)" (( "(") (binary_expression "auStack_e0 + iVar4 + iVar2 + -0x14" (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x479c2")) (; ";")) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar8 = *(uint *)(puVar17 + -0xa0);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -0xa0)" (identifier "uVar8") (= "=") (pointer_expression "*(uint *)(puVar17 + -0xa0)" (* "*") (cast_expression "(uint *)(puVar17 + -0xa0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" (identifier "uVar9") (= "=") (pointer_expression "*puVar13" (* "*") (identifier "puVar13"))) (; ";")) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (= "=") (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (+ "+") (identifier "uVar8"))) (; ";")) (if_statement "if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }" (if "if") (parenthesized_expression "(CARRY4(uVar9,uVar8))" (( "(") (call_expression "CARRY4(uVar9,uVar8)" (identifier "CARRY4") (argument_list "(uVar9,uVar8)" (( "(") (identifier "uVar9") (, ",") (identifier "uVar8") () ")"))) () ")")) (compound_statement "{\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }" ({ "{") (do_statement "do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);" (do "do") (compound_statement "{\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            }" ({ "{") (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" (identifier "puVar1") (= "=") (binary_expression "puVar13 + 1" (identifier "puVar13") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" (identifier "uVar9") (= "=") (pointer_expression "*puVar1" (* "*") (identifier "puVar1"))) (; ";")) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (= "=") (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" (identifier "puVar13") (= "=") (binary_expression "puVar13 + 1" (identifier "puVar13") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(0xfffffffe < uVar9)" (( "(") (binary_expression "0xfffffffe < uVar9" (number_literal "0xfffffffe") (< "<") (identifier "uVar9")) () ")")) (; ";")) (} "}"))) (expression_statement "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);" (assignment_expression "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8)" (pointer_expression "*(undefined1 **)(puVar17 + -0x9c)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0x9c)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (= "=") (binary_expression "puVar18 + *(int *)(puVar17 + -0xa8)" (identifier "puVar18") (+ "+") (pointer_expression "*(int *)(puVar17 + -0xa8)" (* "*") (cast_expression "(int *)(puVar17 + -0xa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))))) (; ";")) (expression_statement "puVar11 = auStack_e0 + iVar4 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar4 + iVar2" (identifier "puVar11") (= "=") (binary_expression "auStack_e0 + iVar4 + iVar2" (binary_expression "auStack_e0 + iVar4" (identifier "auStack_e0") (+ "+") (identifier "iVar4")) (+ "+") (identifier "iVar2"))) (; ";")) (} "}")))) (goto_statement "goto LAB_000471aa;" (goto "goto") (statement_identifier "LAB_000471aa") (; ";")) (} "}")))) (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10)" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (= "=") (binary_expression "puVar18 + *(int *)(puVar17 + 0x10)" (identifier "puVar18") (+ "+") (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")")))))) (; ";")) (if_statement "if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }" (if "if") (parenthesized_expression "((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3))" (( "(") (binary_expression "(3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&\n         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)" (parenthesized_expression "(3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10)))" (( "(") (binary_expression "3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))" (number_literal "3999") (< "<") (cast_expression "(int)(puVar18 + *(int *)(puVar17 + 0x10))" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(puVar18 + *(int *)(puVar17 + 0x10))" (( "(") (binary_expression "puVar18 + *(int *)(puVar17 + 0x10)" (identifier "puVar18") (+ "+") (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) () ")")))) () ")")) (&& "&&") (parenthesized_expression "(*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)" (( "(") (comma_expression "*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3" (assignment_expression "*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3" (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (= "=") (binary_expression "(int)puVar18 * 3" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "3"))) (, ",") (binary_expression "1999 < (int)puVar18 * 3" (number_literal "1999") (< "<") (binary_expression "(int)puVar18 * 3" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "3")))) () ")"))) () ")")) (compound_statement "{\n        iVar2 = (int)puVar18 * 8;\n        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }\n        goto LAB_000471aa;\n      }" ({ "{") (expression_statement "iVar2 = (int)puVar18 * 8;" (assignment_expression "iVar2 = (int)puVar18 * 8" (identifier "iVar2") (= "=") (binary_expression "(int)puVar18 * 8" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "8"))) (; ";")) (if_statement "if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }\n        else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }" (if "if") (parenthesized_expression "(iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10))" (( "(") (binary_expression "iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)" (binary_expression "iVar2 - *(int *)(puVar17 + 0x10) == 0" (binary_expression "iVar2 - *(int *)(puVar17 + 0x10)" (identifier "iVar2") (- "-") (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) (== "==") (number_literal "0")) (|| "||") (binary_expression "iVar2 < *(int *)(puVar17 + 0x10)" (identifier "iVar2") (< "<") (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")")))))) () ")")) (compound_statement "{\n          *(int *)(puVar17 + -0xb8) = iVar2;\n          *(undefined1 **)(puVar17 + -0xac) = puVar12;\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);\n          apuStack_f4[1] = puVar17 + -0x94;\n          apuStack_f4[0] = (undefined1 *)0x47238;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + -0xa4);\n          apuStack_100[0] = puVar19;\n          apuStack_f4[1] = puVar18;\n          *(undefined4 *)(puVar17 + -0xa8) = uVar10;\n          auStack_8014[0x1fc4] = 0x4725a;\n          __gmpn_nussbaumer_mul();\n          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;\n          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);\n          *(int *)(puVar17 + -0xb4) = iVar14;\n          iVar2 = *(int *)(puVar17 + -0xa4) * 4;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xb0) = iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;\n          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;\n          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);\n          if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n          apuStack_f4[0] = (undefined1 *)0x473d1;\n          apuStack_f4[1] = puVar19;\n          apuStack_f4[2] = puVar19;\n          uStack_e4 = (uint)puVar18;\n          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];\n          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n          apuStack_f4[0] = (undefined1 *)0x473fe;\n          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n          puVar13 = *(uint **)(puVar17 + -0xa0);\n          uVar8 = *(uint *)(puVar17 + -0xa4);\n          uVar9 = *puVar13;\n          *puVar13 = *puVar13 + uVar8;\n          if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }\n          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }\n          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);\n          puVar11 = auStack_e0;\n        }" ({ "{") (expression_statement "*(int *)(puVar17 + -0xb8) = iVar2;" (assignment_expression "*(int *)(puVar17 + -0xb8) = iVar2" (pointer_expression "*(int *)(puVar17 + -0xb8)" (* "*") (cast_expression "(int *)(puVar17 + -0xb8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb8)" (( "(") (binary_expression "puVar17 + -0xb8" (identifier "puVar17") (+ "+") (number_literal "-0xb8")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -0xac) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xac) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xac)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xac)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0x94) = 0;" (assignment_expression "*(undefined4 *)(puVar17 + -0x94) = 0" (pointer_expression "*(undefined4 *)(puVar17 + -0x94)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x94)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x94)" (( "(") (binary_expression "puVar17 + -0x94" (identifier "puVar17") (+ "+") (number_literal "-0x94")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);" (assignment_expression "apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2)" (subscript_expression "apuStack_f4[2]" (identifier "apuStack_f4") ([ "[") (number_literal "2") (] "]")) (= "=") (cast_expression "(undefined1 *)(((int)puVar18 * 9 >> 1) << 2)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(((int)puVar18 * 9 >> 1) << 2)" (( "(") (binary_expression "((int)puVar18 * 9 >> 1) << 2" (parenthesized_expression "((int)puVar18 * 9 >> 1)" (( "(") (binary_expression "(int)puVar18 * 9 >> 1" (binary_expression "(int)puVar18 * 9" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "9")) (>> ">>") (number_literal "1")) () ")")) (<< "<<") (number_literal "2")) () ")")))) (; ";")) (expression_statement "apuStack_f4[1] = puVar17 + -0x94;" (assignment_expression "apuStack_f4[1] = puVar17 + -0x94" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (binary_expression "puVar17 + -0x94" (identifier "puVar17") (+ "+") (number_literal "-0x94"))) (; ";")) (expression_statement "apuStack_f4[0] = (undefined1 *)0x47238;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x47238" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (cast_expression "(undefined1 *)0x47238" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x47238"))) (; ";")) (expression_statement "uVar10 = __gmp_tmp_reentrant_alloc();" (assignment_expression "uVar10 = __gmp_tmp_reentrant_alloc()" (identifier "uVar10") (= "=") (call_expression "__gmp_tmp_reentrant_alloc()" (identifier "__gmp_tmp_reentrant_alloc") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);" (assignment_expression "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac)" (subscript_expression "apuStack_100[1]" (identifier "apuStack_100") ([ "[") (number_literal "1") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xac)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xac)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")"))))) (; ";")) (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "iStack_f8 = *(int *)(puVar17 + -0xa4);" (assignment_expression "iStack_f8 = *(int *)(puVar17 + -0xa4)" (identifier "iStack_f8") (= "=") (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (expression_statement "apuStack_100[0] = puVar19;" (assignment_expression "apuStack_100[0] = puVar19" (subscript_expression "apuStack_100[0]" (identifier "apuStack_100") ([ "[") (number_literal "0") (] "]")) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0xa8) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xa8) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xa8)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (= "=") (identifier "uVar10")) (; ";")) (expression_statement "auStack_8014[0x1fc4] = 0x4725a;" (assignment_expression "auStack_8014[0x1fc4] = 0x4725a" (subscript_expression "auStack_8014[0x1fc4]" (identifier "auStack_8014") ([ "[") (number_literal "0x1fc4") (] "]")) (= "=") (number_literal "0x4725a")) (; ";")) (expression_statement "__gmpn_nussbaumer_mul();" (call_expression "__gmpn_nussbaumer_mul()" (identifier "__gmpn_nussbaumer_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xbc) = (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xbc)" (* "*") (cast_expression "(int *)(puVar17 + -0xbc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xbc)" (( "(") (binary_expression "puVar17 + -0xbc" (identifier "puVar17") (+ "+") (number_literal "-0xbc")) () ")")))) (= "=") (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "4"))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;" (assignment_expression "*(int *)(puVar17 + -0xc4) = (int)puVar18 * -3" (pointer_expression "*(int *)(puVar17 + -0xc4)" (* "*") (cast_expression "(int *)(puVar17 + -0xc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc4)" (( "(") (binary_expression "puVar17 + -0xc4" (identifier "puVar17") (+ "+") (number_literal "-0xc4")) () ")")))) (= "=") (binary_expression "(int)puVar18 * -3" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "-3"))) (; ";")) (expression_statement "iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);" (assignment_expression "iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10)" (identifier "iVar14") (= "=") (binary_expression "(int)puVar18 * -3 + *(int *)(puVar17 + 0x10)" (binary_expression "(int)puVar18 * -3" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "-3")) (+ "+") (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")")))))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xb4) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xb4) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xb4)" (* "*") (cast_expression "(int *)(puVar17 + -0xb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")")))) (= "=") (identifier "iVar14")) (; ";")) (expression_statement "iVar2 = *(int *)(puVar17 + -0xa4) * 4;" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xa4) * 4" (identifier "iVar2") (= "=") (binary_expression "*(int *)(puVar17 + -0xa4) * 4" (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (* "*") (number_literal "4"))) (; ";")) (expression_statement "puVar19 = puVar19 + iVar2;" (assignment_expression "puVar19 = puVar19 + iVar2" (identifier "puVar19") (= "=") (binary_expression "puVar19 + iVar2" (identifier "puVar19") (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xb0) = iVar2;" (assignment_expression "*(int *)(puVar17 + -0xb0) = iVar2" (pointer_expression "*(int *)(puVar17 + -0xb0)" (* "*") (cast_expression "(int *)(puVar17 + -0xb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;" (assignment_expression "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2" (pointer_expression "*(int *)(puVar17 + -0xac)" (* "*") (cast_expression "(int *)(puVar17 + -0xac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + -0xac) + iVar2" (pointer_expression "*(int *)(puVar17 + -0xac)" (* "*") (cast_expression "(int *)(puVar17 + -0xac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")")))) (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "*(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;" (assignment_expression "*(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18" (pointer_expression "*(int *)(puVar17 + -200)" (* "*") (cast_expression "(int *)(puVar17 + -200)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -200)" (( "(") (binary_expression "puVar17 + -200" (identifier "puVar17") (+ "+") (number_literal "-200")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + -0xb8) - (int)puVar18" (pointer_expression "*(int *)(puVar17 + -0xb8)" (* "*") (cast_expression "(int *)(puVar17 + -0xb8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb8)" (( "(") (binary_expression "puVar17 + -0xb8" (identifier "puVar17") (+ "+") (number_literal "-0xb8")) () ")")))) (- "-") (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")))) (; ";")) (if_statement "if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }\n          else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" (if "if") (parenthesized_expression "(iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18)" (( "(") (binary_expression "iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18" (binary_expression "iVar14 * 2" (identifier "iVar14") (* "*") (number_literal "2")) (< "<") (binary_expression "*(int *)(puVar17 + -0xb8) - (int)puVar18" (pointer_expression "*(int *)(puVar17 + -0xb8)" (* "*") (cast_expression "(int *)(puVar17 + -0xb8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb8)" (( "(") (binary_expression "puVar17 + -0xb8" (identifier "puVar17") (+ "+") (number_literal "-0xb8")) () ")")))) (- "-") (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")))) () ")")) (compound_statement "{\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n          }" ({ "{") (expression_statement "*(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);" (assignment_expression "*(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc)" (pointer_expression "*(int *)(puVar17 + -0xc0)" (* "*") (cast_expression "(int *)(puVar17 + -0xc0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc0)" (( "(") (binary_expression "puVar17 + -0xc0" (identifier "puVar17") (+ "+") (number_literal "-0xc0")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc)" (pointer_expression "*(int *)(puVar17 + -0xa8)" (* "*") (cast_expression "(int *)(puVar17 + -0xa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (+ "+") (pointer_expression "*(int *)(puVar17 + -0xbc)" (* "*") (cast_expression "(int *)(puVar17 + -0xbc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xbc)" (( "(") (binary_expression "puVar17 + -0xbc" (identifier "puVar17") (+ "+") (number_literal "-0xbc")) () ")")))))) (; ";")) (} "}")) (else_clause "else {\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" (else "else") (compound_statement "{\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);\n            do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);\n            *(int *)(puVar17 + -0xb4) = iVar14;\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" ({ "{") (expression_statement "*(undefined1 **)(puVar17 + 0x18) = puVar18;" (assignment_expression "*(undefined1 **)(puVar17 + 0x18) = puVar18" (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" (* "*") (cast_expression "(undefined1 **)(puVar17 + 0x18)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + 0x18)" (( "(") (binary_expression "puVar17 + 0x18" (identifier "puVar17") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);" (assignment_expression "*(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc)" (pointer_expression "*(int *)(puVar17 + -0xc0)" (* "*") (cast_expression "(int *)(puVar17 + -0xc0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc0)" (( "(") (binary_expression "puVar17 + -0xc0" (identifier "puVar17") (+ "+") (number_literal "-0xc0")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc)" (pointer_expression "*(int *)(puVar17 + -0xa8)" (* "*") (cast_expression "(int *)(puVar17 + -0xa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (+ "+") (pointer_expression "*(int *)(puVar17 + -0xbc)" (* "*") (cast_expression "(int *)(puVar17 + -0xbc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xbc)" (( "(") (binary_expression "puVar17 + -0xbc" (identifier "puVar17") (+ "+") (number_literal "-0xbc")) () ")")))))) (; ";")) (do_statement "do {\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);" (do "do") (compound_statement "{\n              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);\n              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n              iStack_f8 = *(int *)(puVar17 + -0xa4);\n              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n              auStack_8014[0x1fc4] = 0x47303;\n              __gmpn_nussbaumer_mul();\n              uStack_e4 = *(uint *)(puVar17 + 0x18);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);\n              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);\n              apuStack_f4[1] = puVar19;\n              apuStack_f4[2] = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);\n              apuStack_f4[0] = (undefined1 *)0x4732b;\n              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n              *(undefined4 *)(puVar17 + -0xb8) = uVar10;\n              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);\n              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];\n              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);\n              apuStack_f4[0] = (undefined1 *)0x47359;\n              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n              puVar13 = *(uint **)(puVar17 + -0xb4);\n              uVar8 = *(uint *)(puVar17 + -0xb8);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);\n              iVar2 = *(int *)(puVar17 + -200);\n            }" ({ "{") (expression_statement "apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);" (assignment_expression "apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18)" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" (* "*") (cast_expression "(undefined1 **)(puVar17 + 0x18)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + 0x18)" (( "(") (binary_expression "puVar17 + 0x18" (identifier "puVar17") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "iStack_f8 = *(int *)(puVar17 + -0xa4);" (assignment_expression "iStack_f8 = *(int *)(puVar17 + -0xa4)" (identifier "iStack_f8") (= "=") (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (expression_statement "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);" (assignment_expression "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac)" (subscript_expression "apuStack_100[1]" (identifier "apuStack_100") ([ "[") (number_literal "1") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xac)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xac)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")"))))) (; ";")) (expression_statement "apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);" (assignment_expression "apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8)" (subscript_expression "apuStack_100[0]" (identifier "apuStack_100") ([ "[") (number_literal "0") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")"))))) (; ";")) (expression_statement "auStack_8014[0x1fc4] = 0x47303;" (assignment_expression "auStack_8014[0x1fc4] = 0x47303" (subscript_expression "auStack_8014[0x1fc4]" (identifier "auStack_8014") ([ "[") (number_literal "0x1fc4") (] "]")) (= "=") (number_literal "0x47303")) (; ";")) (expression_statement "__gmpn_nussbaumer_mul();" (call_expression "__gmpn_nussbaumer_mul()" (identifier "__gmpn_nussbaumer_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uStack_e4 = *(uint *)(puVar17 + 0x18);" (assignment_expression "uStack_e4 = *(uint *)(puVar17 + 0x18)" (identifier "uStack_e4") (= "=") (pointer_expression "*(uint *)(puVar17 + 0x18)" (* "*") (cast_expression "(uint *)(puVar17 + 0x18)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x18)" (( "(") (binary_expression "puVar17 + 0x18" (identifier "puVar17") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8)" (subscript_expression "apuStack_f4[3]" (identifier "apuStack_f4") ([ "[") (number_literal "3") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")"))))) (; ";")) (expression_statement "iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);" (assignment_expression "iVar14 = iVar14 + *(int *)(puVar17 + -0xc4)" (identifier "iVar14") (= "=") (binary_expression "iVar14 + *(int *)(puVar17 + -0xc4)" (identifier "iVar14") (+ "+") (pointer_expression "*(int *)(puVar17 + -0xc4)" (* "*") (cast_expression "(int *)(puVar17 + -0xc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc4)" (( "(") (binary_expression "puVar17 + -0xc4" (identifier "puVar17") (+ "+") (number_literal "-0xc4")) () ")")))))) (; ";")) (expression_statement "apuStack_f4[1] = puVar19;" (assignment_expression "apuStack_f4[1] = puVar19" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "apuStack_f4[2] = puVar19;" (assignment_expression "apuStack_f4[2] = puVar19" (subscript_expression "apuStack_f4[2]" (identifier "apuStack_f4") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);" (assignment_expression "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0)" (pointer_expression "*(int *)(puVar17 + -0xac)" (* "*") (cast_expression "(int *)(puVar17 + -0xac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0)" (pointer_expression "*(int *)(puVar17 + -0xac)" (* "*") (cast_expression "(int *)(puVar17 + -0xac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")")))) (+ "+") (pointer_expression "*(int *)(puVar17 + -0xb0)" (* "*") (cast_expression "(int *)(puVar17 + -0xb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")")))))) (; ";")) (expression_statement "apuStack_f4[0] = (undefined1 *)0x4732b;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x4732b" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (cast_expression "(undefined1 *)0x4732b" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x4732b"))) (; ";")) (expression_statement "uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();" (assignment_expression "uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))()" (identifier "uVar10") (= "=") (call_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))()" (parenthesized_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))" (( "(") (pointer_expression "*(code *)**(undefined4 **)(puVar17 + -0x9c)" (* "*") (cast_expression "(code *)**(undefined4 **)(puVar17 + -0x9c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "**(undefined4 **)(puVar17 + -0x9c)" (* "*") (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" (* "*") (cast_expression "(undefined4 **)(puVar17 + -0x9c)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")"))))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0xb8) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xb8) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xb8)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb8)" (( "(") (binary_expression "puVar17 + -0xb8" (identifier "puVar17") (+ "+") (number_literal "-0xb8")) () ")")))) (= "=") (identifier "uVar10")) (; ";")) (expression_statement "apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);" (assignment_expression "apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc)" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (binary_expression "puVar19 + *(int *)(puVar17 + -0xbc)" (identifier "puVar19") (+ "+") (pointer_expression "*(int *)(puVar17 + -0xbc)" (* "*") (cast_expression "(int *)(puVar17 + -0xbc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xbc)" (( "(") (binary_expression "puVar17 + -0xbc" (identifier "puVar17") (+ "+") (number_literal "-0xbc")) () ")")))))) (; ";")) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4)" (subscript_expression "apuStack_f4[3]" (identifier "apuStack_f4") ([ "[") (number_literal "3") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];" (assignment_expression "*(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1]" (pointer_expression "*(undefined1 **)(puVar17 + -0xb4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xb4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")")))) (= "=") (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);" (assignment_expression "apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0)" (subscript_expression "apuStack_f4[2]" (identifier "apuStack_f4") ([ "[") (number_literal "2") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xc0)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xc0)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xc0)" (( "(") (binary_expression "puVar17 + -0xc0" (identifier "puVar17") (+ "+") (number_literal "-0xc0")) () ")"))))) (; ";")) (expression_statement "apuStack_f4[0] = (undefined1 *)0x47359;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x47359" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (cast_expression "(undefined1 *)0x47359" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x47359"))) (; ";")) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))" (( "(") (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" (* "*") (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" (* "*") (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x28)" (( "(") (binary_expression "*(int *)(puVar17 + -0x9c) + 0x28" (pointer_expression "*(int *)(puVar17 + -0x9c)" (* "*") (cast_expression "(int *)(puVar17 + -0x9c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (+ "+") (number_literal "0x28")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar13 = *(uint **)(puVar17 + -0xb4);" (assignment_expression "puVar13 = *(uint **)(puVar17 + -0xb4)" (identifier "puVar13") (= "=") (pointer_expression "*(uint **)(puVar17 + -0xb4)" (* "*") (cast_expression "(uint **)(puVar17 + -0xb4)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")"))))) (; ";")) (expression_statement "uVar8 = *(uint *)(puVar17 + -0xb8);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -0xb8)" (identifier "uVar8") (= "=") (pointer_expression "*(uint *)(puVar17 + -0xb8)" (* "*") (cast_expression "(uint *)(puVar17 + -0xb8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb8)" (( "(") (binary_expression "puVar17 + -0xb8" (identifier "puVar17") (+ "+") (number_literal "-0xb8")) () ")"))))) (; ";")) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" (identifier "uVar9") (= "=") (pointer_expression "*puVar13" (* "*") (identifier "puVar13"))) (; ";")) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (= "=") (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (+ "+") (identifier "uVar8"))) (; ";")) (if_statement "if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" (if "if") (parenthesized_expression "(CARRY4(uVar9,uVar8))" (( "(") (call_expression "CARRY4(uVar9,uVar8)" (identifier "CARRY4") (argument_list "(uVar9,uVar8)" (( "(") (identifier "uVar9") (, ",") (identifier "uVar8") () ")"))) () ")")) (compound_statement "{\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" ({ "{") (do_statement "do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);" (do "do") (compound_statement "{\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                }" ({ "{") (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" (identifier "puVar1") (= "=") (binary_expression "puVar13 + 1" (identifier "puVar13") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" (identifier "uVar9") (= "=") (pointer_expression "*puVar1" (* "*") (identifier "puVar1"))) (; ";")) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (= "=") (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" (identifier "puVar13") (= "=") (binary_expression "puVar13 + 1" (identifier "puVar13") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(0xfffffffe < uVar9)" (( "(") (binary_expression "0xfffffffe < uVar9" (number_literal "0xfffffffe") (< "<") (identifier "uVar9")) () ")")) (; ";")) (} "}"))) (expression_statement "puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);" (assignment_expression "puVar19 = puVar19 + *(int *)(puVar17 + -0xb0)" (identifier "puVar19") (= "=") (binary_expression "puVar19 + *(int *)(puVar17 + -0xb0)" (identifier "puVar19") (+ "+") (pointer_expression "*(int *)(puVar17 + -0xb0)" (* "*") (cast_expression "(int *)(puVar17 + -0xb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")")))))) (; ";")) (expression_statement "iVar2 = *(int *)(puVar17 + -200);" (assignment_expression "iVar2 = *(int *)(puVar17 + -200)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(puVar17 + -200)" (* "*") (cast_expression "(int *)(puVar17 + -200)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -200)" (( "(") (binary_expression "puVar17 + -200" (identifier "puVar17") (+ "+") (number_literal "-200")) () ")"))))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0)" (( "(") (binary_expression "iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0" (binary_expression "iVar2 == iVar14 * 2" (identifier "iVar2") (== "==") (binary_expression "iVar14 * 2" (identifier "iVar14") (* "*") (number_literal "2"))) (|| "||") (binary_expression "SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0" (call_expression "SBORROW4(iVar2,iVar14 * 2)" (identifier "SBORROW4") (argument_list "(iVar2,iVar14 * 2)" (( "(") (identifier "iVar2") (, ",") (binary_expression "iVar14 * 2" (identifier "iVar14") (* "*") (number_literal "2")) () ")"))) (!= "!=") (binary_expression "iVar2 + iVar14 * -2 < 0" (binary_expression "iVar2 + iVar14 * -2" (identifier "iVar2") (+ "+") (binary_expression "iVar14 * -2" (identifier "iVar14") (* "*") (number_literal "-2"))) (< "<") (number_literal "0")))) () ")")) (; ";")) (expression_statement "*(int *)(puVar17 + -0xb4) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xb4) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xb4)" (* "*") (cast_expression "(int *)(puVar17 + -0xb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")")))) (= "=") (identifier "iVar14")) (; ";")) (expression_statement "puVar18 = *(undefined1 **)(puVar17 + 0x18);" (assignment_expression "puVar18 = *(undefined1 **)(puVar17 + 0x18)" (identifier "puVar18") (= "=") (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" (* "*") (cast_expression "(undefined1 **)(puVar17 + 0x18)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + 0x18)" (( "(") (binary_expression "puVar17 + 0x18" (identifier "puVar17") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (} "}")))) (expression_statement "apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);" (assignment_expression "apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4)" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xb4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xb4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")"))))) (; ";")) (if_statement "if ((int)apuStack_f4[1] < (int)puVar18) {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }\n          else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }" (if "if") (parenthesized_expression "((int)apuStack_f4[1] < (int)puVar18)" (( "(") (binary_expression "(int)apuStack_f4[1] < (int)puVar18" (cast_expression "(int)apuStack_f4[1]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]"))) (< "<") (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18"))) () ")")) (compound_statement "{\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x473bd;\n            iStack_f8 = (int)puVar18;\n            __gmpn_mul();\n          }" ({ "{") (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac)" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xac)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xac)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")"))))) (; ";")) (expression_statement "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_100[1]" (identifier "apuStack_100") ([ "[") (number_literal "1") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);" (assignment_expression "apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8)" (subscript_expression "apuStack_100[0]" (identifier "apuStack_100") ([ "[") (number_literal "0") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")"))))) (; ";")) (expression_statement "auStack_8014[0x1fc4] = 0x473bd;" (assignment_expression "auStack_8014[0x1fc4] = 0x473bd" (subscript_expression "auStack_8014[0x1fc4]" (identifier "auStack_8014") ([ "[") (number_literal "0x1fc4") (] "]")) (= "=") (number_literal "0x473bd")) (; ";")) (expression_statement "iStack_f8 = (int)puVar18;" (assignment_expression "iStack_f8 = (int)puVar18" (identifier "iStack_f8") (= "=") (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18"))) (; ";")) (expression_statement "__gmpn_mul();" (call_expression "__gmpn_mul()" (identifier "__gmpn_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else {\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }" (else "else") (compound_statement "{\n            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n            iStack_f8 = *(int *)(puVar17 + -0xb4);\n            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);\n            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);\n            auStack_8014[0x1fc4] = 0x47d73;\n            apuStack_f4[1] = puVar18;\n            __gmpn_mul();\n          }" ({ "{") (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "iStack_f8 = *(int *)(puVar17 + -0xb4);" (assignment_expression "iStack_f8 = *(int *)(puVar17 + -0xb4)" (identifier "iStack_f8") (= "=") (pointer_expression "*(int *)(puVar17 + -0xb4)" (* "*") (cast_expression "(int *)(puVar17 + -0xb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")"))))) (; ";")) (expression_statement "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);" (assignment_expression "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac)" (subscript_expression "apuStack_100[1]" (identifier "apuStack_100") ([ "[") (number_literal "1") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xac)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xac)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")"))))) (; ";")) (expression_statement "apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);" (assignment_expression "apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8)" (subscript_expression "apuStack_100[0]" (identifier "apuStack_100") ([ "[") (number_literal "0") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")"))))) (; ";")) (expression_statement "auStack_8014[0x1fc4] = 0x47d73;" (assignment_expression "auStack_8014[0x1fc4] = 0x47d73" (subscript_expression "auStack_8014[0x1fc4]" (identifier "auStack_8014") ([ "[") (number_literal "0x1fc4") (] "]")) (= "=") (number_literal "0x47d73")) (; ";")) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "__gmpn_mul();" (call_expression "__gmpn_mul()" (identifier "__gmpn_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8)" (subscript_expression "apuStack_f4[3]" (identifier "apuStack_f4") ([ "[") (number_literal "3") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")"))))) (; ";")) (expression_statement "apuStack_f4[0] = (undefined1 *)0x473d1;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x473d1" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (cast_expression "(undefined1 *)0x473d1" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x473d1"))) (; ";")) (expression_statement "apuStack_f4[1] = puVar19;" (assignment_expression "apuStack_f4[1] = puVar19" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "apuStack_f4[2] = puVar19;" (assignment_expression "apuStack_f4[2] = puVar19" (subscript_expression "apuStack_f4[2]" (identifier "apuStack_f4") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "uStack_e4 = (uint)puVar18;" (assignment_expression "uStack_e4 = (uint)puVar18" (identifier "uStack_e4") (= "=") (cast_expression "(uint)puVar18" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "puVar18"))) (; ";")) (expression_statement "uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();" (assignment_expression "uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))()" (identifier "uVar10") (= "=") (call_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))()" (parenthesized_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))" (( "(") (pointer_expression "*(code *)**(undefined4 **)(puVar17 + -0x9c)" (* "*") (cast_expression "(code *)**(undefined4 **)(puVar17 + -0x9c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "**(undefined4 **)(puVar17 + -0x9c)" (* "*") (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" (* "*") (cast_expression "(undefined4 **)(puVar17 + -0x9c)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")"))))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0xa4) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xa4) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (= "=") (identifier "uVar10")) (; ";")) (expression_statement "apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);" (assignment_expression "apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc)" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (binary_expression "puVar19 + *(int *)(puVar17 + -0xbc)" (identifier "puVar19") (+ "+") (pointer_expression "*(int *)(puVar17 + -0xbc)" (* "*") (cast_expression "(int *)(puVar17 + -0xbc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xbc)" (( "(") (binary_expression "puVar17 + -0xbc" (identifier "puVar17") (+ "+") (number_literal "-0xbc")) () ")")))))) (; ";")) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4)" (subscript_expression "apuStack_f4[3]" (identifier "apuStack_f4") ([ "[") (number_literal "3") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xb4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xb4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];" (assignment_expression "*(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1]" (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")")))) (= "=") (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);" (assignment_expression "apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0)" (subscript_expression "apuStack_f4[2]" (identifier "apuStack_f4") ([ "[") (number_literal "2") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xc0)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xc0)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xc0)" (( "(") (binary_expression "puVar17 + -0xc0" (identifier "puVar17") (+ "+") (number_literal "-0xc0")) () ")"))))) (; ";")) (expression_statement "apuStack_f4[0] = (undefined1 *)0x473fe;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x473fe" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (cast_expression "(undefined1 *)0x473fe" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x473fe"))) (; ";")) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))" (( "(") (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" (* "*") (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" (* "*") (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x28)" (( "(") (binary_expression "*(int *)(puVar17 + -0x9c) + 0x28" (pointer_expression "*(int *)(puVar17 + -0x9c)" (* "*") (cast_expression "(int *)(puVar17 + -0x9c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (+ "+") (number_literal "0x28")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar13 = *(uint **)(puVar17 + -0xa0);" (assignment_expression "puVar13 = *(uint **)(puVar17 + -0xa0)" (identifier "puVar13") (= "=") (pointer_expression "*(uint **)(puVar17 + -0xa0)" (* "*") (cast_expression "(uint **)(puVar17 + -0xa0)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "uVar8 = *(uint *)(puVar17 + -0xa4);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -0xa4)" (identifier "uVar8") (= "=") (pointer_expression "*(uint *)(puVar17 + -0xa4)" (* "*") (cast_expression "(uint *)(puVar17 + -0xa4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" (identifier "uVar9") (= "=") (pointer_expression "*puVar13" (* "*") (identifier "puVar13"))) (; ";")) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (= "=") (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (+ "+") (identifier "uVar8"))) (; ";")) (if_statement "if (CARRY4(uVar9,uVar8)) {\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }" (if "if") (parenthesized_expression "(CARRY4(uVar9,uVar8))" (( "(") (call_expression "CARRY4(uVar9,uVar8)" (identifier "CARRY4") (argument_list "(uVar9,uVar8)" (( "(") (identifier "uVar9") (, ",") (identifier "uVar8") () ")"))) () ")")) (compound_statement "{\n            do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);\n          }" ({ "{") (do_statement "do {\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            } while (0xfffffffe < uVar9);" (do "do") (compound_statement "{\n              puVar1 = puVar13 + 1;\n              uVar9 = *puVar1;\n              *puVar1 = *puVar1 + 1;\n              puVar13 = puVar13 + 1;\n            }" ({ "{") (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" (identifier "puVar1") (= "=") (binary_expression "puVar13 + 1" (identifier "puVar13") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" (identifier "uVar9") (= "=") (pointer_expression "*puVar1" (* "*") (identifier "puVar1"))) (; ";")) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (= "=") (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" (identifier "puVar13") (= "=") (binary_expression "puVar13 + 1" (identifier "puVar13") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(0xfffffffe < uVar9)" (( "(") (binary_expression "0xfffffffe < uVar9" (number_literal "0xfffffffe") (< "<") (identifier "uVar9")) () ")")) (; ";")) (} "}"))) (if_statement "if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }" (if "if") (parenthesized_expression "(*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0)" (( "(") (binary_expression "*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0" (pointer_expression "*(undefined1 **)(puVar17 + -0x94)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0x94)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x94)" (( "(") (binary_expression "puVar17 + -0x94" (identifier "puVar17") (+ "+") (number_literal "-0x94")) () ")")))) (!= "!=") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            apuStack_f4[0] = (undefined1 *)0x47eda;\n            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);\n            __gmp_tmp_reentrant_free();\n          }" ({ "{") (expression_statement "apuStack_f4[0] = (undefined1 *)0x47eda;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x47eda" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (cast_expression "(undefined1 *)0x47eda" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x47eda"))) (; ";")) (expression_statement "apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);" (assignment_expression "apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94)" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0x94)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0x94)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x94)" (( "(") (binary_expression "puVar17 + -0x94" (identifier "puVar17") (+ "+") (number_literal "-0x94")) () ")"))))) (; ";")) (expression_statement "__gmp_tmp_reentrant_free();" (call_expression "__gmp_tmp_reentrant_free()" (identifier "__gmp_tmp_reentrant_free") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);" (assignment_expression "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4)" (pointer_expression "*(undefined1 **)(puVar17 + -0x9c)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0x9c)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (= "=") (binary_expression "puVar18 + *(int *)(puVar17 + -0xb4)" (identifier "puVar18") (+ "+") (pointer_expression "*(int *)(puVar17 + -0xb4)" (* "*") (cast_expression "(int *)(puVar17 + -0xb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")")))))) (; ";")) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" (identifier "puVar11") (= "=") (identifier "auStack_e0")) (; ";")) (} "}")) (else_clause "else {\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }" (else "else") (compound_statement "{\n          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n          iStack_f8 = *(int *)(puVar17 + 0x10);\n          auStack_8014[0x1fc4] = 0x47c6c;\n          apuStack_100[0] = puVar19;\n          apuStack_100[1] = puVar12;\n          apuStack_f4[1] = puVar18;\n          __gmpn_nussbaumer_mul();\n          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);\n        }" ({ "{") (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "iStack_f8 = *(int *)(puVar17 + 0x10);" (assignment_expression "iStack_f8 = *(int *)(puVar17 + 0x10)" (identifier "iStack_f8") (= "=") (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "auStack_8014[0x1fc4] = 0x47c6c;" (assignment_expression "auStack_8014[0x1fc4] = 0x47c6c" (subscript_expression "auStack_8014[0x1fc4]" (identifier "auStack_8014") ([ "[") (number_literal "0x1fc4") (] "]")) (= "=") (number_literal "0x47c6c")) (; ";")) (expression_statement "apuStack_100[0] = puVar19;" (assignment_expression "apuStack_100[0] = puVar19" (subscript_expression "apuStack_100[0]" (identifier "apuStack_100") ([ "[") (number_literal "0") (] "]")) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "apuStack_100[1] = puVar12;" (assignment_expression "apuStack_100[1] = puVar12" (subscript_expression "apuStack_100[1]" (identifier "apuStack_100") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "__gmpn_nussbaumer_mul();" (call_expression "__gmpn_nussbaumer_mul()" (identifier "__gmpn_nussbaumer_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);" (assignment_expression "*(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8)" (pointer_expression "*(undefined4 *)(puVar17 + -0x9c)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x9c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa8)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")"))))) (; ";")) (} "}")))) (goto_statement "goto LAB_000471aa;" (goto "goto") (statement_identifier "LAB_000471aa") (; ";")) (} "}"))) (if_statement "if (299 < (int)puVar18) {\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }" (if "if") (parenthesized_expression "(299 < (int)puVar18)" (( "(") (binary_expression "299 < (int)puVar18" (number_literal "299") (< "<") (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18"))) () ")")) (compound_statement "{\n        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;\n        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }\n      }" ({ "{") (expression_statement "*(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;" (assignment_expression "*(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc" (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + 0x10) * 3 + 0xc" (binary_expression "*(int *)(puVar17 + 0x10) * 3" (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")")))) (* "*") (number_literal "3")) (+ "+") (number_literal "0xc"))) (; ";")) (if_statement "if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }" (if "if") (parenthesized_expression "(SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0)" (( "(") (binary_expression "SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=\n            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0" (call_expression "SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4)" (identifier "SBORROW4") (argument_list "(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4)" (( "(") (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (, ",") (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "4")) () ")"))) (!= "!=") (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0" (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * -4" (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (+ "+") (binary_expression "(int)puVar18 * -4" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "-4"))) (< "<") (number_literal "0"))) () ")")) (compound_statement "{\n          *(undefined4 *)(puVar17 + -0x94) = 0;\n          uVar9 = *(uint *)(puVar17 + -0xa8);\n          *(uint *)(puVar17 + -0x9c) = uVar9;\n          if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }\n          if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }\n          goto LAB_000471aa;\n        }" ({ "{") (expression_statement "*(undefined4 *)(puVar17 + -0x94) = 0;" (assignment_expression "*(undefined4 *)(puVar17 + -0x94) = 0" (pointer_expression "*(undefined4 *)(puVar17 + -0x94)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x94)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x94)" (( "(") (binary_expression "puVar17 + -0x94" (identifier "puVar17") (+ "+") (number_literal "-0x94")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar9 = *(uint *)(puVar17 + -0xa8);" (assignment_expression "uVar9 = *(uint *)(puVar17 + -0xa8)" (identifier "uVar9") (= "=") (pointer_expression "*(uint *)(puVar17 + -0xa8)" (* "*") (cast_expression "(uint *)(puVar17 + -0xa8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")"))))) (; ";")) (expression_statement "*(uint *)(puVar17 + -0x9c) = uVar9;" (assignment_expression "*(uint *)(puVar17 + -0x9c) = uVar9" (pointer_expression "*(uint *)(puVar17 + -0x9c)" (* "*") (cast_expression "(uint *)(puVar17 + -0x9c)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (= "=") (identifier "uVar9")) (; ";")) (if_statement "if ((int)puVar18 < 0x15e) {\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }\n          else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }" (if "if") (parenthesized_expression "((int)puVar18 < 0x15e)" (( "(") (binary_expression "(int)puVar18 < 0x15e" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (< "<") (number_literal "0x15e")) () ")")) (compound_statement "{\n            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;\n            __gmpn_toom44_mul();\n          }" ({ "{") (expression_statement "iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);" (assignment_expression "iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0)" (identifier "iVar2") (= "=") (unary_expression "-(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0)" (- "-") (parenthesized_expression "(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0)" (( "(") (binary_expression "*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0" (binary_expression "*(int *)(puVar17 + 0x10) * 0xc + 0x9bU" (binary_expression "*(int *)(puVar17 + 0x10) * 0xc" (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")")))) (* "*") (number_literal "0xc")) (+ "+") (number_literal "0x9bU")) (& "&") (number_literal "0xfffffff0")) () ")")))) (; ";")) (expression_statement "puVar11 = auStack_e0 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar2" (identifier "puVar11") (= "=") (binary_expression "auStack_e0 + iVar2" (identifier "auStack_e0") (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 8)" (* "*") (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)apuStack_f4 + iVar2 + 8)" (( "(") (binary_expression "(int)apuStack_f4 + iVar2 + 8" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_f4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "8")) () ")")))) (= "=") (binary_expression "auStack_e0 + iVar2" (identifier "auStack_e0") (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" (* "*") (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)apuStack_f4 + iVar2 + 4)" (( "(") (binary_expression "(int)apuStack_f4 + iVar2 + 4" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_f4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "4")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2)" (* "*") (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)apuStack_f4 + iVar2)" (( "(") (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_f4")) (+ "+") (identifier "iVar2")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)((int)&iStack_f8 + iVar2)" (* "*") (cast_expression "(undefined4 *)((int)&iStack_f8 + iVar2)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&iStack_f8 + iVar2)" (( "(") (binary_expression "(int)&iStack_f8 + iVar2" (cast_expression "(int)&iStack_f8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&iStack_f8" (& "&") (identifier "iStack_f8"))) (+ "+") (identifier "iVar2")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" (* "*") (cast_expression "(undefined4 *)(puVar17 + 0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4)" (* "*") (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2 + 4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)apuStack_100 + iVar2 + 4)" (( "(") (binary_expression "(int)apuStack_100 + iVar2 + 4" (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_100")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "4")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2)" (* "*") (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)apuStack_100 + iVar2)" (( "(") (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_100")) (+ "+") (identifier "iVar2")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;" (assignment_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3" (pointer_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" (* "*") (cast_expression "(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)auStack_8014 + iVar2 + 0x7f10)" (( "(") (binary_expression "(int)auStack_8014 + iVar2 + 0x7f10" (binary_expression "(int)auStack_8014 + iVar2" (cast_expression "(int)auStack_8014" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "auStack_8014")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "0x7f10")) () ")")))) (= "=") (number_literal "0x47da3")) (; ";")) (expression_statement "__gmpn_toom44_mul();" (call_expression "__gmpn_toom44_mul()" (identifier "__gmpn_toom44_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }" (else "else") (if_statement "if ((int)puVar18 < 0x1c2) {\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }\n          else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }" (if "if") (parenthesized_expression "((int)puVar18 < 0x1c2)" (( "(") (binary_expression "(int)puVar18 < 0x1c2" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (< "<") (number_literal "0x1c2")) () ")")) (compound_statement "{\n            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);\n            puVar11 = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;\n            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;\n            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;\n            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;\n            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;\n            __gmpn_toom6h_mul();\n          }" ({ "{") (expression_statement "iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);" (assignment_expression "iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610)" (identifier "iVar2") (= "=") (unary_expression "-(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610)" (- "-") (parenthesized_expression "(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610)" (( "(") (binary_expression "((uVar9 / 10) * 3 + 3) * 0x10 + 0x610" (binary_expression "((uVar9 / 10) * 3 + 3) * 0x10" (parenthesized_expression "((uVar9 / 10) * 3 + 3)" (( "(") (binary_expression "(uVar9 / 10) * 3 + 3" (binary_expression "(uVar9 / 10) * 3" (parenthesized_expression "(uVar9 / 10)" (( "(") (binary_expression "uVar9 / 10" (identifier "uVar9") (/ "/") (number_literal "10")) () ")")) (* "*") (number_literal "3")) (+ "+") (number_literal "3")) () ")")) (* "*") (number_literal "0x10")) (+ "+") (number_literal "0x610")) () ")")))) (; ";")) (expression_statement "puVar11 = auStack_e0 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar2" (identifier "puVar11") (= "=") (binary_expression "auStack_e0 + iVar2" (identifier "auStack_e0") (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 8)" (* "*") (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)apuStack_f4 + iVar2 + 8)" (( "(") (binary_expression "(int)apuStack_f4 + iVar2 + 8" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_f4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "8")) () ")")))) (= "=") (binary_expression "auStack_e0 + iVar2" (identifier "auStack_e0") (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;" (assignment_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18" (pointer_expression "*(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" (* "*") (cast_expression "(undefined1 **)((int)apuStack_f4 + iVar2 + 4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)apuStack_f4 + iVar2 + 4)" (( "(") (binary_expression "(int)apuStack_f4 + iVar2 + 4" (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_f4")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "4")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)((int)apuStack_f4 + iVar2)" (* "*") (cast_expression "(undefined4 *)((int)apuStack_f4 + iVar2)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)apuStack_f4 + iVar2)" (( "(") (binary_expression "(int)apuStack_f4 + iVar2" (cast_expression "(int)apuStack_f4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_f4")) (+ "+") (identifier "iVar2")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)((int)&iStack_f8 + iVar2)" (* "*") (cast_expression "(undefined4 *)((int)&iStack_f8 + iVar2)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&iStack_f8 + iVar2)" (( "(") (binary_expression "(int)&iStack_f8 + iVar2" (cast_expression "(int)&iStack_f8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&iStack_f8" (& "&") (identifier "iStack_f8"))) (+ "+") (identifier "iVar2")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" (* "*") (cast_expression "(undefined4 *)(puVar17 + 0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2 + 4)" (* "*") (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2 + 4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)apuStack_100 + iVar2 + 4)" (( "(") (binary_expression "(int)apuStack_100 + iVar2 + 4" (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_100")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "4")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;" (assignment_expression "*(undefined1 **)((int)apuStack_100 + iVar2) = puVar19" (pointer_expression "*(undefined1 **)((int)apuStack_100 + iVar2)" (* "*") (cast_expression "(undefined1 **)((int)apuStack_100 + iVar2)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)apuStack_100 + iVar2)" (( "(") (binary_expression "(int)apuStack_100 + iVar2" (cast_expression "(int)apuStack_100" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apuStack_100")) (+ "+") (identifier "iVar2")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;" (assignment_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63" (pointer_expression "*(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" (* "*") (cast_expression "(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)auStack_8014 + iVar2 + 0x7f10)" (( "(") (binary_expression "(int)auStack_8014 + iVar2 + 0x7f10" (binary_expression "(int)auStack_8014 + iVar2" (cast_expression "(int)auStack_8014" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "auStack_8014")) (+ "+") (identifier "iVar2")) (+ "+") (number_literal "0x7f10")) () ")")))) (= "=") (number_literal "0x47e63")) (; ";")) (expression_statement "__gmpn_toom6h_mul();" (call_expression "__gmpn_toom6h_mul()" (identifier "__gmpn_toom6h_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else {\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }" (else "else") (compound_statement "{\n            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;\n            puVar11 = (undefined1 *)(iVar2 + 0x6dc);\n            if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }\n            *(undefined1 **)(puVar15 + -0xc) = puVar11;\n            *(undefined1 **)(puVar15 + -0x10) = puVar18;\n            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar15 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar15 + -0x20) = puVar19;\n            *(undefined4 *)(puVar15 + -0x24) = 0x47511;\n            __gmpn_toom8h_mul();\n            puVar11 = puVar15;\n          }" ({ "{") (expression_statement "iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;" (assignment_expression "iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4" (identifier "iVar2") (= "=") (binary_expression "((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4" (parenthesized_expression "((int)((uVar9 / 0xe + 1) * 0x78) >> 3)" (( "(") (binary_expression "(int)((uVar9 / 0xe + 1) * 0x78) >> 3" (cast_expression "(int)((uVar9 / 0xe + 1) * 0x78)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((uVar9 / 0xe + 1) * 0x78)" (( "(") (binary_expression "(uVar9 / 0xe + 1) * 0x78" (parenthesized_expression "(uVar9 / 0xe + 1)" (( "(") (binary_expression "uVar9 / 0xe + 1" (binary_expression "uVar9 / 0xe" (identifier "uVar9") (/ "/") (number_literal "0xe")) (+ "+") (number_literal "1")) () ")")) (* "*") (number_literal "0x78")) () ")"))) (>> ">>") (number_literal "3")) () ")")) (* "*") (number_literal "4"))) (; ";")) (expression_statement "puVar11 = (undefined1 *)(iVar2 + 0x6dc);" (assignment_expression "puVar11 = (undefined1 *)(iVar2 + 0x6dc)" (identifier "puVar11") (= "=") (cast_expression "(undefined1 *)(iVar2 + 0x6dc)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x6dc)" (( "(") (binary_expression "iVar2 + 0x6dc" (identifier "iVar2") (+ "+") (number_literal "0x6dc")) () ")")))) (; ";")) (if_statement "if (puVar11 < (undefined1 *)0x7f01) {\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }\n            else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }" (if "if") (parenthesized_expression "(puVar11 < (undefined1 *)0x7f01)" (( "(") (binary_expression "puVar11 < (undefined1 *)0x7f01" (identifier "puVar11") (< "<") (cast_expression "(undefined1 *)0x7f01" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x7f01"))) () ")")) (compound_statement "{\n              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);\n              puVar15 = auStack_e0 + iVar2;\n              puVar11 = auStack_e0 + iVar2;\n            }" ({ "{") (expression_statement "iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);" (assignment_expression "iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0)" (identifier "iVar2") (= "=") (unary_expression "-(iVar2 + 0x6f7U & 0xfffffff0)" (- "-") (parenthesized_expression "(iVar2 + 0x6f7U & 0xfffffff0)" (( "(") (binary_expression "iVar2 + 0x6f7U & 0xfffffff0" (binary_expression "iVar2 + 0x6f7U" (identifier "iVar2") (+ "+") (number_literal "0x6f7U")) (& "&") (number_literal "0xfffffff0")) () ")")))) (; ";")) (expression_statement "puVar15 = auStack_e0 + iVar2;" (assignment_expression "puVar15 = auStack_e0 + iVar2" (identifier "puVar15") (= "=") (binary_expression "auStack_e0 + iVar2" (identifier "auStack_e0") (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "puVar11 = auStack_e0 + iVar2;" (assignment_expression "puVar11 = auStack_e0 + iVar2" (identifier "puVar11") (= "=") (binary_expression "auStack_e0 + iVar2" (identifier "auStack_e0") (+ "+") (identifier "iVar2"))) (; ";")) (} "}")) (else_clause "else {\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }" (else "else") (compound_statement "{\n              *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n              apuStack_f4[1] = puVar17 + -0x94;\n              apuStack_f4[0] = (undefined1 *)0x47ef8;\n              apuStack_f4[2] = puVar11;\n              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();\n              puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n            }" ({ "{") (expression_statement "*(undefined1 **)(puVar17 + -0xa4) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa4) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "apuStack_f4[1] = puVar17 + -0x94;" (assignment_expression "apuStack_f4[1] = puVar17 + -0x94" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (binary_expression "puVar17 + -0x94" (identifier "puVar17") (+ "+") (number_literal "-0x94"))) (; ";")) (expression_statement "apuStack_f4[0] = (undefined1 *)0x47ef8;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x47ef8" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (cast_expression "(undefined1 *)0x47ef8" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x47ef8"))) (; ";")) (expression_statement "apuStack_f4[2] = puVar11;" (assignment_expression "apuStack_f4[2] = puVar11" (subscript_expression "apuStack_f4[2]" (identifier "apuStack_f4") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "puVar11")) (; ";")) (expression_statement "puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();" (assignment_expression "puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc()" (identifier "puVar11") (= "=") (cast_expression "(undefined1 *)__gmp_tmp_reentrant_alloc()" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "__gmp_tmp_reentrant_alloc()" (identifier "__gmp_tmp_reentrant_alloc") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "puVar12 = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "puVar12 = *(undefined1 **)(puVar17 + -0xa4)" (identifier "puVar12") (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (} "}")))) (expression_statement "*(undefined1 **)(puVar15 + -0xc) = puVar11;" (assignment_expression "*(undefined1 **)(puVar15 + -0xc) = puVar11" (pointer_expression "*(undefined1 **)(puVar15 + -0xc)" (* "*") (cast_expression "(undefined1 **)(puVar15 + -0xc)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar15 + -0xc)" (( "(") (binary_expression "puVar15 + -0xc" (identifier "puVar15") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "puVar11")) (; ";")) (expression_statement "*(undefined1 **)(puVar15 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar15 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar15 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar15 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar15 + -0x10)" (( "(") (binary_expression "puVar15 + -0x10" (identifier "puVar15") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar15 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar15 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar15 + -0x14)" (( "(") (binary_expression "puVar15 + -0x14" (identifier "puVar15") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar15 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar15 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar15 + -0x18)" (( "(") (binary_expression "puVar15 + -0x18" (identifier "puVar15") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" (* "*") (cast_expression "(undefined4 *)(puVar17 + 0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar15 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar15 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar15 + -0x1c)" (* "*") (cast_expression "(undefined1 **)(puVar15 + -0x1c)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar15 + -0x1c)" (( "(") (binary_expression "puVar15 + -0x1c" (identifier "puVar15") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "*(undefined1 **)(puVar15 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar15 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar15 + -0x20)" (* "*") (cast_expression "(undefined1 **)(puVar15 + -0x20)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar15 + -0x20)" (( "(") (binary_expression "puVar15 + -0x20" (identifier "puVar15") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined4 *)(puVar15 + -0x24) = 0x47511;" (assignment_expression "*(undefined4 *)(puVar15 + -0x24) = 0x47511" (pointer_expression "*(undefined4 *)(puVar15 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar15 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar15 + -0x24)" (( "(") (binary_expression "puVar15 + -0x24" (identifier "puVar15") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x47511")) (; ";")) (expression_statement "__gmpn_toom8h_mul();" (call_expression "__gmpn_toom8h_mul()" (identifier "__gmpn_toom8h_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar11 = puVar15;" (assignment_expression "puVar11 = puVar15" (identifier "puVar11") (= "=") (identifier "puVar15")) (; ";")) (} "}")))))) (if_statement "if (*(int *)(puVar17 + -0x94) != 0) {\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }" (if "if") (parenthesized_expression "(*(int *)(puVar17 + -0x94) != 0)" (( "(") (binary_expression "*(int *)(puVar17 + -0x94) != 0" (pointer_expression "*(int *)(puVar17 + -0x94)" (* "*") (cast_expression "(int *)(puVar17 + -0x94)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x94)" (( "(") (binary_expression "puVar17 + -0x94" (identifier "puVar17") (+ "+") (number_literal "-0x94")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;\n            __gmp_tmp_reentrant_free();\n          }" ({ "{") (expression_statement "*(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);" (assignment_expression "*(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94)" (pointer_expression "*(int *)(puVar11 + -0x10)" (* "*") (cast_expression "(int *)(puVar11 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "*(int *)(puVar17 + -0x94)" (* "*") (cast_expression "(int *)(puVar17 + -0x94)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x94)" (( "(") (binary_expression "puVar17 + -0x94" (identifier "puVar17") (+ "+") (number_literal "-0x94")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x4752b;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x4752b" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x4752b")) (; ";")) (expression_statement "__gmp_tmp_reentrant_free();" (call_expression "__gmp_tmp_reentrant_free()" (identifier "__gmp_tmp_reentrant_free") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (goto_statement "goto LAB_000471aa;" (goto "goto") (statement_identifier "LAB_000471aa") (; ";")) (} "}"))) (} "}"))) (expression_statement "*(undefined4 *)(puVar17 + -0x94) = 0;" (assignment_expression "*(undefined4 *)(puVar17 + -0x94) = 0" (pointer_expression "*(undefined4 *)(puVar17 + -0x94)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x94)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x94)" (( "(") (binary_expression "puVar17 + -0x94" (identifier "puVar17") (+ "+") (number_literal "-0x94")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);" (assignment_expression "puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10)" (identifier "puVar11") (= "=") (cast_expression "(undefined1 *)((int)(puVar18 + 8) * 0x10)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)(puVar18 + 8) * 0x10)" (( "(") (binary_expression "(int)(puVar18 + 8) * 0x10" (cast_expression "(int)(puVar18 + 8)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(puVar18 + 8)" (( "(") (binary_expression "puVar18 + 8" (identifier "puVar18") (+ "+") (number_literal "8")) () ")"))) (* "*") (number_literal "0x10")) () ")")))) (; ";")) (if_statement "if (puVar11 < (undefined1 *)0x7f01) {\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }\n      else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }" (if "if") (parenthesized_expression "(puVar11 < (undefined1 *)0x7f01)" (( "(") (binary_expression "puVar11 < (undefined1 *)0x7f01" (identifier "puVar11") (< "<") (cast_expression "(undefined1 *)0x7f01" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x7f01"))) () ")")) (compound_statement "{\n        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);\n        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);\n      }" ({ "{") (expression_statement "*(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);" (assignment_expression "*(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10)" (pointer_expression "*(undefined1 **)(puVar17 + -0xb4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xb4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")")))) (= "=") (binary_expression "auStack_e0 + -(int)(puVar11 + 0x10)" (identifier "auStack_e0") (+ "+") (unary_expression "-(int)(puVar11 + 0x10)" (- "-") (cast_expression "(int)(puVar11 + 0x10)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(puVar11 + 0x10)" (( "(") (binary_expression "puVar11 + 0x10" (identifier "puVar11") (+ "+") (number_literal "0x10")) () ")")))))) (; ";")) (expression_statement "puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);" (assignment_expression "puVar11 = auStack_e0 + -(int)(puVar11 + 0x10)" (identifier "puVar11") (= "=") (binary_expression "auStack_e0 + -(int)(puVar11 + 0x10)" (identifier "auStack_e0") (+ "+") (unary_expression "-(int)(puVar11 + 0x10)" (- "-") (cast_expression "(int)(puVar11 + 0x10)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(puVar11 + 0x10)" (( "(") (binary_expression "puVar11 + 0x10" (identifier "puVar11") (+ "+") (number_literal "0x10")) () ")")))))) (; ";")) (} "}")) (else_clause "else {\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }" (else "else") (compound_statement "{\n        *(undefined1 **)(puVar17 + -0xa4) = puVar12;\n        apuStack_f4[1] = puVar17 + -0x94;\n        apuStack_f4[0] = (undefined1 *)0x47de3;\n        apuStack_f4[2] = puVar11;\n        uVar10 = __gmp_tmp_reentrant_alloc();\n        puVar12 = *(undefined1 **)(puVar17 + -0xa4);\n        *(undefined4 *)(puVar17 + -0xb4) = uVar10;\n        puVar11 = auStack_e0;\n      }" ({ "{") (expression_statement "*(undefined1 **)(puVar17 + -0xa4) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa4) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "apuStack_f4[1] = puVar17 + -0x94;" (assignment_expression "apuStack_f4[1] = puVar17 + -0x94" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (binary_expression "puVar17 + -0x94" (identifier "puVar17") (+ "+") (number_literal "-0x94"))) (; ";")) (expression_statement "apuStack_f4[0] = (undefined1 *)0x47de3;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x47de3" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (cast_expression "(undefined1 *)0x47de3" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x47de3"))) (; ";")) (expression_statement "apuStack_f4[2] = puVar11;" (assignment_expression "apuStack_f4[2] = puVar11" (subscript_expression "apuStack_f4[2]" (identifier "apuStack_f4") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "puVar11")) (; ";")) (expression_statement "uVar10 = __gmp_tmp_reentrant_alloc();" (assignment_expression "uVar10 = __gmp_tmp_reentrant_alloc()" (identifier "uVar10") (= "=") (call_expression "__gmp_tmp_reentrant_alloc()" (identifier "__gmp_tmp_reentrant_alloc") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "puVar12 = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "puVar12 = *(undefined1 **)(puVar17 + -0xa4)" (identifier "puVar12") (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0xb4) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xb4) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")")))) (= "=") (identifier "uVar10")) (; ";")) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" (identifier "puVar11") (= "=") (identifier "auStack_e0")) (; ";")) (} "}")))) (expression_statement "*(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;" (assignment_expression "*(int *)(puVar17 + -0xb8) = (int)puVar18 * 5" (pointer_expression "*(int *)(puVar17 + -0xb8)" (* "*") (cast_expression "(int *)(puVar17 + -0xb8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb8)" (( "(") (binary_expression "puVar17 + -0xb8" (identifier "puVar17") (+ "+") (number_literal "-0xb8")) () ")")))) (= "=") (binary_expression "(int)puVar18 * 5" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "5"))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;" (assignment_expression "*(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2" (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + 0x10) * 2" (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")")))) (* "*") (number_literal "2"))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xac) = (int)puVar18 * 7;" (assignment_expression "*(int *)(puVar17 + -0xac) = (int)puVar18 * 7" (pointer_expression "*(int *)(puVar17 + -0xac)" (* "*") (cast_expression "(int *)(puVar17 + -0xac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")")))) (= "=") (binary_expression "(int)puVar18 * 7" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "7"))) (; ";")) (if_statement "if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }\n      else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }" (if "if") (parenthesized_expression "(SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0)" (( "(") (binary_expression "SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==\n          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0" (call_expression "SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5)" (identifier "SBORROW4") (argument_list "(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5)" (( "(") (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (, ",") (binary_expression "(int)puVar18 * 5" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "5")) () ")"))) (== "==") (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0" (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * -5" (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (+ "+") (binary_expression "(int)puVar18 * -5" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "-5"))) (< "<") (number_literal "0"))) () ")")) (compound_statement "{\n        uVar9 = ((int)puVar18 * 7 >> 1) * 4;\n        if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }\n        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;\n        if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }\n        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }\n        puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n        *(undefined1 **)(puVar11 + -4) = puVar18;\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n        *(undefined1 **)(puVar11 + -0xc) = puVar19;\n        *(undefined1 **)(puVar11 + -0x10) = puVar19;\n        pcVar3 = (code *)*puVar6;\n        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;\n        uVar10 = (*pcVar3)();\n        iVar2 = *(int *)(puVar17 + -0xa8);\n        *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        iVar14 = *(int *)(puVar17 + -0x9c);\n        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);\n        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;\n        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;\n        pcVar3 = *(code **)(iVar14 + 0x28);\n        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;\n        (*pcVar3)();\n        puVar13 = *(uint **)(puVar17 + -0xa0);\n        uVar8 = *(uint *)(puVar17 + -0xa4);\n        uVar9 = *puVar13;\n        *puVar13 = *puVar13 + uVar8;\n        if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }\n        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);\n      }" ({ "{") (expression_statement "uVar9 = ((int)puVar18 * 7 >> 1) * 4;" (assignment_expression "uVar9 = ((int)puVar18 * 7 >> 1) * 4" (identifier "uVar9") (= "=") (binary_expression "((int)puVar18 * 7 >> 1) * 4" (parenthesized_expression "((int)puVar18 * 7 >> 1)" (( "(") (binary_expression "(int)puVar18 * 7 >> 1" (binary_expression "(int)puVar18 * 7" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "7")) (>> ">>") (number_literal "1")) () ")")) (* "*") (number_literal "4"))) (; ";")) (if_statement "if (uVar9 < 0x7f01) {\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }\n        else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }" (if "if") (parenthesized_expression "(uVar9 < 0x7f01)" (( "(") (binary_expression "uVar9 < 0x7f01" (identifier "uVar9") (< "<") (number_literal "0x7f01")) () ")")) (compound_statement "{\n          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);\n          iVar16 = (int)puVar11 + iVar2;\n          puVar11 = puVar11 + iVar2;\n          *(int *)(puVar17 + -0xa4) = iVar16;\n        }" ({ "{") (expression_statement "iVar2 = -(uVar9 + 0x1b & 0xfffffff0);" (assignment_expression "iVar2 = -(uVar9 + 0x1b & 0xfffffff0)" (identifier "iVar2") (= "=") (unary_expression "-(uVar9 + 0x1b & 0xfffffff0)" (- "-") (parenthesized_expression "(uVar9 + 0x1b & 0xfffffff0)" (( "(") (binary_expression "uVar9 + 0x1b & 0xfffffff0" (binary_expression "uVar9 + 0x1b" (identifier "uVar9") (+ "+") (number_literal "0x1b")) (& "&") (number_literal "0xfffffff0")) () ")")))) (; ";")) (expression_statement "iVar16 = (int)puVar11 + iVar2;" (assignment_expression "iVar16 = (int)puVar11 + iVar2" (identifier "iVar16") (= "=") (binary_expression "(int)puVar11 + iVar2" (cast_expression "(int)puVar11" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar11")) (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "puVar11 = puVar11 + iVar2;" (assignment_expression "puVar11 = puVar11 + iVar2" (identifier "puVar11") (= "=") (binary_expression "puVar11 + iVar2" (identifier "puVar11") (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xa4) = iVar16;" (assignment_expression "*(int *)(puVar17 + -0xa4) = iVar16" (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (= "=") (identifier "iVar16")) (; ";")) (} "}")) (else_clause "else {\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }" (else "else") (compound_statement "{\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(uint *)(puVar11 + -0xc) = uVar9;\n          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;\n          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;\n          uVar10 = __gmp_tmp_reentrant_alloc();\n          puVar12 = *(undefined1 **)(puVar17 + -0xa8);\n          *(undefined4 *)(puVar17 + -0xa4) = uVar10;\n        }" ({ "{") (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "*(uint *)(puVar11 + -0xc) = uVar9;" (assignment_expression "*(uint *)(puVar11 + -0xc) = uVar9" (pointer_expression "*(uint *)(puVar11 + -0xc)" (* "*") (cast_expression "(uint *)(puVar11 + -0xc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0xc)" (( "(") (binary_expression "puVar11 + -0xc" (identifier "puVar11") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "uVar9")) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "puVar17 + -0x94" (identifier "puVar17") (+ "+") (number_literal "-0x94"))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x47eac;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x47eac" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x47eac")) (; ";")) (expression_statement "uVar10 = __gmp_tmp_reentrant_alloc();" (assignment_expression "uVar10 = __gmp_tmp_reentrant_alloc()" (identifier "uVar10") (= "=") (call_expression "__gmp_tmp_reentrant_alloc()" (identifier "__gmp_tmp_reentrant_alloc") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "puVar12 = *(undefined1 **)(puVar17 + -0xa8);" (assignment_expression "puVar12 = *(undefined1 **)(puVar17 + -0xa8)" (identifier "puVar12") (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0xa4) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xa4) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (= "=") (identifier "uVar10")) (; ";")) (} "}")))) (expression_statement "*(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;" (assignment_expression "*(int *)(puVar17 + -0xc4) = (int)puVar18 * 2" (pointer_expression "*(int *)(puVar17 + -0xc4)" (* "*") (cast_expression "(int *)(puVar17 + -0xc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc4)" (( "(") (binary_expression "puVar17 + -0xc4" (identifier "puVar17") (+ "+") (number_literal "-0xc4")) () ")")))) (= "=") (binary_expression "(int)puVar18 * 2" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "2"))) (; ";")) (if_statement "if ((int)puVar18 < 0x6e) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }" (if "if") (parenthesized_expression "((int)puVar18 < 0x6e)" (( "(") (binary_expression "(int)puVar18 < 0x6e" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (< "<") (number_literal "0x6e")) () ")")) (compound_statement "{\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;\n          __gmpn_toom42_mul();\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          iVar2 = (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xc0) = iVar2;\n          puVar19 = puVar19 + iVar2;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }\n        }" ({ "{") (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0xc)" (( "(") (binary_expression "puVar11 + -0xc" (identifier "puVar11") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(int *)(puVar11 + -0x18) = (int)puVar18 * 2;" (assignment_expression "*(int *)(puVar11 + -0x18) = (int)puVar18 * 2" (pointer_expression "*(int *)(puVar11 + -0x18)" (* "*") (cast_expression "(int *)(puVar11 + -0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x18)" (( "(") (binary_expression "puVar11 + -0x18" (identifier "puVar11") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (binary_expression "(int)puVar18 * 2" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "2"))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x1c)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x1c)" (( "(") (binary_expression "puVar11 + -0x1c" (identifier "puVar11") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x20)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x20)" (( "(") (binary_expression "puVar11 + -0x20" (identifier "puVar11") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x475ed;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x475ed" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x24)" (( "(") (binary_expression "puVar11 + -0x24" (identifier "puVar11") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x475ed")) (; ";")) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" (identifier "__gmpn_toom42_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);" (assignment_expression "iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4)" (identifier "iVar14") (= "=") (binary_expression "*(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4)" (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")")))) (- "-") (pointer_expression "*(int *)(puVar17 + -0xc4)" (* "*") (cast_expression "(int *)(puVar17 + -0xc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc4)" (( "(") (binary_expression "puVar17 + -0xc4" (identifier "puVar17") (+ "+") (number_literal "-0xc4")) () ")")))))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xb0) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xb0) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xb0)" (* "*") (cast_expression "(int *)(puVar17 + -0xb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")")))) (= "=") (identifier "iVar14")) (; ";")) (expression_statement "iVar2 = (int)puVar18 * 8;" (assignment_expression "iVar2 = (int)puVar18 * 8" (identifier "iVar2") (= "=") (binary_expression "(int)puVar18 * 8" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "8"))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xc0) = iVar2;" (assignment_expression "*(int *)(puVar17 + -0xc0) = iVar2" (pointer_expression "*(int *)(puVar17 + -0xc0)" (* "*") (cast_expression "(int *)(puVar17 + -0xc0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc0)" (( "(") (binary_expression "puVar17 + -0xc0" (identifier "puVar17") (+ "+") (number_literal "-0xc0")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "puVar19 = puVar19 + iVar2;" (assignment_expression "puVar19 = puVar19 + iVar2" (identifier "puVar19") (= "=") (binary_expression "puVar19 + iVar2" (identifier "puVar19") (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;" (assignment_expression "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2" (pointer_expression "*(int *)(puVar17 + -0xac)" (* "*") (cast_expression "(int *)(puVar17 + -0xac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + -0xa8) + iVar2" (pointer_expression "*(int *)(puVar17 + -0xa8)" (* "*") (cast_expression "(int *)(puVar17 + -0xa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xa8) = (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xa8)" (* "*") (cast_expression "(int *)(puVar17 + -0xa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (= "=") (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "4"))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xbc)" (* "*") (cast_expression "(int *)(puVar17 + -0xbc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xbc)" (( "(") (binary_expression "puVar17 + -0xbc" (identifier "puVar17") (+ "+") (number_literal "-0xbc")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (+ "+") (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "4")))) (; ";")) (expression_statement "iVar2 = *(int *)(puVar17 + -0xb8);" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xb8)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(puVar17 + -0xb8)" (* "*") (cast_expression "(int *)(puVar17 + -0xb8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb8)" (( "(") (binary_expression "puVar17 + -0xb8" (identifier "puVar17") (+ "+") (number_literal "-0xb8")) () ")"))))) (; ";")) (if_statement "if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" (if "if") (parenthesized_expression "(iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0)" (( "(") (binary_expression "iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0" (binary_expression "iVar2 == iVar14 * 2" (identifier "iVar2") (== "==") (binary_expression "iVar14 * 2" (identifier "iVar14") (* "*") (number_literal "2"))) (|| "||") (binary_expression "SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0" (call_expression "SBORROW4(iVar2,iVar14 * 2)" (identifier "SBORROW4") (argument_list "(iVar2,iVar14 * 2)" (( "(") (identifier "iVar2") (, ",") (binary_expression "iVar14 * 2" (identifier "iVar14") (* "*") (number_literal "2")) () ")"))) (!= "!=") (binary_expression "iVar2 + iVar14 * -2 < 0" (binary_expression "iVar2 + iVar14 * -2" (identifier "iVar2") (+ "+") (binary_expression "iVar14 * -2" (identifier "iVar14") (* "*") (number_literal "-2"))) (< "<") (number_literal "0")))) () ")")) (compound_statement "{\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\nLAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);\n          }" ({ "{") (expression_statement "iVar2 = *(int *)(puVar17 + -0xc4);" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xc4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(puVar17 + -0xc4)" (* "*") (cast_expression "(int *)(puVar17 + -0xc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc4)" (( "(") (binary_expression "puVar17 + -0xc4" (identifier "puVar17") (+ "+") (number_literal "-0xc4")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + 0x18) = puVar18;" (assignment_expression "*(undefined1 **)(puVar17 + 0x18) = puVar18" (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" (* "*") (cast_expression "(undefined1 **)(puVar17 + 0x18)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + 0x18)" (( "(") (binary_expression "puVar17 + 0x18" (identifier "puVar17") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;" (assignment_expression "*(int *)(puVar17 + -0xd0) = (int)puVar18 * -4" (pointer_expression "*(int *)(puVar17 + -0xd0)" (* "*") (cast_expression "(int *)(puVar17 + -0xd0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xd0)" (( "(") (binary_expression "puVar17 + -0xd0" (identifier "puVar17") (+ "+") (number_literal "-0xd0")) () ")")))) (= "=") (binary_expression "(int)puVar18 * -4" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "-4"))) (; ";")) (expression_statement "iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;" (assignment_expression "iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2" (identifier "iVar14") (= "=") (binary_expression "(*(int *)(puVar17 + -0xb0) - iVar2) * 2" (parenthesized_expression "(*(int *)(puVar17 + -0xb0) - iVar2)" (( "(") (binary_expression "*(int *)(puVar17 + -0xb0) - iVar2" (pointer_expression "*(int *)(puVar17 + -0xb0)" (* "*") (cast_expression "(int *)(puVar17 + -0xb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")")))) (- "-") (identifier "iVar2")) () ")")) (* "*") (number_literal "2"))) (; ";")) (do_statement "do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);" (do "do") (compound_statement "{\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;\n              __gmpn_toom42_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            }" ({ "{") (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0xc)" (( "(") (binary_expression "puVar11 + -0xc" (identifier "puVar11") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);" (assignment_expression "*(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18)" (pointer_expression "*(undefined4 *)(puVar11 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + 0x18)" (* "*") (cast_expression "(undefined4 *)(puVar17 + 0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x18)" (( "(") (binary_expression "puVar17 + 0x18" (identifier "puVar17") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(int *)(puVar11 + -0x18) = iVar2;" (assignment_expression "*(int *)(puVar11 + -0x18) = iVar2" (pointer_expression "*(int *)(puVar11 + -0x18)" (* "*") (cast_expression "(int *)(puVar11 + -0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x18)" (( "(") (binary_expression "puVar11 + -0x18" (identifier "puVar11") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(puVar11 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x1c)" (( "(") (binary_expression "puVar11 + -0x1c" (identifier "puVar11") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xac)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x20)" (( "(") (binary_expression "puVar11 + -0x20" (identifier "puVar11") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xcc) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xcc) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xcc)" (* "*") (cast_expression "(int *)(puVar17 + -0xcc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xcc)" (( "(") (binary_expression "puVar17 + -0xcc" (identifier "puVar17") (+ "+") (number_literal "-0xcc")) () ")")))) (= "=") (identifier "iVar14")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x4769a;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x4769a" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x24)" (( "(") (binary_expression "puVar11 + -0x24" (identifier "puVar11") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x4769a")) (; ";")) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" (identifier "__gmpn_toom42_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);" (assignment_expression "*(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18)" (pointer_expression "*(undefined4 *)(puVar11 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -4)" (( "(") (binary_expression "puVar11 + -4" (identifier "puVar11") (+ "+") (number_literal "-4")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + 0x18)" (* "*") (cast_expression "(undefined4 *)(puVar17 + 0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x18)" (( "(") (binary_expression "puVar17 + 0x18" (identifier "puVar17") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (expression_statement "puVar6 = *(undefined4 **)(puVar17 + -0x9c);" (assignment_expression "puVar6 = *(undefined4 **)(puVar17 + -0x9c)" (identifier "puVar6") (= "=") (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" (* "*") (cast_expression "(undefined4 **)(puVar17 + -0x9c)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")"))))) (; ";")) (expression_statement "iVar14 = *(int *)(puVar17 + -0xc0);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xc0)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(puVar17 + -0xc0)" (* "*") (cast_expression "(int *)(puVar17 + -0xc0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc0)" (( "(") (binary_expression "puVar17 + -0xc0" (identifier "puVar17") (+ "+") (number_literal "-0xc0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -8)" (( "(") (binary_expression "puVar11 + -8" (identifier "puVar11") (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0xc) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0xc) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0xc)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0xc)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0xc)" (( "(") (binary_expression "puVar11 + -0xc" (identifier "puVar11") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;" (assignment_expression "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xac)" (* "*") (cast_expression "(int *)(puVar17 + -0xac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + -0xac) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xac)" (* "*") (cast_expression "(int *)(puVar17 + -0xac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")")))) (+ "+") (identifier "iVar14"))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;" (assignment_expression "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2" (pointer_expression "*(int *)(puVar17 + -0xb0)" (* "*") (cast_expression "(int *)(puVar17 + -0xb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + -0xb0) - iVar2" (pointer_expression "*(int *)(puVar17 + -0xb0)" (* "*") (cast_expression "(int *)(puVar17 + -0xb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")")))) (- "-") (identifier "iVar2"))) (; ";")) (expression_statement "pcVar3 = (code *)*puVar6;" (assignment_expression "pcVar3 = (code *)*puVar6" (identifier "pcVar3") (= "=") (cast_expression "(code *)*puVar6" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar6" (* "*") (identifier "puVar6")))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x476c2;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x476c2" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x476c2")) (; ";")) (expression_statement "uVar10 = (*pcVar3)();" (assignment_expression "uVar10 = (*pcVar3)()" (identifier "uVar10") (= "=") (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar14 = *(int *)(puVar17 + -0xa8);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xa8)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(puVar17 + -0xa8)" (* "*") (cast_expression "(int *)(puVar17 + -0xa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -200) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -200) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -200)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -200)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -200)" (( "(") (binary_expression "puVar17 + -200" (identifier "puVar17") (+ "+") (number_literal "-200")) () ")")))) (= "=") (identifier "uVar10")) (; ";")) (expression_statement "iVar4 = *(int *)(puVar17 + -0x9c);" (assignment_expression "iVar4 = *(int *)(puVar17 + -0x9c)" (identifier "iVar4") (= "=") (pointer_expression "*(int *)(puVar17 + -0x9c)" (* "*") (cast_expression "(int *)(puVar17 + -0x9c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")"))))) (; ";")) (expression_statement "*(int *)(puVar11 + -8) = iVar2;" (assignment_expression "*(int *)(puVar11 + -8) = iVar2" (pointer_expression "*(int *)(puVar11 + -8)" (* "*") (cast_expression "(int *)(puVar11 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -8)" (( "(") (binary_expression "puVar11 + -8" (identifier "puVar11") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;" (assignment_expression "*(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14" (pointer_expression "*(undefined1 **)(puVar17 + -0xc4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xc4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xc4)" (( "(") (binary_expression "puVar17 + -0xc4" (identifier "puVar17") (+ "+") (number_literal "-0xc4")) () ")")))) (= "=") (binary_expression "puVar19 + iVar14" (identifier "puVar19") (+ "+") (identifier "iVar14"))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0xc)" (( "(") (binary_expression "puVar11 + -0xc" (identifier "puVar11") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xbc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xbc)" (( "(") (binary_expression "puVar17 + -0xbc" (identifier "puVar17") (+ "+") (number_literal "-0xbc")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "puVar19 + iVar14" (identifier "puVar19") (+ "+") (identifier "iVar14"))) (; ";")) (expression_statement "pcVar3 = *(code **)(iVar4 + 0x28);" (assignment_expression "pcVar3 = *(code **)(iVar4 + 0x28)" (identifier "pcVar3") (= "=") (pointer_expression "*(code **)(iVar4 + 0x28)" (* "*") (cast_expression "(code **)(iVar4 + 0x28)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar4 + 0x28)" (( "(") (binary_expression "iVar4 + 0x28" (identifier "iVar4") (+ "+") (number_literal "0x28")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x476eb;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x476eb" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x476eb")) (; ";")) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar13 = *(uint **)(puVar17 + -0xc4);" (assignment_expression "puVar13 = *(uint **)(puVar17 + -0xc4)" (identifier "puVar13") (= "=") (pointer_expression "*(uint **)(puVar17 + -0xc4)" (* "*") (cast_expression "(uint **)(puVar17 + -0xc4)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xc4)" (( "(") (binary_expression "puVar17 + -0xc4" (identifier "puVar17") (+ "+") (number_literal "-0xc4")) () ")"))))) (; ";")) (expression_statement "uVar8 = *(uint *)(puVar17 + -200);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -200)" (identifier "uVar8") (= "=") (pointer_expression "*(uint *)(puVar17 + -200)" (* "*") (cast_expression "(uint *)(puVar17 + -200)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -200)" (( "(") (binary_expression "puVar17 + -200" (identifier "puVar17") (+ "+") (number_literal "-200")) () ")"))))) (; ";")) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" (identifier "uVar9") (= "=") (pointer_expression "*puVar13" (* "*") (identifier "puVar13"))) (; ";")) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (= "=") (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (+ "+") (identifier "uVar8"))) (; ";")) (if_statement "if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" (if "if") (parenthesized_expression "(CARRY4(uVar9,uVar8))" (( "(") (call_expression "CARRY4(uVar9,uVar8)" (identifier "CARRY4") (argument_list "(uVar9,uVar8)" (( "(") (identifier "uVar9") (, ",") (identifier "uVar8") () ")"))) () ")")) (compound_statement "{\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" ({ "{") (do_statement "do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);" (do "do") (compound_statement "{\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                }" ({ "{") (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" (identifier "puVar1") (= "=") (binary_expression "puVar13 + 1" (identifier "puVar13") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" (identifier "uVar9") (= "=") (pointer_expression "*puVar1" (* "*") (identifier "puVar1"))) (; ";")) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (= "=") (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" (identifier "puVar13") (= "=") (binary_expression "puVar13 + 1" (identifier "puVar13") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(0xfffffffe < uVar9)" (( "(") (binary_expression "0xfffffffe < uVar9" (number_literal "0xfffffffe") (< "<") (identifier "uVar9")) () ")")) (; ";")) (} "}"))) (expression_statement "iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0)" (identifier "iVar14") (= "=") (binary_expression "*(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0)" (pointer_expression "*(int *)(puVar17 + -0xcc)" (* "*") (cast_expression "(int *)(puVar17 + -0xcc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xcc)" (( "(") (binary_expression "puVar17 + -0xcc" (identifier "puVar17") (+ "+") (number_literal "-0xcc")) () ")")))) (+ "+") (pointer_expression "*(int *)(puVar17 + -0xd0)" (* "*") (cast_expression "(int *)(puVar17 + -0xd0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xd0)" (( "(") (binary_expression "puVar17 + -0xd0" (identifier "puVar17") (+ "+") (number_literal "-0xd0")) () ")")))))) (; ";")) (expression_statement "puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);" (assignment_expression "puVar19 = puVar19 + *(int *)(puVar17 + -0xc0)" (identifier "puVar19") (= "=") (binary_expression "puVar19 + *(int *)(puVar17 + -0xc0)" (identifier "puVar19") (+ "+") (pointer_expression "*(int *)(puVar17 + -0xc0)" (* "*") (cast_expression "(int *)(puVar17 + -0xc0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc0)" (( "(") (binary_expression "puVar17 + -0xc0" (identifier "puVar17") (+ "+") (number_literal "-0xc0")) () ")")))))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14)" (( "(") (binary_expression "*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xb8)" (* "*") (cast_expression "(int *)(puVar17 + -0xb8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb8)" (( "(") (binary_expression "puVar17 + -0xb8" (identifier "puVar17") (+ "+") (number_literal "-0xb8")) () ")")))) (<= "<=") (binary_expression "*(int *)(puVar17 + -0xa8) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xa8)" (* "*") (cast_expression "(int *)(puVar17 + -0xa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (+ "+") (identifier "iVar14"))) () ")")) (; ";")) (labeled_statement "LAB_0004772d:\n            puVar18 = *(undefined1 **)(puVar17 + 0x18);" (statement_identifier "LAB_0004772d") (: ":") (expression_statement "puVar18 = *(undefined1 **)(puVar17 + 0x18);" (assignment_expression "puVar18 = *(undefined1 **)(puVar17 + 0x18)" (identifier "puVar18") (= "=") (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" (* "*") (cast_expression "(undefined1 **)(puVar17 + 0x18)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + 0x18)" (( "(") (binary_expression "puVar17 + 0x18" (identifier "puVar17") (+ "+") (number_literal "0x18")) () ")"))))) (; ";"))) (} "}"))) (} "}")) (else_clause "else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }" (else "else") (compound_statement "{\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;\n          __gmpn_toom63_mul();\n          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;\n          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);\n          *(int *)(puVar17 + -0xb0) = iVar14;\n          puVar19 = puVar19 + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;\n          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;\n          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;\n          iVar2 = *(int *)(puVar17 + -0xb8);\n          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }\n        }" ({ "{") (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0xc)" (( "(") (binary_expression "puVar11 + -0xc" (identifier "puVar11") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x18)" (( "(") (binary_expression "puVar11 + -0x18" (identifier "puVar11") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xc4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xc4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc4)" (( "(") (binary_expression "puVar17 + -0xc4" (identifier "puVar17") (+ "+") (number_literal "-0xc4")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x1c)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x1c)" (( "(") (binary_expression "puVar11 + -0x1c" (identifier "puVar11") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x20)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x20)" (( "(") (binary_expression "puVar11 + -0x20" (identifier "puVar11") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47adb;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47adb" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x24)" (( "(") (binary_expression "puVar11 + -0x24" (identifier "puVar11") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x47adb")) (; ";")) (expression_statement "__gmpn_toom63_mul();" (call_expression "__gmpn_toom63_mul()" (identifier "__gmpn_toom63_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;" (assignment_expression "*(int *)(puVar17 + -0xc0) = (int)puVar18 * 8" (pointer_expression "*(int *)(puVar17 + -0xc0)" (* "*") (cast_expression "(int *)(puVar17 + -0xc0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc0)" (( "(") (binary_expression "puVar17 + -0xc0" (identifier "puVar17") (+ "+") (number_literal "-0xc0")) () ")")))) (= "=") (binary_expression "(int)puVar18 * 8" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "8"))) (; ";")) (expression_statement "iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);" (assignment_expression "iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4)" (identifier "iVar14") (= "=") (binary_expression "*(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4)" (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")")))) (- "-") (pointer_expression "*(int *)(puVar17 + -0xc4)" (* "*") (cast_expression "(int *)(puVar17 + -0xc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc4)" (( "(") (binary_expression "puVar17 + -0xc4" (identifier "puVar17") (+ "+") (number_literal "-0xc4")) () ")")))))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xb0) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xb0) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xb0)" (* "*") (cast_expression "(int *)(puVar17 + -0xb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")")))) (= "=") (identifier "iVar14")) (; ";")) (expression_statement "puVar19 = puVar19 + (int)puVar18 * 8;" (assignment_expression "puVar19 = puVar19 + (int)puVar18 * 8" (identifier "puVar19") (= "=") (binary_expression "puVar19 + (int)puVar18 * 8" (identifier "puVar19") (+ "+") (binary_expression "(int)puVar18 * 8" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "8")))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;" (assignment_expression "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8" (pointer_expression "*(int *)(puVar17 + -0xac)" (* "*") (cast_expression "(int *)(puVar17 + -0xac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + -0xa8) + (int)puVar18 * 8" (pointer_expression "*(int *)(puVar17 + -0xa8)" (* "*") (cast_expression "(int *)(puVar17 + -0xa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (+ "+") (binary_expression "(int)puVar18 * 8" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "8")))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xa8) = (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xa8)" (* "*") (cast_expression "(int *)(puVar17 + -0xa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (= "=") (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "4"))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xbc)" (* "*") (cast_expression "(int *)(puVar17 + -0xbc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xbc)" (( "(") (binary_expression "puVar17 + -0xbc" (identifier "puVar17") (+ "+") (number_literal "-0xbc")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (+ "+") (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "4")))) (; ";")) (expression_statement "iVar2 = *(int *)(puVar17 + -0xb8);" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xb8)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(puVar17 + -0xb8)" (* "*") (cast_expression "(int *)(puVar17 + -0xb8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb8)" (( "(") (binary_expression "puVar17 + -0xb8" (identifier "puVar17") (+ "+") (number_literal "-0xb8")) () ")"))))) (; ";")) (if_statement "if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }" (if "if") (parenthesized_expression "(iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0)" (( "(") (binary_expression "iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0" (binary_expression "iVar2 == iVar14 * 2" (identifier "iVar2") (== "==") (binary_expression "iVar14 * 2" (identifier "iVar14") (* "*") (number_literal "2"))) (|| "||") (binary_expression "SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0" (call_expression "SBORROW4(iVar2,iVar14 * 2)" (identifier "SBORROW4") (argument_list "(iVar2,iVar14 * 2)" (( "(") (identifier "iVar2") (, ",") (binary_expression "iVar14 * 2" (identifier "iVar14") (* "*") (number_literal "2")) () ")"))) (!= "!=") (binary_expression "iVar2 + iVar14 * -2 < 0" (binary_expression "iVar2 + iVar14 * -2" (identifier "iVar2") (+ "+") (binary_expression "iVar14 * -2" (identifier "iVar14") (* "*") (number_literal "-2"))) (< "<") (number_literal "0")))) () ")")) (compound_statement "{\n            iVar2 = *(int *)(puVar17 + -0xc4);\n            *(undefined1 **)(puVar17 + 0x18) = puVar18;\n            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;\n            iVar14 = (iVar14 - iVar2) * 2;\n            do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);\n            goto LAB_0004772d;\n          }" ({ "{") (expression_statement "iVar2 = *(int *)(puVar17 + -0xc4);" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xc4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(puVar17 + -0xc4)" (* "*") (cast_expression "(int *)(puVar17 + -0xc4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc4)" (( "(") (binary_expression "puVar17 + -0xc4" (identifier "puVar17") (+ "+") (number_literal "-0xc4")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + 0x18) = puVar18;" (assignment_expression "*(undefined1 **)(puVar17 + 0x18) = puVar18" (pointer_expression "*(undefined1 **)(puVar17 + 0x18)" (* "*") (cast_expression "(undefined1 **)(puVar17 + 0x18)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + 0x18)" (( "(") (binary_expression "puVar17 + 0x18" (identifier "puVar17") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;" (assignment_expression "*(int *)(puVar17 + -0xd0) = (int)puVar18 * -4" (pointer_expression "*(int *)(puVar17 + -0xd0)" (* "*") (cast_expression "(int *)(puVar17 + -0xd0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xd0)" (( "(") (binary_expression "puVar17 + -0xd0" (identifier "puVar17") (+ "+") (number_literal "-0xd0")) () ")")))) (= "=") (binary_expression "(int)puVar18 * -4" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "-4"))) (; ";")) (expression_statement "iVar14 = (iVar14 - iVar2) * 2;" (assignment_expression "iVar14 = (iVar14 - iVar2) * 2" (identifier "iVar14") (= "=") (binary_expression "(iVar14 - iVar2) * 2" (parenthesized_expression "(iVar14 - iVar2)" (( "(") (binary_expression "iVar14 - iVar2" (identifier "iVar14") (- "-") (identifier "iVar2")) () ")")) (* "*") (number_literal "2"))) (; ";")) (do_statement "do {\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);" (do "do") (compound_statement "{\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);\n              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n              *(int *)(puVar11 + -0x18) = iVar2;\n              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n              *(int *)(puVar17 + -0xcc) = iVar14;\n              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;\n              __gmpn_toom63_mul();\n              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);\n              puVar6 = *(undefined4 **)(puVar17 + -0x9c);\n              iVar14 = *(int *)(puVar17 + -0xc0);\n              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);\n              *(undefined1 **)(puVar11 + -0xc) = puVar19;\n              *(undefined1 **)(puVar11 + -0x10) = puVar19;\n              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;\n              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;\n              pcVar3 = (code *)*puVar6;\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;\n              uVar10 = (*pcVar3)();\n              iVar14 = *(int *)(puVar17 + -0xa8);\n              *(undefined4 *)(puVar17 + -200) = uVar10;\n              iVar4 = *(int *)(puVar17 + -0x9c);\n              *(int *)(puVar11 + -8) = iVar2;\n              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;\n              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);\n              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;\n              pcVar3 = *(code **)(iVar4 + 0x28);\n              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;\n              (*pcVar3)();\n              puVar13 = *(uint **)(puVar17 + -0xc4);\n              uVar8 = *(uint *)(puVar17 + -200);\n              uVar9 = *puVar13;\n              *puVar13 = *puVar13 + uVar8;\n              if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }\n              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);\n              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);\n            }" ({ "{") (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0xc)" (( "(") (binary_expression "puVar11 + -0xc" (identifier "puVar11") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);" (assignment_expression "*(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18)" (pointer_expression "*(undefined4 *)(puVar11 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + 0x18)" (* "*") (cast_expression "(undefined4 *)(puVar17 + 0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x18)" (( "(") (binary_expression "puVar17 + 0x18" (identifier "puVar17") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(int *)(puVar11 + -0x18) = iVar2;" (assignment_expression "*(int *)(puVar11 + -0x18) = iVar2" (pointer_expression "*(int *)(puVar11 + -0x18)" (* "*") (cast_expression "(int *)(puVar11 + -0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x18)" (( "(") (binary_expression "puVar11 + -0x18" (identifier "puVar11") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(puVar11 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x1c)" (( "(") (binary_expression "puVar11 + -0x1c" (identifier "puVar11") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xac)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x20)" (( "(") (binary_expression "puVar11 + -0x20" (identifier "puVar11") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xcc) = iVar14;" (assignment_expression "*(int *)(puVar17 + -0xcc) = iVar14" (pointer_expression "*(int *)(puVar17 + -0xcc)" (* "*") (cast_expression "(int *)(puVar17 + -0xcc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xcc)" (( "(") (binary_expression "puVar17 + -0xcc" (identifier "puVar17") (+ "+") (number_literal "-0xcc")) () ")")))) (= "=") (identifier "iVar14")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47b8a;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47b8a" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x24)" (( "(") (binary_expression "puVar11 + -0x24" (identifier "puVar11") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x47b8a")) (; ";")) (expression_statement "__gmpn_toom63_mul();" (call_expression "__gmpn_toom63_mul()" (identifier "__gmpn_toom63_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);" (assignment_expression "*(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18)" (pointer_expression "*(undefined4 *)(puVar11 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -4)" (( "(") (binary_expression "puVar11 + -4" (identifier "puVar11") (+ "+") (number_literal "-4")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + 0x18)" (* "*") (cast_expression "(undefined4 *)(puVar17 + 0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x18)" (( "(") (binary_expression "puVar17 + 0x18" (identifier "puVar17") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (expression_statement "puVar6 = *(undefined4 **)(puVar17 + -0x9c);" (assignment_expression "puVar6 = *(undefined4 **)(puVar17 + -0x9c)" (identifier "puVar6") (= "=") (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" (* "*") (cast_expression "(undefined4 **)(puVar17 + -0x9c)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")"))))) (; ";")) (expression_statement "iVar14 = *(int *)(puVar17 + -0xc0);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xc0)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(puVar17 + -0xc0)" (* "*") (cast_expression "(int *)(puVar17 + -0xc0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc0)" (( "(") (binary_expression "puVar17 + -0xc0" (identifier "puVar17") (+ "+") (number_literal "-0xc0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -8)" (( "(") (binary_expression "puVar11 + -8" (identifier "puVar11") (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0xc) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0xc) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0xc)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0xc)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0xc)" (( "(") (binary_expression "puVar11 + -0xc" (identifier "puVar11") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;" (assignment_expression "*(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xac)" (* "*") (cast_expression "(int *)(puVar17 + -0xac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + -0xac) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xac)" (* "*") (cast_expression "(int *)(puVar17 + -0xac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")")))) (+ "+") (identifier "iVar14"))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;" (assignment_expression "*(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2" (pointer_expression "*(int *)(puVar17 + -0xb0)" (* "*") (cast_expression "(int *)(puVar17 + -0xb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")")))) (= "=") (binary_expression "*(int *)(puVar17 + -0xb0) - iVar2" (pointer_expression "*(int *)(puVar17 + -0xb0)" (* "*") (cast_expression "(int *)(puVar17 + -0xb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")")))) (- "-") (identifier "iVar2"))) (; ";")) (expression_statement "pcVar3 = (code *)*puVar6;" (assignment_expression "pcVar3 = (code *)*puVar6" (identifier "pcVar3") (= "=") (cast_expression "(code *)*puVar6" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar6" (* "*") (identifier "puVar6")))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x47bb2;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x47bb2" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x47bb2")) (; ";")) (expression_statement "uVar10 = (*pcVar3)();" (assignment_expression "uVar10 = (*pcVar3)()" (identifier "uVar10") (= "=") (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar14 = *(int *)(puVar17 + -0xa8);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xa8)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(puVar17 + -0xa8)" (* "*") (cast_expression "(int *)(puVar17 + -0xa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -200) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -200) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -200)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -200)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -200)" (( "(") (binary_expression "puVar17 + -200" (identifier "puVar17") (+ "+") (number_literal "-200")) () ")")))) (= "=") (identifier "uVar10")) (; ";")) (expression_statement "iVar4 = *(int *)(puVar17 + -0x9c);" (assignment_expression "iVar4 = *(int *)(puVar17 + -0x9c)" (identifier "iVar4") (= "=") (pointer_expression "*(int *)(puVar17 + -0x9c)" (* "*") (cast_expression "(int *)(puVar17 + -0x9c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")"))))) (; ";")) (expression_statement "*(int *)(puVar11 + -8) = iVar2;" (assignment_expression "*(int *)(puVar11 + -8) = iVar2" (pointer_expression "*(int *)(puVar11 + -8)" (* "*") (cast_expression "(int *)(puVar11 + -8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -8)" (( "(") (binary_expression "puVar11 + -8" (identifier "puVar11") (+ "+") (number_literal "-8")) () ")")))) (= "=") (identifier "iVar2")) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;" (assignment_expression "*(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14" (pointer_expression "*(undefined1 **)(puVar17 + -0xc4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xc4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xc4)" (( "(") (binary_expression "puVar17 + -0xc4" (identifier "puVar17") (+ "+") (number_literal "-0xc4")) () ")")))) (= "=") (binary_expression "puVar19 + iVar14" (identifier "puVar19") (+ "+") (identifier "iVar14"))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0xc)" (( "(") (binary_expression "puVar11 + -0xc" (identifier "puVar11") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xbc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xbc)" (( "(") (binary_expression "puVar17 + -0xbc" (identifier "puVar17") (+ "+") (number_literal "-0xbc")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "puVar19 + iVar14" (identifier "puVar19") (+ "+") (identifier "iVar14"))) (; ";")) (expression_statement "pcVar3 = *(code **)(iVar4 + 0x28);" (assignment_expression "pcVar3 = *(code **)(iVar4 + 0x28)" (identifier "pcVar3") (= "=") (pointer_expression "*(code **)(iVar4 + 0x28)" (* "*") (cast_expression "(code **)(iVar4 + 0x28)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar4 + 0x28)" (( "(") (binary_expression "iVar4 + 0x28" (identifier "iVar4") (+ "+") (number_literal "0x28")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x47bda;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x47bda" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x47bda")) (; ";")) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar13 = *(uint **)(puVar17 + -0xc4);" (assignment_expression "puVar13 = *(uint **)(puVar17 + -0xc4)" (identifier "puVar13") (= "=") (pointer_expression "*(uint **)(puVar17 + -0xc4)" (* "*") (cast_expression "(uint **)(puVar17 + -0xc4)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xc4)" (( "(") (binary_expression "puVar17 + -0xc4" (identifier "puVar17") (+ "+") (number_literal "-0xc4")) () ")"))))) (; ";")) (expression_statement "uVar8 = *(uint *)(puVar17 + -200);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -200)" (identifier "uVar8") (= "=") (pointer_expression "*(uint *)(puVar17 + -200)" (* "*") (cast_expression "(uint *)(puVar17 + -200)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -200)" (( "(") (binary_expression "puVar17 + -200" (identifier "puVar17") (+ "+") (number_literal "-200")) () ")"))))) (; ";")) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" (identifier "uVar9") (= "=") (pointer_expression "*puVar13" (* "*") (identifier "puVar13"))) (; ";")) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (= "=") (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (+ "+") (identifier "uVar8"))) (; ";")) (if_statement "if (CARRY4(uVar9,uVar8)) {\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" (if "if") (parenthesized_expression "(CARRY4(uVar9,uVar8))" (( "(") (call_expression "CARRY4(uVar9,uVar8)" (identifier "CARRY4") (argument_list "(uVar9,uVar8)" (( "(") (identifier "uVar9") (, ",") (identifier "uVar8") () ")"))) () ")")) (compound_statement "{\n                do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);\n              }" ({ "{") (do_statement "do {\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                } while (0xfffffffe < uVar9);" (do "do") (compound_statement "{\n                  puVar1 = puVar13 + 1;\n                  uVar9 = *puVar1;\n                  *puVar1 = *puVar1 + 1;\n                  puVar13 = puVar13 + 1;\n                }" ({ "{") (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" (identifier "puVar1") (= "=") (binary_expression "puVar13 + 1" (identifier "puVar13") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" (identifier "uVar9") (= "=") (pointer_expression "*puVar1" (* "*") (identifier "puVar1"))) (; ";")) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (= "=") (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" (identifier "puVar13") (= "=") (binary_expression "puVar13 + 1" (identifier "puVar13") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(0xfffffffe < uVar9)" (( "(") (binary_expression "0xfffffffe < uVar9" (number_literal "0xfffffffe") (< "<") (identifier "uVar9")) () ")")) (; ";")) (} "}"))) (expression_statement "iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0)" (identifier "iVar14") (= "=") (binary_expression "*(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0)" (pointer_expression "*(int *)(puVar17 + -0xcc)" (* "*") (cast_expression "(int *)(puVar17 + -0xcc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xcc)" (( "(") (binary_expression "puVar17 + -0xcc" (identifier "puVar17") (+ "+") (number_literal "-0xcc")) () ")")))) (+ "+") (pointer_expression "*(int *)(puVar17 + -0xd0)" (* "*") (cast_expression "(int *)(puVar17 + -0xd0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xd0)" (( "(") (binary_expression "puVar17 + -0xd0" (identifier "puVar17") (+ "+") (number_literal "-0xd0")) () ")")))))) (; ";")) (expression_statement "puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);" (assignment_expression "puVar19 = puVar19 + *(int *)(puVar17 + -0xc0)" (identifier "puVar19") (= "=") (binary_expression "puVar19 + *(int *)(puVar17 + -0xc0)" (identifier "puVar19") (+ "+") (pointer_expression "*(int *)(puVar17 + -0xc0)" (* "*") (cast_expression "(int *)(puVar17 + -0xc0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xc0)" (( "(") (binary_expression "puVar17 + -0xc0" (identifier "puVar17") (+ "+") (number_literal "-0xc0")) () ")")))))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14)" (( "(") (binary_expression "*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xb8)" (* "*") (cast_expression "(int *)(puVar17 + -0xb8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb8)" (( "(") (binary_expression "puVar17 + -0xb8" (identifier "puVar17") (+ "+") (number_literal "-0xb8")) () ")")))) (<= "<=") (binary_expression "*(int *)(puVar17 + -0xa8) + iVar14" (pointer_expression "*(int *)(puVar17 + -0xa8)" (* "*") (cast_expression "(int *)(puVar17 + -0xa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (+ "+") (identifier "iVar14"))) () ")")) (; ";")) (goto_statement "goto LAB_0004772d;" (goto "goto") (statement_identifier "LAB_0004772d") (; ";")) (} "}"))) (} "}")))) (if_statement "if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }\n        else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }" (if "if") (parenthesized_expression "(*(int *)(puVar17 + -0xb0) < (int)puVar18)" (( "(") (binary_expression "*(int *)(puVar17 + -0xb0) < (int)puVar18" (pointer_expression "*(int *)(puVar17 + -0xb0)" (* "*") (cast_expression "(int *)(puVar17 + -0xb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")")))) (< "<") (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18"))) () ")")) (compound_statement "{\n          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined1 **)(puVar11 + -0x18) = puVar18;\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;\n          __gmpn_mul();\n        }" ({ "{") (expression_statement "*(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);" (assignment_expression "*(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0)" (pointer_expression "*(int *)(puVar11 + -0x10)" (* "*") (cast_expression "(int *)(puVar11 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "*(int *)(puVar17 + -0xb0)" (* "*") (cast_expression "(int *)(puVar17 + -0xb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xac)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x18) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x18) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x18)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x18)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x18)" (( "(") (binary_expression "puVar11 + -0x18" (identifier "puVar11") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x1c)" (( "(") (binary_expression "puVar11 + -0x1c" (identifier "puVar11") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x20)" (( "(") (binary_expression "puVar11 + -0x20" (identifier "puVar11") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x4775a;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x4775a" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x24)" (( "(") (binary_expression "puVar11 + -0x24" (identifier "puVar11") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x4775a")) (; ";")) (expression_statement "__gmpn_mul();" (call_expression "__gmpn_mul()" (identifier "__gmpn_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else {\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }" (else "else") (compound_statement "{\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);\n          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);\n          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);\n          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;\n          __gmpn_mul();\n        }" ({ "{") (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x18)" (( "(") (binary_expression "puVar11 + -0x18" (identifier "puVar11") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xb0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);" (assignment_expression "*(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac)" (pointer_expression "*(undefined4 *)(puVar11 + -0x1c)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x1c)" (( "(") (binary_expression "puVar11 + -0x1c" (identifier "puVar11") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xac)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xac)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x20)" (( "(") (binary_expression "puVar11 + -0x20" (identifier "puVar11") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47c49;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47c49" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x24)" (( "(") (binary_expression "puVar11 + -0x24" (identifier "puVar11") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x47c49")) (; ";")) (expression_statement "__gmpn_mul();" (call_expression "__gmpn_mul()" (identifier "__gmpn_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (expression_statement "puVar6 = *(undefined4 **)(puVar17 + -0x9c);" (assignment_expression "puVar6 = *(undefined4 **)(puVar17 + -0x9c)" (identifier "puVar6") (= "=") (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" (* "*") (cast_expression "(undefined4 **)(puVar17 + -0x9c)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -4) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -4) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -4)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -4)" (( "(") (binary_expression "puVar11 + -4" (identifier "puVar11") (+ "+") (number_literal "-4")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);" (assignment_expression "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4)" (pointer_expression "*(undefined4 *)(puVar11 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -8)" (( "(") (binary_expression "puVar11 + -8" (identifier "puVar11") (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0xc) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0xc) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0xc)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0xc)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0xc)" (( "(") (binary_expression "puVar11 + -0xc" (identifier "puVar11") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "pcVar3 = (code *)*puVar6;" (assignment_expression "pcVar3 = (code *)*puVar6" (identifier "pcVar3") (= "=") (cast_expression "(code *)*puVar6" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar6" (* "*") (identifier "puVar6")))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x4776e;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x4776e" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x4776e")) (; ";")) (expression_statement "uVar10 = (*pcVar3)();" (assignment_expression "uVar10 = (*pcVar3)()" (identifier "uVar10") (= "=") (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar2 = *(int *)(puVar17 + -0xa8);" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xa8)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(puVar17 + -0xa8)" (* "*") (cast_expression "(int *)(puVar17 + -0xa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar17 + -0xa4) = uVar10;" (assignment_expression "*(undefined4 *)(puVar17 + -0xa4) = uVar10" (pointer_expression "*(undefined4 *)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (= "=") (identifier "uVar10")) (; ";")) (expression_statement "iVar14 = *(int *)(puVar17 + -0x9c);" (assignment_expression "iVar14 = *(int *)(puVar17 + -0x9c)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(puVar17 + -0x9c)" (* "*") (cast_expression "(int *)(puVar17 + -0x9c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);" (assignment_expression "*(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0)" (pointer_expression "*(undefined4 *)(puVar11 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -8)" (( "(") (binary_expression "puVar11 + -8" (identifier "puVar11") (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xb0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2" (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")")))) (= "=") (binary_expression "puVar19 + iVar2" (identifier "puVar19") (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0xc)" (( "(") (binary_expression "puVar11 + -0xc" (identifier "puVar11") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xbc)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xbc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xbc)" (( "(") (binary_expression "puVar17 + -0xbc" (identifier "puVar17") (+ "+") (number_literal "-0xbc")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (binary_expression "puVar19 + iVar2" (identifier "puVar19") (+ "+") (identifier "iVar2"))) (; ";")) (expression_statement "pcVar3 = *(code **)(iVar14 + 0x28);" (assignment_expression "pcVar3 = *(code **)(iVar14 + 0x28)" (identifier "pcVar3") (= "=") (pointer_expression "*(code **)(iVar14 + 0x28)" (* "*") (cast_expression "(code **)(iVar14 + 0x28)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar14 + 0x28)" (( "(") (binary_expression "iVar14 + 0x28" (identifier "iVar14") (+ "+") (number_literal "0x28")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x4779b;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x4779b" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x4779b")) (; ";")) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar13 = *(uint **)(puVar17 + -0xa0);" (assignment_expression "puVar13 = *(uint **)(puVar17 + -0xa0)" (identifier "puVar13") (= "=") (pointer_expression "*(uint **)(puVar17 + -0xa0)" (* "*") (cast_expression "(uint **)(puVar17 + -0xa0)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "uVar8 = *(uint *)(puVar17 + -0xa4);" (assignment_expression "uVar8 = *(uint *)(puVar17 + -0xa4)" (identifier "uVar8") (= "=") (pointer_expression "*(uint *)(puVar17 + -0xa4)" (* "*") (cast_expression "(uint *)(puVar17 + -0xa4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" (identifier "uVar9") (= "=") (pointer_expression "*puVar13" (* "*") (identifier "puVar13"))) (; ";")) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (= "=") (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (+ "+") (identifier "uVar8"))) (; ";")) (if_statement "if (CARRY4(uVar9,uVar8)) {\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }" (if "if") (parenthesized_expression "(CARRY4(uVar9,uVar8))" (( "(") (call_expression "CARRY4(uVar9,uVar8)" (identifier "CARRY4") (argument_list "(uVar9,uVar8)" (( "(") (identifier "uVar9") (, ",") (identifier "uVar8") () ")"))) () ")")) (compound_statement "{\n          do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);\n        }" ({ "{") (do_statement "do {\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          } while (0xfffffffe < uVar9);" (do "do") (compound_statement "{\n            puVar1 = puVar13 + 1;\n            uVar9 = *puVar1;\n            *puVar1 = *puVar1 + 1;\n            puVar13 = puVar13 + 1;\n          }" ({ "{") (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" (identifier "puVar1") (= "=") (binary_expression "puVar13 + 1" (identifier "puVar13") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" (identifier "uVar9") (= "=") (pointer_expression "*puVar1" (* "*") (identifier "puVar1"))) (; ";")) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (= "=") (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" (identifier "puVar13") (= "=") (binary_expression "puVar13 + 1" (identifier "puVar13") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(0xfffffffe < uVar9)" (( "(") (binary_expression "0xfffffffe < uVar9" (number_literal "0xfffffffe") (< "<") (identifier "uVar9")) () ")")) (; ";")) (} "}"))) (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0)" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (= "=") (binary_expression "puVar18 + *(int *)(puVar17 + -0xb0)" (identifier "puVar18") (+ "+") (pointer_expression "*(int *)(puVar17 + -0xb0)" (* "*") (cast_expression "(int *)(puVar17 + -0xb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb0)" (( "(") (binary_expression "puVar17 + -0xb0" (identifier "puVar17") (+ "+") (number_literal "-0xb0")) () ")")))))) (; ";")) (} "}")) (else_clause "else {\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }" (else "else") (compound_statement "{\n        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;\n        if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }\n      }" ({ "{") (expression_statement "iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;" (assignment_expression "iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2" (identifier "iVar2") (= "=") (binary_expression "(*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2" (parenthesized_expression "(*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10))" (( "(") (binary_expression "*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)" (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (+ "+") (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) () ")")) (* "*") (number_literal "2"))) (; ";")) (if_statement "if (iVar2 < *(int *)(puVar17 + -0xac)) {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }\n        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" (if "if") (parenthesized_expression "(iVar2 < *(int *)(puVar17 + -0xac))" (( "(") (binary_expression "iVar2 < *(int *)(puVar17 + -0xac)" (identifier "iVar2") (< "<") (pointer_expression "*(int *)(puVar17 + -0xac)" (* "*") (cast_expression "(int *)(puVar17 + -0xac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")"))))) () ")")) (compound_statement "{\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;\n          __gmpn_toom33_mul();\n        }" ({ "{") (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0xc)" (( "(") (binary_expression "puVar11 + -0xc" (identifier "puVar11") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x18)" (( "(") (binary_expression "puVar11 + -0x18" (identifier "puVar11") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" (* "*") (cast_expression "(undefined4 *)(puVar17 + 0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x1c)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x1c)" (( "(") (binary_expression "puVar11 + -0x1c" (identifier "puVar11") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x20)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x20)" (( "(") (binary_expression "puVar11 + -0x20" (identifier "puVar11") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47d4a;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47d4a" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x24)" (( "(") (binary_expression "puVar11 + -0x24" (identifier "puVar11") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x47d4a")) (; ";")) (expression_statement "__gmpn_toom33_mul();" (call_expression "__gmpn_toom33_mul()" (identifier "__gmpn_toom33_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" (else "else") (if_statement "if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }\n        else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" (if "if") (parenthesized_expression "(SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0)" (( "(") (binary_expression "SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==\n                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0" (call_expression "SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3)" (identifier "SBORROW4") (argument_list "(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3)" (( "(") (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (, ",") (binary_expression "(int)puVar18 * 3" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "3")) () ")"))) (== "==") (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0" (binary_expression "*(int *)(puVar17 + -0xa4) + (int)puVar18 * -3" (pointer_expression "*(int *)(puVar17 + -0xa4)" (* "*") (cast_expression "(int *)(puVar17 + -0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (+ "+") (binary_expression "(int)puVar18 * -3" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "-3"))) (< "<") (number_literal "0"))) () ")")) (compound_statement "{\n          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }\n        }" ({ "{") (if_statement "if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }\n          else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }" (if "if") (parenthesized_expression "(iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2))" (( "(") (binary_expression "iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)" (identifier "iVar2") (< "<") (cast_expression "(int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(puVar18 + *(int *)(puVar17 + -0xb8) * 2)" (( "(") (binary_expression "puVar18 + *(int *)(puVar17 + -0xb8) * 2" (identifier "puVar18") (+ "+") (binary_expression "*(int *)(puVar17 + -0xb8) * 2" (pointer_expression "*(int *)(puVar17 + -0xb8)" (* "*") (cast_expression "(int *)(puVar17 + -0xb8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb8)" (( "(") (binary_expression "puVar17 + -0xb8" (identifier "puVar17") (+ "+") (number_literal "-0xb8")) () ")")))) (* "*") (number_literal "2"))) () ")")))) () ")")) (compound_statement "{\n            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;\n            __gmpn_toom53_mul();\n          }" ({ "{") (if_statement "if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }\n            else if ((int)puVar18 < 100) goto LAB_00047e74;" (if "if") (parenthesized_expression "(*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac))" (( "(") (binary_expression "*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)" (binary_expression "*(int *)(puVar17 + 0x10) * 4" (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")")))) (* "*") (number_literal "4")) (< "<") (pointer_expression "*(int *)(puVar17 + -0xac)" (* "*") (cast_expression "(int *)(puVar17 + -0xac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")"))))) () ")")) (compound_statement "{\n              if ((int)puVar18 < 0x6e) goto LAB_00047dab;\n            }" ({ "{") (if_statement "if ((int)puVar18 < 0x6e) goto LAB_00047dab;" (if "if") (parenthesized_expression "((int)puVar18 < 0x6e)" (( "(") (binary_expression "(int)puVar18 < 0x6e" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (< "<") (number_literal "0x6e")) () ")")) (goto_statement "goto LAB_00047dab;" (goto "goto") (statement_identifier "LAB_00047dab") (; ";"))) (} "}")) (else_clause "else if ((int)puVar18 < 100) goto LAB_00047e74;" (else "else") (if_statement "if ((int)puVar18 < 100) goto LAB_00047e74;" (if "if") (parenthesized_expression "((int)puVar18 < 100)" (( "(") (binary_expression "(int)puVar18 < 100" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (< "<") (number_literal "100")) () ")")) (goto_statement "goto LAB_00047e74;" (goto "goto") (statement_identifier "LAB_00047e74") (; ";"))))) (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0xc)" (( "(") (binary_expression "puVar11 + -0xc" (identifier "puVar11") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x18)" (( "(") (binary_expression "puVar11 + -0x18" (identifier "puVar11") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" (* "*") (cast_expression "(undefined4 *)(puVar17 + 0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x1c)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x1c)" (( "(") (binary_expression "puVar11 + -0x1c" (identifier "puVar11") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x20)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x20)" (( "(") (binary_expression "puVar11 + -0x20" (identifier "puVar11") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47d26;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47d26" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x24)" (( "(") (binary_expression "puVar11 + -0x24" (identifier "puVar11") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x47d26")) (; ";")) (expression_statement "__gmpn_toom53_mul();" (call_expression "__gmpn_toom53_mul()" (identifier "__gmpn_toom53_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }" (else "else") (if_statement "if ((int)puVar18 < 0x6e) {\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }\n          else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }" (if "if") (parenthesized_expression "((int)puVar18 < 0x6e)" (( "(") (binary_expression "(int)puVar18 < 0x6e" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (< "<") (number_literal "0x6e")) () ")")) (compound_statement "{\nLAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;\n            __gmpn_toom42_mul();\n          }" ({ "{") (labeled_statement "LAB_00047e74:\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (statement_identifier "LAB_00047e74") (: ":") (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0xc)" (( "(") (binary_expression "puVar11 + -0xc" (identifier "puVar11") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")"))))) (; ";"))) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x18)" (( "(") (binary_expression "puVar11 + -0x18" (identifier "puVar11") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" (* "*") (cast_expression "(undefined4 *)(puVar17 + 0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x1c)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x1c)" (( "(") (binary_expression "puVar11 + -0x1c" (identifier "puVar11") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x20)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x20)" (( "(") (binary_expression "puVar11 + -0x20" (identifier "puVar11") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47e8e;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47e8e" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x24)" (( "(") (binary_expression "puVar11 + -0x24" (identifier "puVar11") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x47e8e")) (; ";")) (expression_statement "__gmpn_toom42_mul();" (call_expression "__gmpn_toom42_mul()" (identifier "__gmpn_toom42_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else {\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }" (else "else") (compound_statement "{\n            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n            *(undefined1 **)(puVar11 + -0x10) = puVar18;\n            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n            *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n            *(undefined1 **)(puVar11 + -0x20) = puVar19;\n            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;\n            __gmpn_toom63_mul();\n          }" ({ "{") (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0xc)" (( "(") (binary_expression "puVar11 + -0xc" (identifier "puVar11") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x18)" (( "(") (binary_expression "puVar11 + -0x18" (identifier "puVar11") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" (* "*") (cast_expression "(undefined4 *)(puVar17 + 0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x1c)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x1c)" (( "(") (binary_expression "puVar11 + -0x1c" (identifier "puVar11") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x20)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x20)" (( "(") (binary_expression "puVar11 + -0x20" (identifier "puVar11") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47e27;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47e27" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x24)" (( "(") (binary_expression "puVar11 + -0x24" (identifier "puVar11") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x47e27")) (; ";")) (expression_statement "__gmpn_toom63_mul();" (call_expression "__gmpn_toom63_mul()" (identifier "__gmpn_toom63_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))))) (} "}")) (else_clause "else if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" (else "else") (if_statement "if ((int)puVar18 < 100) {\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }\n        else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" (if "if") (parenthesized_expression "((int)puVar18 < 100)" (( "(") (binary_expression "(int)puVar18 < 100" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (< "<") (number_literal "100")) () ")")) (compound_statement "{\nLAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;\n          __gmpn_toom32_mul();\n        }" ({ "{") (labeled_statement "LAB_00047dab:\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (statement_identifier "LAB_00047dab") (: ":") (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0xc)" (( "(") (binary_expression "puVar11 + -0xc" (identifier "puVar11") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")"))))) (; ";"))) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x18)" (( "(") (binary_expression "puVar11 + -0x18" (identifier "puVar11") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" (* "*") (cast_expression "(undefined4 *)(puVar17 + 0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x1c)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x1c)" (( "(") (binary_expression "puVar11 + -0x1c" (identifier "puVar11") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x20)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x20)" (( "(") (binary_expression "puVar11 + -0x20" (identifier "puVar11") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47dc5;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47dc5" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x24)" (( "(") (binary_expression "puVar11 + -0x24" (identifier "puVar11") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x47dc5")) (; ";")) (expression_statement "__gmpn_toom32_mul();" (call_expression "__gmpn_toom32_mul()" (identifier "__gmpn_toom32_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else {\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" (else "else") (compound_statement "{\n          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);\n          *(undefined1 **)(puVar11 + -0x10) = puVar18;\n          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);\n          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);\n          *(undefined1 **)(puVar11 + -0x1c) = puVar12;\n          *(undefined1 **)(puVar11 + -0x20) = puVar19;\n          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;\n          __gmpn_toom43_mul();\n        }" ({ "{") (expression_statement "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4)" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0xc)" (( "(") (binary_expression "puVar11 + -0xc" (identifier "puVar11") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xb4)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xb4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xb4)" (( "(") (binary_expression "puVar17 + -0xb4" (identifier "puVar17") (+ "+") (number_literal "-0xb4")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x10) = puVar18;" (assignment_expression "*(undefined1 **)(puVar11 + -0x10) = puVar18" (pointer_expression "*(undefined1 **)(puVar11 + -0x10)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x10)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);" (assignment_expression "*(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10)" (pointer_expression "*(undefined4 *)(puVar11 + -0x18)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x18)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x18)" (( "(") (binary_expression "puVar11 + -0x18" (identifier "puVar11") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + 0x10)" (* "*") (cast_expression "(undefined4 *)(puVar17 + 0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x1c) = puVar12;" (assignment_expression "*(undefined1 **)(puVar11 + -0x1c) = puVar12" (pointer_expression "*(undefined1 **)(puVar11 + -0x1c)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x1c)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x1c)" (( "(") (binary_expression "puVar11 + -0x1c" (identifier "puVar11") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "*(undefined1 **)(puVar11 + -0x20) = puVar19;" (assignment_expression "*(undefined1 **)(puVar11 + -0x20) = puVar19" (pointer_expression "*(undefined1 **)(puVar11 + -0x20)" (* "*") (cast_expression "(undefined1 **)(puVar11 + -0x20)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x20)" (( "(") (binary_expression "puVar11 + -0x20" (identifier "puVar11") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x47a39;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x47a39" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x24)" (( "(") (binary_expression "puVar11 + -0x24" (identifier "puVar11") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x47a39")) (; ";")) (expression_statement "__gmpn_toom43_mul();" (call_expression "__gmpn_toom43_mul()" (identifier "__gmpn_toom43_mul") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))))))) (} "}")))) (if_statement "if (*(int *)(puVar17 + -0x94) != 0) {\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }" (if "if") (parenthesized_expression "(*(int *)(puVar17 + -0x94) != 0)" (( "(") (binary_expression "*(int *)(puVar17 + -0x94) != 0" (pointer_expression "*(int *)(puVar17 + -0x94)" (* "*") (cast_expression "(int *)(puVar17 + -0x94)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x94)" (( "(") (binary_expression "puVar17 + -0x94" (identifier "puVar17") (+ "+") (number_literal "-0x94")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);\n        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;\n        __gmp_tmp_reentrant_free();\n      }" ({ "{") (expression_statement "*(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);" (assignment_expression "*(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94)" (pointer_expression "*(int *)(puVar11 + -0x10)" (* "*") (cast_expression "(int *)(puVar11 + -0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (pointer_expression "*(int *)(puVar17 + -0x94)" (* "*") (cast_expression "(int *)(puVar17 + -0x94)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x94)" (( "(") (binary_expression "puVar17 + -0x94" (identifier "puVar17") (+ "+") (number_literal "-0x94")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x47e00;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x47e00" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x47e00")) (; ";")) (expression_statement "__gmp_tmp_reentrant_free();" (call_expression "__gmp_tmp_reentrant_free()" (identifier "__gmp_tmp_reentrant_free") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "*(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);" (assignment_expression "*(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8)" (pointer_expression "*(undefined4 *)(puVar17 + -0x9c)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0x9c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (= "=") (pointer_expression "*(undefined4 *)(puVar17 + -0xa8)" (* "*") (cast_expression "(undefined4 *)(puVar17 + -0xa8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")"))))) (; ";")) (goto_statement "goto LAB_000471aa;" (goto "goto") (statement_identifier "LAB_000471aa") (; ";")) (} "}"))) (} "}")))) (expression_statement "pcVar3 = *(code **)(*(int *)(puVar17 + -0x9c) + 0x68);" (assignment_expression "pcVar3 = *(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" (identifier "pcVar3") (= "=") (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" (* "*") (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x68)" (( "(") (binary_expression "*(int *)(puVar17 + -0x9c) + 0x68" (pointer_expression "*(int *)(puVar17 + -0x9c)" (* "*") (cast_expression "(int *)(puVar17 + -0x9c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (+ "+") (number_literal "0x68")) () ")"))))) (; ";")) (expression_statement "apuStack_100[1] = puVar12;" (assignment_expression "apuStack_100[1] = puVar12" (subscript_expression "apuStack_100[1]" (identifier "apuStack_100") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "puVar12")) (; ";")) (if_statement "if ((*(int *)(puVar17 + 0x10) < 0x1f5) || (puVar18 == (undefined1 *)0x1)) {\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = *(int *)(puVar17 + 0x10);\n    auStack_8014[0x1fc4] = 0x47451;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n    puVar11 = auStack_e0;\n  }\n  else {\n    *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = 500;\n    auStack_8014[0x1fc4] = 0x46f33;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    apuStack_f4[1] = puVar17 + -0x90;\n    *(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];\n    apuStack_f4[0] = (undefined1 *)0x46f4e;\n    apuStack_f4[2] = puVar19 + 2000;\n    apuStack_f4[3] = puVar18;\n    (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n    iVar2 = *(int *)(puVar17 + 0x10);\n    puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);\n    *(int *)(puVar17 + -0xac) = (int)puVar18 * 4;\n    puVar19 = puVar19 + 2000;\n    while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }\n    if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n    apuStack_f4[0] = (undefined1 *)0x47047;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar19;\n    uStack_e4 = (uint)puVar18;\n    uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n    puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;\n    puVar11 = auStack_e0;\n  }" (if "if") (parenthesized_expression "((*(int *)(puVar17 + 0x10) < 0x1f5) || (puVar18 == (undefined1 *)0x1))" (( "(") (binary_expression "(*(int *)(puVar17 + 0x10) < 0x1f5) || (puVar18 == (undefined1 *)0x1)" (parenthesized_expression "(*(int *)(puVar17 + 0x10) < 0x1f5)" (( "(") (binary_expression "*(int *)(puVar17 + 0x10) < 0x1f5" (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")")))) (< "<") (number_literal "0x1f5")) () ")")) (|| "||") (parenthesized_expression "(puVar18 == (undefined1 *)0x1)" (( "(") (binary_expression "puVar18 == (undefined1 *)0x1" (identifier "puVar18") (== "==") (cast_expression "(undefined1 *)0x1" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) () ")"))) () ")")) (compound_statement "{\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = *(int *)(puVar17 + 0x10);\n    auStack_8014[0x1fc4] = 0x47451;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);\n    puVar11 = auStack_e0;\n  }" ({ "{") (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "iStack_f8 = *(int *)(puVar17 + 0x10);" (assignment_expression "iStack_f8 = *(int *)(puVar17 + 0x10)" (identifier "iStack_f8") (= "=") (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "auStack_8014[0x1fc4] = 0x47451;" (assignment_expression "auStack_8014[0x1fc4] = 0x47451" (subscript_expression "auStack_8014[0x1fc4]" (identifier "auStack_8014") ([ "[") (number_literal "0x1fc4") (] "]")) (= "=") (number_literal "0x47451")) (; ";")) (expression_statement "apuStack_100[0] = puVar19;" (assignment_expression "apuStack_100[0] = puVar19" (subscript_expression "apuStack_100[0]" (identifier "apuStack_100") ([ "[") (number_literal "0") (] "]")) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);" (assignment_expression "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10)" (pointer_expression "*(undefined1 **)(puVar17 + -0x9c)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0x9c)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (= "=") (binary_expression "puVar18 + *(int *)(puVar17 + 0x10)" (identifier "puVar18") (+ "+") (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")")))))) (; ";")) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" (identifier "puVar11") (= "=") (identifier "auStack_e0")) (; ";")) (} "}")) (else_clause "else {\n    *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = 500;\n    auStack_8014[0x1fc4] = 0x46f33;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    apuStack_f4[1] = puVar17 + -0x90;\n    *(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];\n    apuStack_f4[0] = (undefined1 *)0x46f4e;\n    apuStack_f4[2] = puVar19 + 2000;\n    apuStack_f4[3] = puVar18;\n    (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n    iVar2 = *(int *)(puVar17 + 0x10);\n    puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);\n    *(int *)(puVar17 + -0xac) = (int)puVar18 * 4;\n    puVar19 = puVar19 + 2000;\n    while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }\n    if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n    apuStack_f4[0] = (undefined1 *)0x47047;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar19;\n    uStack_e4 = (uint)puVar18;\n    uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n    puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;\n    puVar11 = auStack_e0;\n  }" (else "else") (compound_statement "{\n    *(undefined1 **)(puVar17 + -0xa8) = puVar12;\n    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n    iStack_f8 = 500;\n    auStack_8014[0x1fc4] = 0x46f33;\n    apuStack_100[0] = puVar19;\n    apuStack_f4[1] = puVar18;\n    (*pcVar3)();\n    apuStack_f4[1] = puVar17 + -0x90;\n    *(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];\n    apuStack_f4[0] = (undefined1 *)0x46f4e;\n    apuStack_f4[2] = puVar19 + 2000;\n    apuStack_f4[3] = puVar18;\n    (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n    iVar2 = *(int *)(puVar17 + 0x10);\n    puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);\n    *(int *)(puVar17 + -0xac) = (int)puVar18 * 4;\n    puVar19 = puVar19 + 2000;\n    while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }\n    if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n    apuStack_f4[0] = (undefined1 *)0x47047;\n    apuStack_f4[1] = puVar19;\n    apuStack_f4[2] = puVar19;\n    uStack_e4 = (uint)puVar18;\n    uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n    puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n    uVar9 = *puVar13;\n    *puVar13 = *puVar13 + uVar8;\n    if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }\n    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;\n    puVar11 = auStack_e0;\n  }" ({ "{") (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar12;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar12" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "iStack_f8 = 500;" (assignment_expression "iStack_f8 = 500" (identifier "iStack_f8") (= "=") (number_literal "500")) (; ";")) (expression_statement "auStack_8014[0x1fc4] = 0x46f33;" (assignment_expression "auStack_8014[0x1fc4] = 0x46f33" (subscript_expression "auStack_8014[0x1fc4]" (identifier "auStack_8014") ([ "[") (number_literal "0x1fc4") (] "]")) (= "=") (number_literal "0x46f33")) (; ";")) (expression_statement "apuStack_100[0] = puVar19;" (assignment_expression "apuStack_100[0] = puVar19" (subscript_expression "apuStack_100[0]" (identifier "apuStack_100") ([ "[") (number_literal "0") (] "]")) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "apuStack_f4[1] = puVar17 + -0x90;" (assignment_expression "apuStack_f4[1] = puVar17 + -0x90" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (binary_expression "puVar17 + -0x90" (identifier "puVar17") (+ "+") (number_literal "-0x90"))) (; ";")) (expression_statement "*(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];" (assignment_expression "*(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1]" (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")")))) (= "=") (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "apuStack_f4[0] = (undefined1 *)0x46f4e;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x46f4e" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (cast_expression "(undefined1 *)0x46f4e" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x46f4e"))) (; ";")) (expression_statement "apuStack_f4[2] = puVar19 + 2000;" (assignment_expression "apuStack_f4[2] = puVar19 + 2000" (subscript_expression "apuStack_f4[2]" (identifier "apuStack_f4") ([ "[") (number_literal "2") (] "]")) (= "=") (binary_expression "puVar19 + 2000" (identifier "puVar19") (+ "+") (number_literal "2000"))) (; ";")) (expression_statement "apuStack_f4[3] = puVar18;" (assignment_expression "apuStack_f4[3] = puVar18" (subscript_expression "apuStack_f4[3]" (identifier "apuStack_f4") ([ "[") (number_literal "3") (] "]")) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))" (( "(") (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" (* "*") (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" (* "*") (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x28)" (( "(") (binary_expression "*(int *)(puVar17 + -0x9c) + 0x28" (pointer_expression "*(int *)(puVar17 + -0x9c)" (* "*") (cast_expression "(int *)(puVar17 + -0x9c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (+ "+") (number_literal "0x28")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar2 = *(int *)(puVar17 + 0x10);" (assignment_expression "iVar2 = *(int *)(puVar17 + 0x10)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(puVar17 + 0x10)" (* "*") (cast_expression "(int *)(puVar17 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + 0x10)" (( "(") (binary_expression "puVar17 + 0x10" (identifier "puVar17") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);" (assignment_expression "puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000)" (identifier "puVar12") (= "=") (cast_expression "(undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar17 + -0xa8) + 2000)" (( "(") (binary_expression "*(int *)(puVar17 + -0xa8) + 2000" (pointer_expression "*(int *)(puVar17 + -0xa8)" (* "*") (cast_expression "(int *)(puVar17 + -0xa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (+ "+") (number_literal "2000")) () ")")))) (; ";")) (expression_statement "*(int *)(puVar17 + -0xac) = (int)puVar18 * 4;" (assignment_expression "*(int *)(puVar17 + -0xac) = (int)puVar18 * 4" (pointer_expression "*(int *)(puVar17 + -0xac)" (* "*") (cast_expression "(int *)(puVar17 + -0xac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")")))) (= "=") (binary_expression "(int)puVar18 * 4" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (* "*") (number_literal "4"))) (; ";")) (expression_statement "puVar19 = puVar19 + 2000;" (assignment_expression "puVar19 = puVar19 + 2000" (identifier "puVar19") (= "=") (binary_expression "puVar19 + 2000" (identifier "puVar19") (+ "+") (number_literal "2000"))) (; ";")) (while_statement "while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11) {\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }" (while "while") (parenthesized_expression "(puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11)" (( "(") (comma_expression "puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11" (assignment_expression "puVar11 = (undefined1 *)(iVar2 - 500)" (identifier "puVar11") (= "=") (cast_expression "(undefined1 *)(iVar2 - 500)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 - 500)" (( "(") (binary_expression "iVar2 - 500" (identifier "iVar2") (- "-") (number_literal "500")) () ")")))) (, ",") (comma_expression "apuStack_100[0] = puVar19,\n          apuStack_100[1] = puVar12, 500 < (int)puVar11" (assignment_expression "apuStack_100[0] = puVar19" (subscript_expression "apuStack_100[0]" (identifier "apuStack_100") ([ "[") (number_literal "0") (] "]")) (= "=") (identifier "puVar19")) (, ",") (comma_expression "apuStack_100[1] = puVar12, 500 < (int)puVar11" (assignment_expression "apuStack_100[1] = puVar12" (subscript_expression "apuStack_100[1]" (identifier "apuStack_100") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "puVar12")) (, ",") (binary_expression "500 < (int)puVar11" (number_literal "500") (< "<") (cast_expression "(int)puVar11" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar11")))))) () ")")) (compound_statement "{\n      *(undefined1 **)(puVar17 + -0xa8) = puVar11;\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      iStack_f8 = 500;\n      auStack_8014[0x1fc4] = 0x46fa8;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46fbc;\n      apuStack_f4[1] = puVar19;\n      apuStack_f4[2] = puVar19;\n      uStack_e4 = (uint)puVar18;\n      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();\n      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));\n      uVar9 = *puVar13;\n      *puVar13 = *puVar13 + uVar8;\n      if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }\n      puVar19 = puVar19 + 2000;\n      puVar12 = puVar12 + 2000;\n      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);\n      apuStack_f4[0] = (undefined1 *)0x46ff2;\n      apuStack_f4[2] = puVar19;\n      apuStack_f4[3] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();\n      iVar2 = *(int *)(puVar17 + -0xa8);\n    }" ({ "{") (expression_statement "*(undefined1 **)(puVar17 + -0xa8) = puVar11;" (assignment_expression "*(undefined1 **)(puVar17 + -0xa8) = puVar11" (pointer_expression "*(undefined1 **)(puVar17 + -0xa8)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa8)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")")))) (= "=") (identifier "puVar11")) (; ";")) (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "iStack_f8 = 500;" (assignment_expression "iStack_f8 = 500" (identifier "iStack_f8") (= "=") (number_literal "500")) (; ";")) (expression_statement "auStack_8014[0x1fc4] = 0x46fa8;" (assignment_expression "auStack_8014[0x1fc4] = 0x46fa8" (subscript_expression "auStack_8014[0x1fc4]" (identifier "auStack_8014") ([ "[") (number_literal "0x1fc4") (] "]")) (= "=") (number_literal "0x46fa8")) (; ";")) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))" (( "(") (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" (* "*") (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" (* "*") (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x68)" (( "(") (binary_expression "*(int *)(puVar17 + -0x9c) + 0x68" (pointer_expression "*(int *)(puVar17 + -0x9c)" (* "*") (cast_expression "(int *)(puVar17 + -0x9c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (+ "+") (number_literal "0x68")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4)" (subscript_expression "apuStack_f4[3]" (identifier "apuStack_f4") ([ "[") (number_literal "3") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (expression_statement "apuStack_f4[0] = (undefined1 *)0x46fbc;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x46fbc" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (cast_expression "(undefined1 *)0x46fbc" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x46fbc"))) (; ";")) (expression_statement "apuStack_f4[1] = puVar19;" (assignment_expression "apuStack_f4[1] = puVar19" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "apuStack_f4[2] = puVar19;" (assignment_expression "apuStack_f4[2] = puVar19" (subscript_expression "apuStack_f4[2]" (identifier "apuStack_f4") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "uStack_e4 = (uint)puVar18;" (assignment_expression "uStack_e4 = (uint)puVar18" (identifier "uStack_e4") (= "=") (cast_expression "(uint)puVar18" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "puVar18"))) (; ";")) (expression_statement "uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();" (assignment_expression "uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))()" (identifier "uVar8") (= "=") (call_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))()" (parenthesized_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))" (( "(") (pointer_expression "*(code *)**(undefined4 **)(puVar17 + -0x9c)" (* "*") (cast_expression "(code *)**(undefined4 **)(puVar17 + -0x9c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "**(undefined4 **)(puVar17 + -0x9c)" (* "*") (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" (* "*") (cast_expression "(undefined4 **)(puVar17 + -0x9c)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")"))))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));" (assignment_expression "puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac))" (identifier "puVar13") (= "=") (cast_expression "(uint *)(puVar19 + *(int *)(puVar17 + -0xac))" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar19 + *(int *)(puVar17 + -0xac))" (( "(") (binary_expression "puVar19 + *(int *)(puVar17 + -0xac)" (identifier "puVar19") (+ "+") (pointer_expression "*(int *)(puVar17 + -0xac)" (* "*") (cast_expression "(int *)(puVar17 + -0xac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")"))))) () ")")))) (; ";")) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" (identifier "uVar9") (= "=") (pointer_expression "*puVar13" (* "*") (identifier "puVar13"))) (; ";")) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (= "=") (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (+ "+") (identifier "uVar8"))) (; ";")) (if_statement "if (CARRY4(uVar9,uVar8)) {\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }" (if "if") (parenthesized_expression "(CARRY4(uVar9,uVar8))" (( "(") (call_expression "CARRY4(uVar9,uVar8)" (identifier "CARRY4") (argument_list "(uVar9,uVar8)" (( "(") (identifier "uVar9") (, ",") (identifier "uVar8") () ")"))) () ")")) (compound_statement "{\n        do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);\n      }" ({ "{") (do_statement "do {\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        } while (0xfffffffe < uVar9);" (do "do") (compound_statement "{\n          puVar1 = puVar13 + 1;\n          uVar9 = *puVar1;\n          *puVar1 = *puVar1 + 1;\n          puVar13 = puVar13 + 1;\n        }" ({ "{") (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" (identifier "puVar1") (= "=") (binary_expression "puVar13 + 1" (identifier "puVar13") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" (identifier "uVar9") (= "=") (pointer_expression "*puVar1" (* "*") (identifier "puVar1"))) (; ";")) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (= "=") (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" (identifier "puVar13") (= "=") (binary_expression "puVar13 + 1" (identifier "puVar13") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(0xfffffffe < uVar9)" (( "(") (binary_expression "0xfffffffe < uVar9" (number_literal "0xfffffffe") (< "<") (identifier "uVar9")) () ")")) (; ";")) (} "}"))) (expression_statement "puVar19 = puVar19 + 2000;" (assignment_expression "puVar19 = puVar19 + 2000" (identifier "puVar19") (= "=") (binary_expression "puVar19 + 2000" (identifier "puVar19") (+ "+") (number_literal "2000"))) (; ";")) (expression_statement "puVar12 = puVar12 + 2000;" (assignment_expression "puVar12 = puVar12 + 2000" (identifier "puVar12") (= "=") (binary_expression "puVar12 + 2000" (identifier "puVar12") (+ "+") (number_literal "2000"))) (; ";")) (expression_statement "apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4)" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (expression_statement "apuStack_f4[0] = (undefined1 *)0x46ff2;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x46ff2" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (cast_expression "(undefined1 *)0x46ff2" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x46ff2"))) (; ";")) (expression_statement "apuStack_f4[2] = puVar19;" (assignment_expression "apuStack_f4[2] = puVar19" (subscript_expression "apuStack_f4[2]" (identifier "apuStack_f4") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "apuStack_f4[3] = puVar18;" (assignment_expression "apuStack_f4[3] = puVar18" (subscript_expression "apuStack_f4[3]" (identifier "apuStack_f4") ([ "[") (number_literal "3") (] "]")) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))" (( "(") (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" (* "*") (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" (* "*") (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x28)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x28)" (( "(") (binary_expression "*(int *)(puVar17 + -0x9c) + 0x28" (pointer_expression "*(int *)(puVar17 + -0x9c)" (* "*") (cast_expression "(int *)(puVar17 + -0x9c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (+ "+") (number_literal "0x28")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar2 = *(int *)(puVar17 + -0xa8);" (assignment_expression "iVar2 = *(int *)(puVar17 + -0xa8)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(puVar17 + -0xa8)" (* "*") (cast_expression "(int *)(puVar17 + -0xa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xa8)" (( "(") (binary_expression "puVar17 + -0xa8" (identifier "puVar17") (+ "+") (number_literal "-0xa8")) () ")"))))) (; ";")) (} "}"))) (if_statement "if ((int)puVar18 < (int)puVar11) {\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }\n    else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }" (if "if") (parenthesized_expression "((int)puVar18 < (int)puVar11)" (( "(") (binary_expression "(int)puVar18 < (int)puVar11" (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18")) (< "<") (cast_expression "(int)puVar11" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar11"))) () ")")) (compound_statement "{\n      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x47033;\n      iStack_f8 = (int)puVar11;\n      apuStack_f4[1] = puVar18;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }" ({ "{") (expression_statement "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "auStack_8014[0x1fc4] = 0x47033;" (assignment_expression "auStack_8014[0x1fc4] = 0x47033" (subscript_expression "auStack_8014[0x1fc4]" (identifier "auStack_8014") ([ "[") (number_literal "0x1fc4") (] "]")) (= "=") (number_literal "0x47033")) (; ";")) (expression_statement "iStack_f8 = (int)puVar11;" (assignment_expression "iStack_f8 = (int)puVar11" (identifier "iStack_f8") (= "=") (cast_expression "(int)puVar11" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar11"))) (; ";")) (expression_statement "apuStack_f4[1] = puVar18;" (assignment_expression "apuStack_f4[1] = puVar18" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "puVar18")) (; ";")) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))" (( "(") (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" (* "*") (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" (* "*") (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x68)" (( "(") (binary_expression "*(int *)(puVar17 + -0x9c) + 0x68" (pointer_expression "*(int *)(puVar17 + -0x9c)" (* "*") (cast_expression "(int *)(puVar17 + -0x9c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (+ "+") (number_literal "0x68")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else {\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }" (else "else") (compound_statement "{\n      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);\n      auStack_8014[0x1fc4] = 0x477f7;\n      iStack_f8 = (int)puVar18;\n      apuStack_f4[0] = puVar12;\n      apuStack_f4[1] = puVar11;\n      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();\n    }" ({ "{") (expression_statement "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);" (assignment_expression "apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0)" (subscript_expression "apuStack_100[1]" (identifier "apuStack_100") ([ "[") (number_literal "1") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa0)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa0)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa0)" (( "(") (binary_expression "puVar17 + -0xa0" (identifier "puVar17") (+ "+") (number_literal "-0xa0")) () ")"))))) (; ";")) (expression_statement "auStack_8014[0x1fc4] = 0x477f7;" (assignment_expression "auStack_8014[0x1fc4] = 0x477f7" (subscript_expression "auStack_8014[0x1fc4]" (identifier "auStack_8014") ([ "[") (number_literal "0x1fc4") (] "]")) (= "=") (number_literal "0x477f7")) (; ";")) (expression_statement "iStack_f8 = (int)puVar18;" (assignment_expression "iStack_f8 = (int)puVar18" (identifier "iStack_f8") (= "=") (cast_expression "(int)puVar18" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar18"))) (; ";")) (expression_statement "apuStack_f4[0] = puVar12;" (assignment_expression "apuStack_f4[0] = puVar12" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (identifier "puVar12")) (; ";")) (expression_statement "apuStack_f4[1] = puVar11;" (assignment_expression "apuStack_f4[1] = puVar11" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "puVar11")) (; ";")) (expression_statement "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();" (call_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))()" (parenthesized_expression "(**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))" (( "(") (pointer_expression "**(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" (* "*") (pointer_expression "*(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" (* "*") (cast_expression "(code **)(*(int *)(puVar17 + -0x9c) + 0x68)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(puVar17 + -0x9c) + 0x68)" (( "(") (binary_expression "*(int *)(puVar17 + -0x9c) + 0x68" (pointer_expression "*(int *)(puVar17 + -0x9c)" (* "*") (cast_expression "(int *)(puVar17 + -0x9c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (+ "+") (number_literal "0x68")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (expression_statement "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);" (assignment_expression "apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4)" (subscript_expression "apuStack_f4[3]" (identifier "apuStack_f4") ([ "[") (number_literal "3") (] "]")) (= "=") (pointer_expression "*(undefined1 **)(puVar17 + -0xa4)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0xa4)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0xa4)" (( "(") (binary_expression "puVar17 + -0xa4" (identifier "puVar17") (+ "+") (number_literal "-0xa4")) () ")"))))) (; ";")) (expression_statement "apuStack_f4[0] = (undefined1 *)0x47047;" (assignment_expression "apuStack_f4[0] = (undefined1 *)0x47047" (subscript_expression "apuStack_f4[0]" (identifier "apuStack_f4") ([ "[") (number_literal "0") (] "]")) (= "=") (cast_expression "(undefined1 *)0x47047" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x47047"))) (; ";")) (expression_statement "apuStack_f4[1] = puVar19;" (assignment_expression "apuStack_f4[1] = puVar19" (subscript_expression "apuStack_f4[1]" (identifier "apuStack_f4") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "apuStack_f4[2] = puVar19;" (assignment_expression "apuStack_f4[2] = puVar19" (subscript_expression "apuStack_f4[2]" (identifier "apuStack_f4") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "puVar19")) (; ";")) (expression_statement "uStack_e4 = (uint)puVar18;" (assignment_expression "uStack_e4 = (uint)puVar18" (identifier "uStack_e4") (= "=") (cast_expression "(uint)puVar18" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "puVar18"))) (; ";")) (expression_statement "uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();" (assignment_expression "uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))()" (identifier "uVar8") (= "=") (call_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))()" (parenthesized_expression "(*(code *)**(undefined4 **)(puVar17 + -0x9c))" (( "(") (pointer_expression "*(code *)**(undefined4 **)(puVar17 + -0x9c)" (* "*") (cast_expression "(code *)**(undefined4 **)(puVar17 + -0x9c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "**(undefined4 **)(puVar17 + -0x9c)" (* "*") (pointer_expression "*(undefined4 **)(puVar17 + -0x9c)" (* "*") (cast_expression "(undefined4 **)(puVar17 + -0x9c)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")"))))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));" (assignment_expression "puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac))" (identifier "puVar13") (= "=") (cast_expression "(uint *)(puVar19 + *(int *)(puVar17 + -0xac))" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar19 + *(int *)(puVar17 + -0xac))" (( "(") (binary_expression "puVar19 + *(int *)(puVar17 + -0xac)" (identifier "puVar19") (+ "+") (pointer_expression "*(int *)(puVar17 + -0xac)" (* "*") (cast_expression "(int *)(puVar17 + -0xac)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0xac)" (( "(") (binary_expression "puVar17 + -0xac" (identifier "puVar17") (+ "+") (number_literal "-0xac")) () ")"))))) () ")")))) (; ";")) (expression_statement "uVar9 = *puVar13;" (assignment_expression "uVar9 = *puVar13" (identifier "uVar9") (= "=") (pointer_expression "*puVar13" (* "*") (identifier "puVar13"))) (; ";")) (expression_statement "*puVar13 = *puVar13 + uVar8;" (assignment_expression "*puVar13 = *puVar13 + uVar8" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (= "=") (binary_expression "*puVar13 + uVar8" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (+ "+") (identifier "uVar8"))) (; ";")) (if_statement "if (CARRY4(uVar9,uVar8)) {\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }" (if "if") (parenthesized_expression "(CARRY4(uVar9,uVar8))" (( "(") (call_expression "CARRY4(uVar9,uVar8)" (identifier "CARRY4") (argument_list "(uVar9,uVar8)" (( "(") (identifier "uVar9") (, ",") (identifier "uVar8") () ")"))) () ")")) (compound_statement "{\n      do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);\n    }" ({ "{") (do_statement "do {\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      } while (0xfffffffe < uVar9);" (do "do") (compound_statement "{\n        puVar1 = puVar13 + 1;\n        uVar9 = *puVar1;\n        *puVar1 = *puVar1 + 1;\n        puVar13 = puVar13 + 1;\n      }" ({ "{") (expression_statement "puVar1 = puVar13 + 1;" (assignment_expression "puVar1 = puVar13 + 1" (identifier "puVar1") (= "=") (binary_expression "puVar13 + 1" (identifier "puVar13") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar9 = *puVar1;" (assignment_expression "uVar9 = *puVar1" (identifier "uVar9") (= "=") (pointer_expression "*puVar1" (* "*") (identifier "puVar1"))) (; ";")) (expression_statement "*puVar1 = *puVar1 + 1;" (assignment_expression "*puVar1 = *puVar1 + 1" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (= "=") (binary_expression "*puVar1 + 1" (pointer_expression "*puVar1" (* "*") (identifier "puVar1")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" (identifier "puVar13") (= "=") (binary_expression "puVar13 + 1" (identifier "puVar13") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(0xfffffffe < uVar9)" (( "(") (binary_expression "0xfffffffe < uVar9" (number_literal "0xfffffffe") (< "<") (identifier "uVar9")) () ")")) (; ";")) (} "}"))) (expression_statement "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;" (assignment_expression "*(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11" (pointer_expression "*(undefined1 **)(puVar17 + -0x9c)" (* "*") (cast_expression "(undefined1 **)(puVar17 + -0x9c)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (= "=") (binary_expression "puVar18 + (int)puVar11" (identifier "puVar18") (+ "+") (cast_expression "(int)puVar11" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar11")))) (; ";")) (expression_statement "puVar11 = auStack_e0;" (assignment_expression "puVar11 = auStack_e0" (identifier "puVar11") (= "=") (identifier "auStack_e0")) (; ";")) (} "}")))) (labeled_statement "LAB_000471aa:\n  if (*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14)) {\n    return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);\n  }" (statement_identifier "LAB_000471aa") (: ":") (if_statement "if (*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14)) {\n    return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);\n  }" (if "if") (parenthesized_expression "(*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14))" (( "(") (binary_expression "*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14)" (pointer_expression "*(int *)(puVar17 + -0x1c)" (* "*") (cast_expression "(int *)(puVar17 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x1c)" (( "(") (binary_expression "puVar17 + -0x1c" (identifier "puVar17") (+ "+") (number_literal "-0x1c")) () ")")))) (== "==") (pointer_expression "*(int *)(in_GS_OFFSET + 0x14)" (* "*") (cast_expression "(int *)(in_GS_OFFSET + 0x14)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(in_GS_OFFSET + 0x14)" (( "(") (binary_expression "in_GS_OFFSET + 0x14" (identifier "in_GS_OFFSET") (+ "+") (number_literal "0x14")) () ")"))))) () ")")) (compound_statement "{\n    return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);\n  }" ({ "{") (return_statement "return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);" (return "return") (pointer_expression "*(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4)" (( "(") (binary_expression "puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4" (binary_expression "puVar19 + *(int *)(puVar17 + -0x9c) * 4" (identifier "puVar19") (+ "+") (binary_expression "*(int *)(puVar17 + -0x9c) * 4" (pointer_expression "*(int *)(puVar17 + -0x9c)" (* "*") (cast_expression "(int *)(puVar17 + -0x9c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar17 + -0x9c)" (( "(") (binary_expression "puVar17 + -0x9c" (identifier "puVar17") (+ "+") (number_literal "-0x9c")) () ")")))) (* "*") (number_literal "4"))) (+ "+") (number_literal "-4")) () ")")))) (; ";")) (} "}")))) (expression_statement "*(undefined4 *)(puVar11 + -4) = 0x47f0b;" (assignment_expression "*(undefined4 *)(puVar11 + -4) = 0x47f0b" (pointer_expression "*(undefined4 *)(puVar11 + -4)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -4)" (( "(") (binary_expression "puVar11 + -4" (identifier "puVar11") (+ "+") (number_literal "-4")) () ")")))) (= "=") (number_literal "0x47f0b")) (; ";")) (expression_statement "FUN_0007ebe0();" (call_expression "FUN_0007ebe0()" (identifier "FUN_0007ebe0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

type_1 function_1(type_2 var_23,type_3 var_4,type_4 var_2,type_3 var_5,type_4 var_3)

{
  type_5 *puVar1;
  int var_10;
  int var_44;
  type_6 *pcVar4;
  int var_15;
  type_2 pmVar6;
  type_3 pmVar7;
  type_5 var_43;
  type_5 var_19;
  void *pvVar10;
  type_3 pmVar11;
  type_1 var_38;
  type_5 *var_20;
  type_5 *var_18;
  type_7 *var_33;
  type_7 *var_35;
  int var_1;
  type_4 amStackY_8010 [8133];
  type_7 var_11 [8];
  int var_37;
  type_1 var_36;
  type_5 var_26;
  type_5 *local_c8;
  type_2 local_c4;
  void *local_c0;
  type_5 var_16;
  type_5 *local_b8;
  type_3 local_b4;
  type_3 var_24;
  type_3 var_25;
  type_3 var_30;
  type_5 *local_a4;
  type_3 local_a0;
  type_8 *var_28;
  type_1 tp [29];
  
  var_33 = var_11;
  var_35 = var_11;
  local_a4 = var_5;
  var_44 = *(int *)(var_1 + 0x14);
  if (var_2 == var_3) {
    local_a0 = (type_3)(var_2 * 2);
    if (var_4 == var_5) {
      var_6(var_23,var_4,var_2);
      var_35 = var_11;
    }
    else {
      var_7(var_23,var_4,var_5,var_2);
      var_35 = var_11;
    }
    goto LAB_000471aa;
  }
  if (*(int *)PTR___gmpn_cpuvec_initialized_0009dd58 == 0) {
    var_30 = var_4;
    var_25 = (type_3)PTR___gmpn_cpuvec_initialized_0009dd58;
    var_8();
    local_a0 = (type_3)var_9;
    var_4 = var_30;
    if (*(int *)(var_9 + 0x94) <= var_3) {
      if (*var_25 == 0) {
        var_8();
        var_4 = var_30;
      }
      goto LAB_000470c0;
    }
  }
  else {
    local_a0 = (type_3)var_9;
    if (*(int *)(var_9 + 0x94) <= var_3) {
LAB_000470c0:
      if (var_3 < (int)local_a0[0x26]) {
        var_30 = (type_3)(var_3 * 8);
        local_c4 = (type_2)(var_3 * 4);
        var_36 = var_3 * 5;
        var_10 = -(((var_3 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);
        local_c0 = (void *)((int)&var_36 + var_10);
        local_b8 = (type_5 *)(var_3 * 2);
        local_c8 = (type_5 *)(var_3 * 3);
        if (var_2 < (int)(var_3 * 3)) {
          local_a0 = (type_3)(var_2 + var_3);
          if (var_2 * 4 < var_3 * 5) {
            *(void **)(&stack0xffffff18 + var_10) = local_c0;
            *(type_4 *)(&stack0xffffff14 + var_10) = var_3;
            *(type_5 **)(&stack0xffffff10 + var_10) = local_a4;
            *(type_4 *)(&stack0xffffff0c + var_10) = var_2;
            *(type_3 *)(var_11 + var_10 + -0x1c) = var_4;
            *(type_2 *)(var_11 + var_10 + -0x20) = var_23;
            *(type_9 *)((int)amStackY_8010 + var_10 + 0x7f10) = 0x47aaa;
            var_12(*(type_2 *)(var_11 + var_10 + -0x20),
                              *(type_3 *)(var_11 + var_10 + -0x1c),
                              *(type_4 *)(&stack0xffffff0c + var_10),
                              *(type_3 *)(&stack0xffffff10 + var_10),
                              *(type_4 *)(&stack0xffffff14 + var_10),
                              *(type_2 *)(&stack0xffffff18 + var_10));
            var_35 = var_11 + var_10;
          }
          else if (var_2 * 4 < var_3 * 7) {
            *(void **)(&stack0xffffff18 + var_10) = local_c0;
            *(type_4 *)(&stack0xffffff14 + var_10) = var_3;
            *(type_5 **)(&stack0xffffff10 + var_10) = local_a4;
            *(type_4 *)(&stack0xffffff0c + var_10) = var_2;
            *(type_3 *)(var_11 + var_10 + -0x1c) = var_4;
            *(type_2 *)(var_11 + var_10 + -0x20) = var_23;
            *(type_9 *)((int)amStackY_8010 + var_10 + 0x7f10) = 0x4717a;
            var_13(*(type_2 *)(var_11 + var_10 + -0x20),
                              *(type_3 *)(var_11 + var_10 + -0x1c),
                              *(type_4 *)(&stack0xffffff0c + var_10),
                              *(type_3 *)(&stack0xffffff10 + var_10),
                              *(type_4 *)(&stack0xffffff14 + var_10),
                              *(type_2 *)(&stack0xffffff18 + var_10));
            var_35 = var_11 + var_10;
          }
          else {
            *(void **)(&stack0xffffff18 + var_10) = local_c0;
            *(type_4 *)(&stack0xffffff14 + var_10) = var_3;
            *(type_5 **)(&stack0xffffff10 + var_10) = local_a4;
            *(type_4 *)(&stack0xffffff0c + var_10) = var_2;
            *(type_3 *)(var_11 + var_10 + -0x1c) = var_4;
            *(type_2 *)(var_11 + var_10 + -0x20) = var_23;
            *(type_9 *)((int)amStackY_8010 + var_10 + 0x7f10) = 0x47a7a;
            var_14(*(type_2 *)(var_11 + var_10 + -0x20),
                              *(type_3 *)(var_11 + var_10 + -0x1c),
                              *(type_4 *)(&stack0xffffff0c + var_10),
                              *(type_3 *)(&stack0xffffff10 + var_10),
                              *(type_4 *)(&stack0xffffff14 + var_10),
                              *(type_2 *)(&stack0xffffff18 + var_10));
            var_35 = var_11 + var_10;
          }
        }
        else {
          local_b4 = var_4;
          var_15 = -(var_3 * 0x10 + 0x10);
          *(void **)(&stack0xffffff18 + var_15 + var_10) = local_c0;
          *(type_4 *)(&stack0xffffff14 + var_15 + var_10) = var_3;
          *(type_5 **)(&stack0xffffff10 + var_15 + var_10) = local_a4;
          *(type_5 **)(&stack0xffffff0c + var_15 + var_10) = local_b8;
          *(type_3 *)(var_11 + var_15 + var_10 + -0x1c) = var_4;
          *(type_2 *)(var_11 + var_15 + var_10 + -0x20) = var_23;
          var_24 = (type_3)((int)&var_36 + var_15 + var_10);
          *(type_9 *)((int)amStackY_8010 + var_15 + var_10 + 0x7f10) = 0x4783a;
          var_14(*(type_2 *)(var_11 + var_15 + var_10 + -0x20),
                            *(type_3 *)(var_11 + var_15 + var_10 + -0x1c),
                            *(type_4 *)(&stack0xffffff0c + var_15 + var_10),
                            *(type_3 *)(&stack0xffffff10 + var_15 + var_10),
                            *(type_4 *)(&stack0xffffff14 + var_15 + var_10),
                            *(type_2 *)(&stack0xffffff18 + var_15 + var_10));
          var_20 = local_b8;
          var_23 = (type_2)((int)var_23 + (int)var_30);
          var_25 = (type_3)(var_2 - (int)local_b8);
          local_b4 = (type_3)((int)local_b4 + (int)var_30);
          var_26 = (int)var_24 + (int)local_c4;
          if ((int)local_c8 <= (int)(var_2 - (int)local_b8)) {
            do {
              *(void **)(&stack0xffffff18 + var_15 + var_10) = local_c0;
              *(type_4 *)(&stack0xffffff14 + var_15 + var_10) = var_3;
              *(type_5 **)(&stack0xffffff10 + var_15 + var_10) = local_a4;
              *(type_5 **)(&stack0xffffff0c + var_15 + var_10) = var_20;
              *(type_3 *)(var_11 + var_15 + var_10 + -0x1c) = local_b4;
              *(type_3 *)(var_11 + var_15 + var_10 + -0x20) = var_24;
              *(type_9 *)((int)amStackY_8010 + var_15 + var_10 + 0x7f10) = 0x478b4;
              var_14(*(type_2 *)(var_11 + var_15 + var_10 + -0x20),
                                *(type_3 *)(var_11 + var_15 + var_10 + -0x1c),
                                *(type_4 *)(&stack0xffffff0c + var_15 + var_10),
                                *(type_3 *)(&stack0xffffff10 + var_15 + var_10),
                                *(type_4 *)(&stack0xffffff14 + var_15 + var_10),
                                *(type_2 *)(&stack0xffffff18 + var_15 + var_10));
              pmVar7 = local_a0;
              pmVar11 = var_30;
              *(type_4 *)(&stack0xffffff20 + var_15 + var_10) = var_3;
              local_b4 = (type_3)((int)local_b4 + (int)pmVar11);
              *(type_3 *)(&stack0xffffff1c + var_15 + var_10) = var_24;
              var_25 = (type_3)((int)var_25 - (int)var_20);
              *(type_2 *)(&stack0xffffff18 + var_15 + var_10) = var_23;
              *(type_2 *)(&stack0xffffff14 + var_15 + var_10) = var_23;
              pcVar4 = (type_6 *)*pmVar7;
              *(type_9 *)(&stack0xffffff10 + var_15 + var_10) = 0x478dc;
              var_16 = (*pcVar4)();
              pmVar11 = local_a0;
              var_18 = (type_5 *)((int)var_23 + (int)local_c4);
              *(type_5 **)(&stack0xffffff1c + var_15 + var_10) = var_20;
              local_b8 = var_18;
              *(type_5 *)(&stack0xffffff18 + var_15 + var_10) = var_26;
              *(type_5 **)(&stack0xffffff14 + var_15 + var_10) = var_18;
              pcVar4 = (type_6 *)pmVar11[10];
              *(type_9 *)(&stack0xffffff10 + var_15 + var_10) = 0x47905;
              (*pcVar4)();
              var_19 = *local_b8;
              *local_b8 = *local_b8 + var_16;
              var_18 = local_b8;
              if (var_17(var_19,var_16)) {
                do {
                  puVar1 = var_18 + 1;
                  var_19 = *puVar1;
                  *puVar1 = *puVar1 + 1;
                  var_18 = var_18 + 1;
                } while (0xfffffffe < var_19);
              }
              var_23 = (type_2)((int)var_23 + (int)var_30);
            } while ((int)local_c8 <= (int)var_25);
          }
          pmVar11 = var_25;
          if ((int)var_25 * 4 < (int)var_36) {
            *(void **)(&stack0xffffff18 + var_15 + var_10) = local_c0;
            *(type_4 *)(&stack0xffffff14 + var_15 + var_10) = var_3;
            *(type_5 **)(&stack0xffffff10 + var_15 + var_10) = local_a4;
            *(type_3 *)(&stack0xffffff0c + var_15 + var_10) = pmVar11;
            *(type_3 *)(var_11 + var_15 + var_10 + -0x1c) = local_b4;
            *(type_3 *)(var_11 + var_15 + var_10 + -0x20) = var_24;
            *(type_9 *)((int)amStackY_8010 + var_15 + var_10 + 0x7f10) = 0x47cd2;
            var_12(*(type_2 *)(var_11 + var_15 + var_10 + -0x20),
                              *(type_3 *)(var_11 + var_15 + var_10 + -0x1c),
                              *(type_4 *)(&stack0xffffff0c + var_15 + var_10),
                              *(type_3 *)(&stack0xffffff10 + var_15 + var_10),
                              *(type_4 *)(&stack0xffffff14 + var_15 + var_10),
                              *(type_2 *)(&stack0xffffff18 + var_15 + var_10));
          }
          else if ((int)var_25 * 4 < var_3 * 7) {
            *(void **)(&stack0xffffff18 + var_15 + var_10) = local_c0;
            *(type_4 *)(&stack0xffffff14 + var_15 + var_10) = var_3;
            *(type_5 **)(&stack0xffffff10 + var_15 + var_10) = local_a4;
            *(type_3 *)(&stack0xffffff0c + var_15 + var_10) = var_25;
            *(type_3 *)(var_11 + var_15 + var_10 + -0x1c) = local_b4;
            *(type_3 *)(var_11 + var_15 + var_10 + -0x20) = var_24;
            *(type_9 *)((int)amStackY_8010 + var_15 + var_10 + 0x7f10) = 0x47987;
            var_13(*(type_2 *)(var_11 + var_15 + var_10 + -0x20),
                              *(type_3 *)(var_11 + var_15 + var_10 + -0x1c),
                              *(type_4 *)(&stack0xffffff0c + var_15 + var_10),
                              *(type_3 *)(&stack0xffffff10 + var_15 + var_10),
                              *(type_4 *)(&stack0xffffff14 + var_15 + var_10),
                              *(type_2 *)(&stack0xffffff18 + var_15 + var_10));
          }
          else {
            *(void **)(&stack0xffffff18 + var_15 + var_10) = local_c0;
            *(type_4 *)(&stack0xffffff14 + var_15 + var_10) = var_3;
            *(type_5 **)(&stack0xffffff10 + var_15 + var_10) = local_a4;
            *(type_3 *)(&stack0xffffff0c + var_15 + var_10) = var_25;
            *(type_3 *)(var_11 + var_15 + var_10 + -0x1c) = local_b4;
            *(type_3 *)(var_11 + var_15 + var_10 + -0x20) = var_24;
            *(type_9 *)((int)amStackY_8010 + var_15 + var_10 + 0x7f10) = 0x47ca7;
            var_14(*(type_2 *)(var_11 + var_15 + var_10 + -0x20),
                              *(type_3 *)(var_11 + var_15 + var_10 + -0x1c),
                              *(type_4 *)(&stack0xffffff0c + var_15 + var_10),
                              *(type_3 *)(&stack0xffffff10 + var_15 + var_10),
                              *(type_4 *)(&stack0xffffff14 + var_15 + var_10),
                              *(type_2 *)(&stack0xffffff18 + var_15 + var_10));
          }
          pmVar11 = local_a0;
          *(type_4 *)(&stack0xffffff20 + var_15 + var_10) = var_3;
          *(type_3 *)(&stack0xffffff1c + var_15 + var_10) = var_24;
          *(type_2 *)(&stack0xffffff18 + var_15 + var_10) = var_23;
          *(type_2 *)(&stack0xffffff14 + var_15 + var_10) = var_23;
          pcVar4 = (type_6 *)*pmVar11;
          *(type_9 *)(&stack0xffffff10 + var_15 + var_10) = 0x4799b;
          local_a4 = (type_5 *)(*pcVar4)();
          pmVar11 = local_a0;
          var_20 = (type_5 *)((int)local_c4 + (int)var_23);
          *(type_3 *)(&stack0xffffff1c + var_15 + var_10) = var_25;
          *(type_5 *)(&stack0xffffff18 + var_15 + var_10) = var_26;
          *(type_5 **)(&stack0xffffff14 + var_15 + var_10) = var_20;
          pcVar4 = (type_6 *)pmVar11[10];
          *(type_9 *)(&stack0xffffff10 + var_15 + var_10) = 0x479c2;
          (*pcVar4)();
          var_19 = *var_20;
          *var_20 = *var_20 + (int)local_a4;
          if (var_17(var_19,(type_5)local_a4)) {
            do {
              var_18 = var_20 + 1;
              var_19 = *var_18;
              *var_18 = *var_18 + 1;
              var_20 = var_20 + 1;
            } while (0xfffffffe < var_19);
          }
          local_a0 = (type_3)(var_3 + (int)var_25);
          var_35 = var_11 + var_15 + var_10;
        }
        goto LAB_000471aa;
      }
      var_25 = (type_3)(var_2 + var_3);
      if ((3999 < (int)var_25) && (var_30 = (type_3)(var_3 * 3), 1999 < (int)var_30)) {
        var_19 = var_3 * 8;
        if (var_19 - var_2 == 0 || (int)var_19 < var_2) {
          var_28 = (type_8 *)0x0;
          var_16 = var_19;
          var_24 = var_4;
          var_25 = (type_3)var_21(&var_28,(var_3 * 9 >> 1) << 2);
          amStackY_8010[0x1fc4] = 0x4725a;
          var_22(var_23,var_24,(type_4)var_30,local_a4,var_3);
          local_c0 = (void *)(var_3 * 4);
          local_c8 = (type_5 *)(var_3 * -3);
          var_20 = (type_5 *)((int)local_c8 + var_2);
          local_b4 = (type_3)((int)var_30 * 4);
          var_23 = var_23 + (int)var_30;
          var_24 = var_24 + (int)var_30;
          var_26 = var_16 - var_3;
          if ((int)var_20 * 2 < (int)var_26) {
            local_c4 = var_25 + var_3;
          }
          else {
            local_c4 = var_25 + var_3;
            local_b8 = var_20;
            do {
              amStackY_8010[0x1fc4] = 0x47303;
              var_22(var_25,var_24,(type_4)var_30,local_a4,var_3);
              var_20 = (type_5 *)((int)var_20 + (int)local_c8);
              var_24 = (type_3)((int)var_24 + (int)local_b4);
              var_16 = (*(type_6 *)*local_a0)();
              local_b8 = (type_5 *)((int)var_23 + (int)local_c0);
              (*(type_6 *)local_a0[10])();
              var_19 = *local_b8;
              *local_b8 = *local_b8 + var_16;
              var_18 = local_b8;
              if (var_17(var_19,var_16)) {
                do {
                  puVar1 = var_18 + 1;
                  var_19 = *puVar1;
                  *puVar1 = *puVar1 + 1;
                  var_18 = var_18 + 1;
                } while (0xfffffffe < var_19);
              }
              var_23 = (type_2)((int)var_23 + (int)local_b4);
            } while (var_26 == (int)var_20 * 2 ||
                     var_27(var_26,(int)var_20 * 2) != (int)(var_26 + (int)var_20 * -2) < 0)
            ;
          }
          local_b8 = var_20;
          if ((int)local_b8 < var_3) {
            amStackY_8010[0x1fc4] = 0x473bd;
            function_1(var_25,local_a4,var_3,var_24,(type_4)local_b8);
          }
          else {
            amStackY_8010[0x1fc4] = 0x47d73;
            function_1(var_25,var_24,(type_4)local_b8,local_a4,var_3);
          }
          var_30 = (type_3)(*(type_6 *)*local_a0)();
          local_a4 = (type_5 *)((int)local_c0 + (int)var_23);
          (*(type_6 *)local_a0[10])();
          var_19 = *local_a4;
          *local_a4 = *local_a4 + (int)var_30;
          var_20 = local_a4;
          if (var_17(var_19,(type_5)var_30)) {
            do {
              var_18 = var_20 + 1;
              var_19 = *var_18;
              *var_18 = *var_18 + 1;
              var_20 = var_20 + 1;
            } while (0xfffffffe < var_19);
          }
          if (var_28 != (type_8 *)0x0) {
            var_29(var_28);
          }
          local_a0 = (type_3)(var_3 + (int)local_b8);
          var_35 = var_11;
        }
        else {
          amStackY_8010[0x1fc4] = 0x47c6c;
          var_22(var_23,var_4,var_2,local_a4,var_3);
          local_a0 = var_25;
        }
        goto LAB_000471aa;
      }
      if (299 < var_3) {
        var_30 = (type_3)(var_2 * 3 + 0xc);
        if (var_27((int)var_30,var_3 * 4) != (int)(var_30 + -var_3) < 0) {
          var_28 = (type_8 *)0x0;
          local_a0 = var_25;
          if (var_3 < 0x15e) {
            var_10 = -(var_2 * 0xc + 0x9bU & 0xfffffff0);
            var_35 = var_11 + var_10;
            *(int *)(&stack0xffffff18 + var_10) = (int)&var_36 + var_10;
            *(type_4 *)(&stack0xffffff14 + var_10) = var_3;
            *(type_5 **)(&stack0xffffff10 + var_10) = local_a4;
            *(type_4 *)(&stack0xffffff0c + var_10) = var_2;
            *(type_3 *)(var_11 + var_10 + -0x1c) = var_4;
            *(type_2 *)(var_11 + var_10 + -0x20) = var_23;
            *(type_9 *)((int)amStackY_8010 + var_10 + 0x7f10) = 0x47da3;
            var_31(*(type_2 *)(var_11 + var_10 + -0x20),
                              *(type_3 *)(var_11 + var_10 + -0x1c),
                              *(type_4 *)(&stack0xffffff0c + var_10),
                              *(type_3 *)(&stack0xffffff10 + var_10),
                              *(type_4 *)(&stack0xffffff14 + var_10),
                              *(type_2 *)(&stack0xffffff18 + var_10));
          }
          else if (var_3 < 0x1c2) {
            var_10 = -((((type_5)var_25 / 10) * 3 + 3) * 0x10 + 0x610);
            var_35 = var_11 + var_10;
            *(int *)(&stack0xffffff18 + var_10) = (int)&var_36 + var_10;
            *(type_4 *)(&stack0xffffff14 + var_10) = var_3;
            *(type_5 **)(&stack0xffffff10 + var_10) = local_a4;
            *(type_4 *)(&stack0xffffff0c + var_10) = var_2;
            *(type_3 *)(var_11 + var_10 + -0x1c) = var_4;
            *(type_2 *)(var_11 + var_10 + -0x20) = var_23;
            *(type_9 *)((int)amStackY_8010 + var_10 + 0x7f10) = 0x47e63;
            var_32(*(type_2 *)(var_11 + var_10 + -0x20),
                              *(type_3 *)(var_11 + var_10 + -0x1c),
                              *(type_4 *)(&stack0xffffff0c + var_10),
                              *(type_3 *)(&stack0xffffff10 + var_10),
                              *(type_4 *)(&stack0xffffff14 + var_10),
                              *(type_2 *)(&stack0xffffff18 + var_10));
          }
          else {
            var_10 = ((int)(((type_5)var_25 / 0xe + 1) * 0x78) >> 3) * 4;
            var_19 = var_10 + 0x6dc;
            if (var_19 < 0x7f01) {
              var_10 = -(var_10 + 0x6f7U & 0xfffffff0);
              var_33 = var_11 + var_10;
              pvVar10 = (void *)((int)&var_36 + var_10);
            }
            else {
              var_30 = var_4;
              pvVar10 = var_21(&var_28,var_19);
              var_4 = var_30;
            }
            *(void **)(var_33 + -0xc) = pvVar10;
            *(type_4 *)(var_33 + -0x10) = var_3;
            *(type_5 **)(var_33 + -0x14) = local_a4;
            *(type_4 *)(var_33 + -0x18) = var_2;
            *(type_3 *)(var_33 + -0x1c) = var_4;
            *(type_2 *)(var_33 + -0x20) = var_23;
            *(type_9 *)(var_33 + -0x24) = 0x47511;
            var_34(*(type_2 *)(var_33 + -0x20),*(type_3 *)(var_33 + -0x1c),
                              *(type_4 *)(var_33 + -0x18),*(type_3 *)(var_33 + -0x14),
                              *(type_4 *)(var_33 + -0x10),*(type_2 *)(var_33 + -0xc));
            var_35 = var_33;
          }
          if (var_28 != (type_8 *)0x0) {
            *(type_8 **)(var_35 + -0x10) = var_28;
            *(type_9 *)(var_35 + -0x14) = 0x4752b;
            var_29(*(type_8 **)(var_35 + -0x10));
          }
          goto LAB_000471aa;
        }
      }
      var_28 = (type_8 *)0x0;
      var_19 = (var_3 + 8) * 0x10;
      if (var_19 < 0x7f01) {
        local_b8 = (type_5 *)((int)&var_36 + -(var_19 + 0x10));
        var_35 = var_11 + -(var_19 + 0x10);
      }
      else {
        var_30 = var_4;
        local_b8 = (type_5 *)var_21(&var_28,var_19);
        var_4 = var_30;
        var_35 = var_11;
      }
      var_16 = var_3 * 5;
      var_30 = (type_3)(var_2 * 2);
      var_24 = (type_3)(var_3 * 7);
      if (var_27((int)var_30,var_3 * 5) == (int)var_30 + var_3 * -5 < 0) {
        var_19 = ((int)var_24 >> 1) * 4;
        if (var_19 < 0x7f01) {
          var_10 = -(var_19 + 0x1b & 0xfffffff0);
          var_30 = (type_3)((type_5)(var_35 + var_10 + 0xf) & 0xfffffff0);
          var_35 = var_35 + var_10;
        }
        else {
          var_25 = var_4;
          *(type_5 *)(var_35 + -0xc) = var_19;
          *(type_8 ***)(var_35 + -0x10) = &var_28;
          *(type_9 *)(var_35 + -0x14) = 0x47eac;
          var_30 = (type_3)
                     var_21
                               (*(type_8 ***)(var_35 + -0x10),*(size_t *)(var_35 + -0xc))
          ;
          var_4 = var_25;
        }
        local_c8 = (type_5 *)(var_3 * 2);
        if (var_3 < 0x6e) {
          *(type_5 **)(var_35 + -0xc) = local_b8;
          *(type_4 *)(var_35 + -0x10) = var_3;
          *(type_5 **)(var_35 + -0x14) = local_a4;
          *(type_5 **)(var_35 + -0x18) = (type_5 *)(var_3 * 2);
          *(type_3 *)(var_35 + -0x1c) = var_4;
          *(type_2 *)(var_35 + -0x20) = var_23;
          var_25 = var_4;
          *(type_9 *)(var_35 + -0x24) = 0x475ed;
          var_14(*(type_2 *)(var_35 + -0x20),*(type_3 *)(var_35 + -0x1c),
                            *(type_4 *)(var_35 + -0x18),*(type_3 *)(var_35 + -0x14),
                            *(type_4 *)(var_35 + -0x10),*(type_2 *)(var_35 + -0xc));
          var_20 = local_c8;
          local_b4 = (type_3)(var_2 - (int)local_c8);
          local_c4 = (type_2)(var_3 * 8);
          var_23 = var_23 + var_3 * 2;
          var_24 = var_25 + var_3 * 2;
          var_25 = (type_3)(var_3 * 4);
          local_c0 = (void *)((int)var_30 + var_3 * 4);
          if (var_16 == (int)local_b4 * 2 ||
              var_27(var_16,(int)local_b4 * 2) != (int)(var_16 + (int)local_b4 * -2) < 0) {
            var_37 = var_3 * -4;
            var_38 = ((int)local_b4 - (int)local_c8) * 2;
            do {
              *(type_5 **)(var_35 + -0xc) = local_b8;
              *(type_4 *)(var_35 + -0x10) = var_3;
              *(type_5 **)(var_35 + -0x14) = local_a4;
              *(type_5 **)(var_35 + -0x18) = var_20;
              *(type_3 *)(var_35 + -0x1c) = var_24;
              *(type_3 *)(var_35 + -0x20) = var_30;
              var_36 = var_38;
              *(type_9 *)(var_35 + -0x24) = 0x4769a;
              var_14(*(type_2 *)(var_35 + -0x20),*(type_3 *)(var_35 + -0x1c),
                                *(type_4 *)(var_35 + -0x18),*(type_3 *)(var_35 + -0x14),
                                *(type_4 *)(var_35 + -0x10),*(type_2 *)(var_35 + -0xc));
              *(type_4 *)(var_35 + -4) = var_3;
              pmVar11 = local_a0;
              pmVar6 = local_c4;
              *(type_3 *)(var_35 + -8) = var_30;
              *(type_2 *)(var_35 + -0xc) = var_23;
              *(type_2 *)(var_35 + -0x10) = var_23;
              var_24 = (type_3)((int)var_24 + (int)pmVar6);
              local_b4 = (type_3)((int)local_b4 - (int)var_20);
              pcVar4 = (type_6 *)*pmVar11;
              *(type_9 *)(var_35 + -0x14) = 0x476c2;
              var_26 = (*pcVar4)();
              pmVar11 = local_a0;
              var_18 = (type_5 *)((int)var_23 + (int)var_25);
              *(type_5 **)(var_35 + -8) = var_20;
              local_c8 = var_18;
              *(void **)(var_35 + -0xc) = local_c0;
              *(type_5 **)(var_35 + -0x10) = var_18;
              pcVar4 = (type_6 *)pmVar11[10];
              *(type_9 *)(var_35 + -0x14) = 0x476eb;
              (*pcVar4)();
              var_19 = *local_c8;
              *local_c8 = *local_c8 + var_26;
              var_18 = local_c8;
              if (var_17(var_19,var_26)) {
                do {
                  puVar1 = var_18 + 1;
                  var_19 = *puVar1;
                  *puVar1 = *puVar1 + 1;
                  var_18 = var_18 + 1;
                } while (0xfffffffe < var_19);
              }
              var_38 = var_36 + var_37;
              var_23 = (type_2)((int)var_23 + (int)local_c4);
            } while ((int)var_16 <= (int)((int)var_25 + var_38));
          }
        }
        else {
          *(type_5 **)(var_35 + -0xc) = local_b8;
          *(type_4 *)(var_35 + -0x10) = var_3;
          *(type_5 **)(var_35 + -0x14) = local_a4;
          *(type_5 **)(var_35 + -0x18) = local_c8;
          *(type_3 *)(var_35 + -0x1c) = var_4;
          *(type_2 *)(var_35 + -0x20) = var_23;
          var_25 = var_4;
          *(type_9 *)(var_35 + -0x24) = 0x47adb;
          var_39(*(type_2 *)(var_35 + -0x20),*(type_3 *)(var_35 + -0x1c),
                            *(type_4 *)(var_35 + -0x18),*(type_3 *)(var_35 + -0x14),
                            *(type_4 *)(var_35 + -0x10),*(type_2 *)(var_35 + -0xc));
          var_20 = local_c8;
          local_c4 = (type_2)(var_3 * 8);
          local_b4 = (type_3)(var_2 - (int)local_c8);
          var_23 = var_23 + var_3 * 2;
          var_24 = var_25 + var_3 * 2;
          var_25 = (type_3)(var_3 * 4);
          local_c0 = (void *)((int)var_30 + var_3 * 4);
          if (var_16 == (int)local_b4 * 2 ||
              var_27(var_16,(int)local_b4 * 2) != (int)(var_16 + (int)local_b4 * -2) < 0) {
            var_37 = var_3 * -4;
            var_38 = ((int)local_b4 - (int)local_c8) * 2;
            do {
              *(type_5 **)(var_35 + -0xc) = local_b8;
              *(type_4 *)(var_35 + -0x10) = var_3;
              *(type_5 **)(var_35 + -0x14) = local_a4;
              *(type_5 **)(var_35 + -0x18) = var_20;
              *(type_3 *)(var_35 + -0x1c) = var_24;
              *(type_3 *)(var_35 + -0x20) = var_30;
              var_36 = var_38;
              *(type_9 *)(var_35 + -0x24) = 0x47b8a;
              var_39(*(type_2 *)(var_35 + -0x20),*(type_3 *)(var_35 + -0x1c),
                                *(type_4 *)(var_35 + -0x18),*(type_3 *)(var_35 + -0x14),
                                *(type_4 *)(var_35 + -0x10),*(type_2 *)(var_35 + -0xc));
              *(type_4 *)(var_35 + -4) = var_3;
              pmVar11 = local_a0;
              pmVar6 = local_c4;
              *(type_3 *)(var_35 + -8) = var_30;
              *(type_2 *)(var_35 + -0xc) = var_23;
              *(type_2 *)(var_35 + -0x10) = var_23;
              var_24 = (type_3)((int)var_24 + (int)pmVar6);
              local_b4 = (type_3)((int)local_b4 - (int)var_20);
              pcVar4 = (type_6 *)*pmVar11;
              *(type_9 *)(var_35 + -0x14) = 0x47bb2;
              var_26 = (*pcVar4)();
              pmVar11 = local_a0;
              var_18 = (type_5 *)((int)var_25 + (int)var_23);
              *(type_5 **)(var_35 + -8) = var_20;
              local_c8 = var_18;
              *(void **)(var_35 + -0xc) = local_c0;
              *(type_5 **)(var_35 + -0x10) = var_18;
              pcVar4 = (type_6 *)pmVar11[10];
              *(type_9 *)(var_35 + -0x14) = 0x47bda;
              (*pcVar4)();
              var_19 = *local_c8;
              *local_c8 = *local_c8 + var_26;
              var_18 = local_c8;
              if (var_17(var_19,var_26)) {
                do {
                  puVar1 = var_18 + 1;
                  var_19 = *puVar1;
                  *puVar1 = *puVar1 + 1;
                  var_18 = var_18 + 1;
                } while (0xfffffffe < var_19);
              }
              var_38 = var_36 + var_37;
              var_23 = (type_2)((int)var_23 + (int)local_c4);
            } while ((int)var_16 <= (int)((int)var_25 + var_38));
          }
        }
        if ((int)local_b4 < var_3) {
          *(type_3 *)(var_35 + -0x10) = local_b4;
          *(type_3 *)(var_35 + -0x14) = var_24;
          *(type_4 *)(var_35 + -0x18) = var_3;
          *(type_5 **)(var_35 + -0x1c) = local_a4;
          *(type_3 *)(var_35 + -0x20) = var_30;
          *(type_9 *)(var_35 + -0x24) = 0x4775a;
          function_1(*(type_2 *)(var_35 + -0x20),*(type_3 *)(var_35 + -0x1c),
                     *(type_4 *)(var_35 + -0x18),*(type_3 *)(var_35 + -0x14),
                     *(type_4 *)(var_35 + -0x10));
        }
        else {
          *(type_4 *)(var_35 + -0x10) = var_3;
          *(type_5 **)(var_35 + -0x14) = local_a4;
          *(type_3 *)(var_35 + -0x18) = local_b4;
          *(type_3 *)(var_35 + -0x1c) = var_24;
          *(type_3 *)(var_35 + -0x20) = var_30;
          *(type_9 *)(var_35 + -0x24) = 0x47c49;
          function_1(*(type_2 *)(var_35 + -0x20),*(type_3 *)(var_35 + -0x1c),
                     *(type_4 *)(var_35 + -0x18),*(type_3 *)(var_35 + -0x14),
                     *(type_4 *)(var_35 + -0x10));
        }
        pmVar11 = local_a0;
        *(type_4 *)(var_35 + -4) = var_3;
        *(type_3 *)(var_35 + -8) = var_30;
        *(type_2 *)(var_35 + -0xc) = var_23;
        *(type_2 *)(var_35 + -0x10) = var_23;
        pcVar4 = (type_6 *)*pmVar11;
        *(type_9 *)(var_35 + -0x14) = 0x4776e;
        var_30 = (type_3)(*pcVar4)();
        pmVar11 = local_a0;
        var_20 = (type_5 *)((int)var_25 + (int)var_23);
        *(type_3 *)(var_35 + -8) = local_b4;
        local_a4 = var_20;
        *(void **)(var_35 + -0xc) = local_c0;
        *(type_5 **)(var_35 + -0x10) = var_20;
        pcVar4 = (type_6 *)pmVar11[10];
        *(type_9 *)(var_35 + -0x14) = 0x4779b;
        (*pcVar4)();
        var_19 = *local_a4;
        *local_a4 = *local_a4 + (int)var_30;
        var_20 = local_a4;
        if (var_17(var_19,(type_5)var_30)) {
          do {
            var_18 = var_20 + 1;
            var_19 = *var_18;
            *var_18 = *var_18 + 1;
            var_20 = var_20 + 1;
          } while (0xfffffffe < var_19);
        }
        var_25 = (type_3)(var_3 + (int)local_b4);
      }
      else if (var_2 * 6 < (int)var_24) {
        *(type_5 **)(var_35 + -0xc) = local_b8;
        *(type_4 *)(var_35 + -0x10) = var_3;
        *(type_5 **)(var_35 + -0x14) = local_a4;
        *(type_4 *)(var_35 + -0x18) = var_2;
        *(type_3 *)(var_35 + -0x1c) = var_4;
        *(type_2 *)(var_35 + -0x20) = var_23;
        *(type_9 *)(var_35 + -0x24) = 0x47d4a;
        var_40(*(type_2 *)(var_35 + -0x20),*(type_3 *)(var_35 + -0x1c),
                          *(type_4 *)(var_35 + -0x18),*(type_3 *)(var_35 + -0x14),
                          *(type_4 *)(var_35 + -0x10),*(type_2 *)(var_35 + -0xc));
      }
      else if (var_27((int)var_30,var_3 * 3) == (int)var_30 + var_3 * -3 < 0) {
        if (var_2 * 6 < var_3 * 0xb) {
          if (var_2 * 4 < (int)var_24) {
            if (var_3 < 0x6e) goto LAB_00047dab;
          }
          else if (var_3 < 100) goto LAB_00047e74;
          *(type_5 **)(var_35 + -0xc) = local_b8;
          *(type_4 *)(var_35 + -0x10) = var_3;
          *(type_5 **)(var_35 + -0x14) = local_a4;
          *(type_4 *)(var_35 + -0x18) = var_2;
          *(type_3 *)(var_35 + -0x1c) = var_4;
          *(type_2 *)(var_35 + -0x20) = var_23;
          *(type_9 *)(var_35 + -0x24) = 0x47d26;
          var_41(*(type_2 *)(var_35 + -0x20),*(type_3 *)(var_35 + -0x1c),
                            *(type_4 *)(var_35 + -0x18),*(type_3 *)(var_35 + -0x14),
                            *(type_4 *)(var_35 + -0x10),*(type_2 *)(var_35 + -0xc));
        }
        else if (var_3 < 0x6e) {
LAB_00047e74:
          *(type_5 **)(var_35 + -0xc) = local_b8;
          *(type_4 *)(var_35 + -0x10) = var_3;
          *(type_5 **)(var_35 + -0x14) = local_a4;
          *(type_4 *)(var_35 + -0x18) = var_2;
          *(type_3 *)(var_35 + -0x1c) = var_4;
          *(type_2 *)(var_35 + -0x20) = var_23;
          *(type_9 *)(var_35 + -0x24) = 0x47e8e;
          var_14(*(type_2 *)(var_35 + -0x20),*(type_3 *)(var_35 + -0x1c),
                            *(type_4 *)(var_35 + -0x18),*(type_3 *)(var_35 + -0x14),
                            *(type_4 *)(var_35 + -0x10),*(type_2 *)(var_35 + -0xc));
        }
        else {
          *(type_5 **)(var_35 + -0xc) = local_b8;
          *(type_4 *)(var_35 + -0x10) = var_3;
          *(type_5 **)(var_35 + -0x14) = local_a4;
          *(type_4 *)(var_35 + -0x18) = var_2;
          *(type_3 *)(var_35 + -0x1c) = var_4;
          *(type_2 *)(var_35 + -0x20) = var_23;
          *(type_9 *)(var_35 + -0x24) = 0x47e27;
          var_39(*(type_2 *)(var_35 + -0x20),*(type_3 *)(var_35 + -0x1c),
                            *(type_4 *)(var_35 + -0x18),*(type_3 *)(var_35 + -0x14),
                            *(type_4 *)(var_35 + -0x10),*(type_2 *)(var_35 + -0xc));
        }
      }
      else if (var_3 < 100) {
LAB_00047dab:
        *(type_5 **)(var_35 + -0xc) = local_b8;
        *(type_4 *)(var_35 + -0x10) = var_3;
        *(type_5 **)(var_35 + -0x14) = local_a4;
        *(type_4 *)(var_35 + -0x18) = var_2;
        *(type_3 *)(var_35 + -0x1c) = var_4;
        *(type_2 *)(var_35 + -0x20) = var_23;
        *(type_9 *)(var_35 + -0x24) = 0x47dc5;
        var_13(*(type_2 *)(var_35 + -0x20),*(type_3 *)(var_35 + -0x1c),
                          *(type_4 *)(var_35 + -0x18),*(type_3 *)(var_35 + -0x14),
                          *(type_4 *)(var_35 + -0x10),*(type_2 *)(var_35 + -0xc));
      }
      else {
        *(type_5 **)(var_35 + -0xc) = local_b8;
        *(type_4 *)(var_35 + -0x10) = var_3;
        *(type_5 **)(var_35 + -0x14) = local_a4;
        *(type_4 *)(var_35 + -0x18) = var_2;
        *(type_3 *)(var_35 + -0x1c) = var_4;
        *(type_2 *)(var_35 + -0x20) = var_23;
        *(type_9 *)(var_35 + -0x24) = 0x47a39;
        var_42(*(type_2 *)(var_35 + -0x20),*(type_3 *)(var_35 + -0x1c),
                          *(type_4 *)(var_35 + -0x18),*(type_3 *)(var_35 + -0x14),
                          *(type_4 *)(var_35 + -0x10),*(type_2 *)(var_35 + -0xc));
      }
      if (var_28 != (type_8 *)0x0) {
        *(type_8 **)(var_35 + -0x10) = var_28;
        *(type_9 *)(var_35 + -0x14) = 0x47e00;
        var_29(*(type_8 **)(var_35 + -0x10));
      }
      local_a0 = var_25;
      goto LAB_000471aa;
    }
  }
  local_a0 = (type_3)var_9;
  if ((var_2 < 0x1f5) || (var_3 == 1)) {
    amStackY_8010[0x1fc4] = 0x47451;
    (**(type_6 **)(var_9 + 0x68))();
    local_a0 = (type_3)(var_3 + var_2);
    var_35 = var_11;
  }
  else {
    var_23 = var_23 + 500;
    amStackY_8010[0x1fc4] = 0x46f33;
    var_25 = var_4;
    (**(type_6 **)(var_9 + 0x68))();
    var_30 = tp;
    (*(type_6 *)local_a0[10])();
    var_24 = (type_3)(var_3 * 4);
    pmVar11 = (type_3)(var_2 + -500);
    while (500 < (int)pmVar11) {
      amStackY_8010[0x1fc4] = 0x46fa8;
      var_25 = pmVar11;
      (*(type_6 *)local_a0[0x1a])();
      var_43 = (*(type_6 *)*local_a0)();
      var_20 = (type_5 *)((int)var_23 + (int)var_24);
      var_19 = *var_20;
      *var_20 = *var_20 + var_43;
      if (var_17(var_19,var_43)) {
        do {
          var_18 = var_20 + 1;
          var_19 = *var_18;
          *var_18 = *var_18 + 1;
          var_20 = var_20 + 1;
        } while (0xfffffffe < var_19);
      }
      var_23 = var_23 + 500;
      (*(type_6 *)local_a0[10])();
      pmVar11 = var_25 + -0x7d;
    }
    if (var_3 < (int)pmVar11) {
      amStackY_8010[0x1fc4] = 0x47033;
      (*(type_6 *)local_a0[0x1a])();
    }
    else {
      amStackY_8010[0x1fc4] = 0x477f7;
      (*(type_6 *)local_a0[0x1a])();
    }
    var_43 = (*(type_6 *)*local_a0)();
    var_20 = (type_5 *)((int)var_24 + (int)var_23);
    var_19 = *var_20;
    *var_20 = *var_20 + var_43;
    if (var_17(var_19,var_43)) {
      do {
        var_18 = var_20 + 1;
        var_19 = *var_18;
        *var_18 = *var_18 + 1;
        var_20 = var_20 + 1;
      } while (0xfffffffe < var_19);
    }
    local_a0 = (type_3)(var_3 + (int)pmVar11);
    var_35 = var_11;
  }
LAB_000471aa:
  if (var_44 == *(int *)(var_1 + 0x14)) {
    return var_23[(int)local_a0 + -1];
  }
                    /* WARNING: Subroutine does not return */
  *(type_9 *)(var_35 + -4) = 0x47f0b;
  var_45();
}


(translation_unit (function_definition type: (type_identifier) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type)))) body: (compound_statement (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (array_declarator declarator: (identifier) size: (number_literal)))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (array_declarator declarator: (identifier) size: (number_literal)))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (unary_expression argument: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) right: (number_literal))) right: (number_literal)) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))) right: (identifier))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))) right: (identifier))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))) right: (identifier))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (unary_expression argument: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (if_statement condition: (parenthesized_expression (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (if_statement condition: (parenthesized_expression (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (identifier))))))) (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) right: (binary_expression left: (number_literal) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal)) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) right: (number_literal))) right: (number_literal)))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (if_statement condition: (parenthesized_expression (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (if_statement condition: (parenthesized_expression (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) right: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) right: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (unary_expression argument: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))) right: (identifier))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (unary_expression argument: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)) right: (number_literal))) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))) right: (identifier))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) right: (number_literal)))) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (unary_expression argument: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (unary_expression argument: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (unary_expression argument: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) right: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) right: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) right: (number_literal))) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (unary_expression argument: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) right: (number_literal)))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (if_statement condition: (parenthesized_expression (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)))) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (number_literal)))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (if_statement condition: (parenthesized_expression (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))))) (goto_statement label: (statement_identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (if_statement condition: (parenthesized_expression (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) right: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) right: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (goto_statement label: (statement_identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (while_statement condition: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (comma_expression left: (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier)) right: (comma_expression left: (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier)) right: (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) body: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (if_statement condition: (parenthesized_expression (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) arguments: (argument_list)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) arguments: (argument_list)))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) (if_statement condition: (parenthesized_expression (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) consequence: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (return_statement (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))))))

undefined4 MASKED(void)

{
  uint *puVar1;
  int iVar2;
  code *pcVar3;
  int iVar4;
  int iVar5;
  undefined4 *puVar6;
  int iVar7;
  uint uVar8;
  uint uVar9;
  undefined4 uVar10;
  undefined1 *puVar11;
  undefined1 *puVar12;
  uint *puVar13;
  int iVar14;
  int unaff_EBX;
  undefined1 *puVar15;
  int iVar16;
  undefined1 *puVar17;
  undefined1 *puVar18;
  undefined1 *puVar19;
  int in_GS_OFFSET;
  uint auStack_8014 [8133];
  undefined1 *apuStack_100 [2];
  int iStack_f8;
  undefined1 *apuStack_f4 [4];
  uint uStack_e4;
  undefined1 auStack_e0 [204];
  undefined4 uStack_14;
  
  puVar17 = &stack0xfffffffc;
  uStack_14 = 0x46e9b;
  entry();
  puVar15 = auStack_e0;
  puVar11 = auStack_e0;
  puVar19 = *(undefined1 **)(puVar17 + 8);
  puVar12 = *(undefined1 **)(puVar17 + 0xc);
  puVar18 = *(undefined1 **)(puVar17 + 0x18);
  *(undefined4 *)(puVar17 + -0xa0) = *(undefined4 *)(puVar17 + 0x14);
  *(undefined4 *)(puVar17 + -0x1c) = *(undefined4 *)(in_GS_OFFSET + 0x14);
  if (*(undefined1 **)(puVar17 + 0x10) == puVar18) {
    *(int *)(puVar17 + -0x9c) = *(int *)(puVar17 + 0x10) * 2;
    apuStack_f4[1] = puVar19;
    apuStack_f4[2] = puVar12;
    if (puVar12 == *(undefined1 **)(puVar17 + -0xa0)) {
      apuStack_f4[3] = *(undefined1 **)(puVar17 + 0x10);
      apuStack_f4[0] = (undefined1 *)0x477dd;
      __gmpn_sqr();
      puVar11 = auStack_e0;
    }
    else {
      uStack_e4 = *(uint *)(puVar17 + 0x10);
      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa0);
      apuStack_f4[0] = (undefined1 *)0x471a7;
      MASKED_n();
      puVar11 = auStack_e0;
    }
    goto LAB_000471aa;
  }
  if (**(int **)(unaff_EBX + 0x56ebd) == 0) {
    *(int **)(puVar17 + -0xa8) = *(int **)(unaff_EBX + 0x56ebd);
    *(undefined1 **)(puVar17 + -0xa4) = puVar12;
    uStack_e4 = 0x47081;
    __gmpn_cpuvec_init();
    puVar12 = *(undefined1 **)(puVar17 + -0xa4);
    iVar2 = *(int *)(*(int *)(unaff_EBX + 0x56ef9) + 0x94);
    *(int *)(puVar17 + -0x9c) = *(int *)(unaff_EBX + 0x56ef9);
    if (iVar2 <= (int)puVar18) {
      if (**(int **)(puVar17 + -0xa8) == 0) {
        *(undefined1 **)(puVar17 + -0xa4) = puVar12;
        uStack_e4 = 0x470b6;
        __gmpn_cpuvec_init();
        puVar12 = *(undefined1 **)(puVar17 + -0xa4);
      }
      goto LAB_000470c0;
    }
  }
  else {
    iVar2 = *(int *)(unaff_EBX + 0x56ef9);
    *(int *)(puVar17 + -0x9c) = iVar2;
    if (*(int *)(iVar2 + 0x94) <= (int)puVar18) {
LAB_000470c0:
      if ((int)puVar18 < *(int *)(*(int *)(puVar17 + -0x9c) + 0x98)) {
        *(int *)(puVar17 + -0xa4) = (int)puVar18 * 8;
        *(int *)(puVar17 + -0xc0) = (int)puVar18 * 4;
        *(int *)(puVar17 + -0xcc) = (int)puVar18 * 5;
        iVar2 = -((((int)puVar18 * 9) / 2) * 4 + 0x11bU & 0xfffffff0);
        *(undefined1 **)(puVar17 + -0xbc) = auStack_e0 + iVar2;
        *(int *)(puVar17 + -0xb4) = (int)puVar18 * 2;
        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 3;
        if (*(int *)(puVar17 + 0x10) < (int)puVar18 * 3) {
          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);
          if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xcc)) {
            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);
            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;
            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);
            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;
            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;
            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47aaa;
            __gmpn_toom22_mul();
            puVar11 = auStack_e0 + iVar2;
          }
          else if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xa4) - (int)puVar18) {
            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);
            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;
            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);
            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;
            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;
            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x4717a;
            __gmpn_toom32_mul();
            puVar11 = auStack_e0 + iVar2;
          }
          else {
            *(undefined4 *)((int)apuStack_f4 + iVar2 + 8) = *(undefined4 *)(puVar17 + -0xbc);
            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;
            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);
            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;
            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;
            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47a7a;
            __gmpn_toom42_mul();
            puVar11 = auStack_e0 + iVar2;
          }
        }
        else {
          *(undefined1 **)(puVar17 + -0xb0) = puVar12;
          iVar4 = -((int)puVar18 * 0x10 + 0x10);
          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);
          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;
          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xb4);
          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x1c) = puVar12;
          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x20) = puVar19;
          *(undefined1 **)(puVar17 + -0xac) = auStack_e0 + iVar4 + iVar2;
          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x4783a;
          __gmpn_toom42_mul();
          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xb4);
          puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);
          *(int *)(puVar17 + -0xa8) = iVar14;
          *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + *(int *)(puVar17 + -0xa4);
          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xc0);
          if (*(int *)(puVar17 + -0xc4) <= iVar14) {
            *(undefined1 **)(puVar17 + 0x18) = puVar18;
            iVar5 = *(int *)(puVar17 + -0xb4);
            do {
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x10) = *(undefined4 *)(puVar17 + 0x18);
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0)
              ;
              *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar5;
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0)
              ;
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac)
              ;
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x478b4;
              __gmpn_toom42_mul();
              puVar6 = *(undefined4 **)(puVar17 + -0x9c);
              iVar14 = *(int *)(puVar17 + -0xa4);
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -4) = *(undefined4 *)(puVar17 + 0x18);
              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) + iVar14;
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);
              *(int *)(puVar17 + -0xa8) = *(int *)(puVar17 + -0xa8) - iVar5;
              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;
              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;
              pcVar3 = (code *)*puVar6;
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x478dc;
              uVar10 = (*pcVar3)();
              iVar14 = *(int *)(puVar17 + -0x9c);
              *(undefined4 *)(puVar17 + -0xb8) = uVar10;
              iVar7 = *(int *)(puVar17 + -0xc0);
              *(int *)(auStack_e0 + iVar4 + iVar2 + -8) = iVar5;
              *(undefined1 **)(puVar17 + -0xb4) = puVar19 + iVar7;
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);
              *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19 + iVar7;
              pcVar3 = *(code **)(iVar14 + 0x28);
              *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x47905;
              (*pcVar3)();
              puVar13 = *(uint **)(puVar17 + -0xb4);
              uVar8 = *(uint *)(puVar17 + -0xb8);
              uVar9 = *puVar13;
              *puVar13 = *puVar13 + uVar8;
              if (CARRY4(uVar9,uVar8)) {
                do {
                  puVar1 = puVar13 + 1;
                  uVar9 = *puVar1;
                  *puVar1 = *puVar1 + 1;
                  puVar13 = puVar13 + 1;
                } while (0xfffffffe < uVar9);
              }
              puVar19 = puVar19 + *(int *)(puVar17 + -0xa4);
              iVar14 = *(int *)(puVar17 + -0xa8);
            } while (*(int *)(puVar17 + -0xc4) <= iVar14);
            puVar18 = *(undefined1 **)(puVar17 + 0x18);
          }
          if (iVar14 * 4 < *(int *)(puVar17 + -0xcc)) {
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);
            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
            *(int *)(auStack_e0 + iVar4 + iVar2 + -0x18) = iVar14;
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47cd2;
            __gmpn_toom22_mul();
          }
          else if (iVar14 * 4 < (int)puVar18 * 7) {
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);
            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47987;
            __gmpn_toom32_mul();
          }
          else {
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);
            *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar18;
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x18) = *(undefined4 *)(puVar17 + -0xa8);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x1c) = *(undefined4 *)(puVar17 + -0xb0);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x20) = *(undefined4 *)(puVar17 + -0xac);
            *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x24) = 0x47ca7;
            __gmpn_toom42_mul();
          }
          puVar6 = *(undefined4 **)(puVar17 + -0x9c);
          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -4) = puVar18;
          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xac);
          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0xc) = puVar19;
          *(undefined1 **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar19;
          pcVar3 = (code *)*puVar6;
          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x4799b;
          uVar10 = (*pcVar3)();
          *(undefined4 *)(puVar17 + -0xa0) = uVar10;
          iVar14 = *(int *)(puVar17 + -0x9c);
          puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xc0));
          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -8) = *(undefined4 *)(puVar17 + -0xa8);
          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0xc) = *(undefined4 *)(puVar17 + -200);
          *(uint **)(auStack_e0 + iVar4 + iVar2 + -0x10) = puVar13;
          pcVar3 = *(code **)(iVar14 + 0x28);
          *(undefined4 *)(auStack_e0 + iVar4 + iVar2 + -0x14) = 0x479c2;
          (*pcVar3)();
          uVar8 = *(uint *)(puVar17 + -0xa0);
          uVar9 = *puVar13;
          *puVar13 = *puVar13 + uVar8;
          if (CARRY4(uVar9,uVar8)) {
            do {
              puVar1 = puVar13 + 1;
              uVar9 = *puVar1;
              *puVar1 = *puVar1 + 1;
              puVar13 = puVar13 + 1;
            } while (0xfffffffe < uVar9);
          }
          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xa8);
          puVar11 = auStack_e0 + iVar4 + iVar2;
        }
        goto LAB_000471aa;
      }
      *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + 0x10);
      if ((3999 < (int)(puVar18 + *(int *)(puVar17 + 0x10))) &&
         (*(int *)(puVar17 + -0xa4) = (int)puVar18 * 3, 1999 < (int)puVar18 * 3)) {
        iVar2 = (int)puVar18 * 8;
        if (iVar2 - *(int *)(puVar17 + 0x10) == 0 || iVar2 < *(int *)(puVar17 + 0x10)) {
          *(int *)(puVar17 + -0xb8) = iVar2;
          *(undefined1 **)(puVar17 + -0xac) = puVar12;
          *(undefined4 *)(puVar17 + -0x94) = 0;
          apuStack_f4[2] = (undefined1 *)(((int)puVar18 * 9 >> 1) << 2);
          apuStack_f4[1] = puVar17 + -0x94;
          apuStack_f4[0] = (undefined1 *)0x47238;
          uVar10 = __gmp_tmp_reentrant_alloc();
          apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);
          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);
          iStack_f8 = *(int *)(puVar17 + -0xa4);
          apuStack_100[0] = puVar19;
          apuStack_f4[1] = puVar18;
          *(undefined4 *)(puVar17 + -0xa8) = uVar10;
          auStack_8014[0x1fc4] = 0x4725a;
          __gmpn_nussbaumer_mul();
          *(int *)(puVar17 + -0xbc) = (int)puVar18 * 4;
          *(int *)(puVar17 + -0xc4) = (int)puVar18 * -3;
          iVar14 = (int)puVar18 * -3 + *(int *)(puVar17 + 0x10);
          *(int *)(puVar17 + -0xb4) = iVar14;
          iVar2 = *(int *)(puVar17 + -0xa4) * 4;
          puVar19 = puVar19 + iVar2;
          *(int *)(puVar17 + -0xb0) = iVar2;
          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar2;
          *(int *)(puVar17 + -200) = *(int *)(puVar17 + -0xb8) - (int)puVar18;
          if (iVar14 * 2 < *(int *)(puVar17 + -0xb8) - (int)puVar18) {
            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);
          }
          else {
            *(undefined1 **)(puVar17 + 0x18) = puVar18;
            *(int *)(puVar17 + -0xc0) = *(int *)(puVar17 + -0xa8) + *(int *)(puVar17 + -0xbc);
            do {
              apuStack_f4[1] = *(undefined1 **)(puVar17 + 0x18);
              apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);
              iStack_f8 = *(int *)(puVar17 + -0xa4);
              apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);
              apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);
              auStack_8014[0x1fc4] = 0x47303;
              __gmpn_nussbaumer_mul();
              uStack_e4 = *(uint *)(puVar17 + 0x18);
              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);
              iVar14 = iVar14 + *(int *)(puVar17 + -0xc4);
              apuStack_f4[1] = puVar19;
              apuStack_f4[2] = puVar19;
              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + *(int *)(puVar17 + -0xb0);
              apuStack_f4[0] = (undefined1 *)0x4732b;
              uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();
              *(undefined4 *)(puVar17 + -0xb8) = uVar10;
              apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);
              apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);
              *(undefined1 **)(puVar17 + -0xb4) = apuStack_f4[1];
              apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);
              apuStack_f4[0] = (undefined1 *)0x47359;
              (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();
              puVar13 = *(uint **)(puVar17 + -0xb4);
              uVar8 = *(uint *)(puVar17 + -0xb8);
              uVar9 = *puVar13;
              *puVar13 = *puVar13 + uVar8;
              if (CARRY4(uVar9,uVar8)) {
                do {
                  puVar1 = puVar13 + 1;
                  uVar9 = *puVar1;
                  *puVar1 = *puVar1 + 1;
                  puVar13 = puVar13 + 1;
                } while (0xfffffffe < uVar9);
              }
              puVar19 = puVar19 + *(int *)(puVar17 + -0xb0);
              iVar2 = *(int *)(puVar17 + -200);
            } while (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0);
            *(int *)(puVar17 + -0xb4) = iVar14;
            puVar18 = *(undefined1 **)(puVar17 + 0x18);
          }
          apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xb4);
          if ((int)apuStack_f4[1] < (int)puVar18) {
            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xac);
            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);
            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);
            auStack_8014[0x1fc4] = 0x473bd;
            iStack_f8 = (int)puVar18;
            MASKED();
          }
          else {
            apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);
            iStack_f8 = *(int *)(puVar17 + -0xb4);
            apuStack_100[1] = *(undefined1 **)(puVar17 + -0xac);
            apuStack_100[0] = *(undefined1 **)(puVar17 + -0xa8);
            auStack_8014[0x1fc4] = 0x47d73;
            apuStack_f4[1] = puVar18;
            MASKED();
          }
          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa8);
          apuStack_f4[0] = (undefined1 *)0x473d1;
          apuStack_f4[1] = puVar19;
          apuStack_f4[2] = puVar19;
          uStack_e4 = (uint)puVar18;
          uVar10 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();
          *(undefined4 *)(puVar17 + -0xa4) = uVar10;
          apuStack_f4[1] = puVar19 + *(int *)(puVar17 + -0xbc);
          apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xb4);
          *(undefined1 **)(puVar17 + -0xa0) = apuStack_f4[1];
          apuStack_f4[2] = *(undefined1 **)(puVar17 + -0xc0);
          apuStack_f4[0] = (undefined1 *)0x473fe;
          (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();
          puVar13 = *(uint **)(puVar17 + -0xa0);
          uVar8 = *(uint *)(puVar17 + -0xa4);
          uVar9 = *puVar13;
          *puVar13 = *puVar13 + uVar8;
          if (CARRY4(uVar9,uVar8)) {
            do {
              puVar1 = puVar13 + 1;
              uVar9 = *puVar1;
              *puVar1 = *puVar1 + 1;
              puVar13 = puVar13 + 1;
            } while (0xfffffffe < uVar9);
          }
          if (*(undefined1 **)(puVar17 + -0x94) != (undefined1 *)0x0) {
            apuStack_f4[0] = (undefined1 *)0x47eda;
            apuStack_f4[1] = *(undefined1 **)(puVar17 + -0x94);
            __gmp_tmp_reentrant_free();
          }
          *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + -0xb4);
          puVar11 = auStack_e0;
        }
        else {
          apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);
          iStack_f8 = *(int *)(puVar17 + 0x10);
          auStack_8014[0x1fc4] = 0x47c6c;
          apuStack_100[0] = puVar19;
          apuStack_100[1] = puVar12;
          apuStack_f4[1] = puVar18;
          __gmpn_nussbaumer_mul();
          *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);
        }
        goto LAB_000471aa;
      }
      if (299 < (int)puVar18) {
        *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 3 + 0xc;
        if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 4) !=
            *(int *)(puVar17 + -0xa4) + (int)puVar18 * -4 < 0) {
          *(undefined4 *)(puVar17 + -0x94) = 0;
          uVar9 = *(uint *)(puVar17 + -0xa8);
          *(uint *)(puVar17 + -0x9c) = uVar9;
          if ((int)puVar18 < 0x15e) {
            iVar2 = -(*(int *)(puVar17 + 0x10) * 0xc + 0x9bU & 0xfffffff0);
            puVar11 = auStack_e0 + iVar2;
            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;
            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;
            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);
            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;
            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;
            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47da3;
            __gmpn_toom44_mul();
          }
          else if ((int)puVar18 < 0x1c2) {
            iVar2 = -(((uVar9 / 10) * 3 + 3) * 0x10 + 0x610);
            puVar11 = auStack_e0 + iVar2;
            *(undefined1 **)((int)apuStack_f4 + iVar2 + 8) = auStack_e0 + iVar2;
            *(undefined1 **)((int)apuStack_f4 + iVar2 + 4) = puVar18;
            *(undefined4 *)((int)apuStack_f4 + iVar2) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)((int)&iStack_f8 + iVar2) = *(undefined4 *)(puVar17 + 0x10);
            *(undefined1 **)((int)apuStack_100 + iVar2 + 4) = puVar12;
            *(undefined1 **)((int)apuStack_100 + iVar2) = puVar19;
            *(undefined4 *)((int)auStack_8014 + iVar2 + 0x7f10) = 0x47e63;
            __gmpn_toom6h_mul();
          }
          else {
            iVar2 = ((int)((uVar9 / 0xe + 1) * 0x78) >> 3) * 4;
            puVar11 = (undefined1 *)(iVar2 + 0x6dc);
            if (puVar11 < (undefined1 *)0x7f01) {
              iVar2 = -(iVar2 + 0x6f7U & 0xfffffff0);
              puVar15 = auStack_e0 + iVar2;
              puVar11 = auStack_e0 + iVar2;
            }
            else {
              *(undefined1 **)(puVar17 + -0xa4) = puVar12;
              apuStack_f4[1] = puVar17 + -0x94;
              apuStack_f4[0] = (undefined1 *)0x47ef8;
              apuStack_f4[2] = puVar11;
              puVar11 = (undefined1 *)__gmp_tmp_reentrant_alloc();
              puVar12 = *(undefined1 **)(puVar17 + -0xa4);
            }
            *(undefined1 **)(puVar15 + -0xc) = puVar11;
            *(undefined1 **)(puVar15 + -0x10) = puVar18;
            *(undefined4 *)(puVar15 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)(puVar15 + -0x18) = *(undefined4 *)(puVar17 + 0x10);
            *(undefined1 **)(puVar15 + -0x1c) = puVar12;
            *(undefined1 **)(puVar15 + -0x20) = puVar19;
            *(undefined4 *)(puVar15 + -0x24) = 0x47511;
            __gmpn_toom8h_mul();
            puVar11 = puVar15;
          }
          if (*(int *)(puVar17 + -0x94) != 0) {
            *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);
            *(undefined4 *)(puVar11 + -0x14) = 0x4752b;
            __gmp_tmp_reentrant_free();
          }
          goto LAB_000471aa;
        }
      }
      *(undefined4 *)(puVar17 + -0x94) = 0;
      puVar11 = (undefined1 *)((int)(puVar18 + 8) * 0x10);
      if (puVar11 < (undefined1 *)0x7f01) {
        *(undefined1 **)(puVar17 + -0xb4) = auStack_e0 + -(int)(puVar11 + 0x10);
        puVar11 = auStack_e0 + -(int)(puVar11 + 0x10);
      }
      else {
        *(undefined1 **)(puVar17 + -0xa4) = puVar12;
        apuStack_f4[1] = puVar17 + -0x94;
        apuStack_f4[0] = (undefined1 *)0x47de3;
        apuStack_f4[2] = puVar11;
        uVar10 = __gmp_tmp_reentrant_alloc();
        puVar12 = *(undefined1 **)(puVar17 + -0xa4);
        *(undefined4 *)(puVar17 + -0xb4) = uVar10;
        puVar11 = auStack_e0;
      }
      *(int *)(puVar17 + -0xb8) = (int)puVar18 * 5;
      *(int *)(puVar17 + -0xa4) = *(int *)(puVar17 + 0x10) * 2;
      *(int *)(puVar17 + -0xac) = (int)puVar18 * 7;
      if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 5) ==
          *(int *)(puVar17 + -0xa4) + (int)puVar18 * -5 < 0) {
        uVar9 = ((int)puVar18 * 7 >> 1) * 4;
        if (uVar9 < 0x7f01) {
          iVar2 = -(uVar9 + 0x1b & 0xfffffff0);
          iVar16 = (int)puVar11 + iVar2;
          puVar11 = puVar11 + iVar2;
          *(int *)(puVar17 + -0xa4) = iVar16;
        }
        else {
          *(undefined1 **)(puVar17 + -0xa8) = puVar12;
          *(uint *)(puVar11 + -0xc) = uVar9;
          *(undefined1 **)(puVar11 + -0x10) = puVar17 + -0x94;
          *(undefined4 *)(puVar11 + -0x14) = 0x47eac;
          uVar10 = __gmp_tmp_reentrant_alloc();
          puVar12 = *(undefined1 **)(puVar17 + -0xa8);
          *(undefined4 *)(puVar17 + -0xa4) = uVar10;
        }
        *(int *)(puVar17 + -0xc4) = (int)puVar18 * 2;
        if ((int)puVar18 < 0x6e) {
          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
          *(undefined1 **)(puVar11 + -0x10) = puVar18;
          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
          *(int *)(puVar11 + -0x18) = (int)puVar18 * 2;
          *(undefined1 **)(puVar11 + -0x1c) = puVar12;
          *(undefined1 **)(puVar11 + -0x20) = puVar19;
          *(undefined1 **)(puVar17 + -0xa8) = puVar12;
          *(undefined4 *)(puVar11 + -0x24) = 0x475ed;
          __gmpn_toom42_mul();
          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);
          *(int *)(puVar17 + -0xb0) = iVar14;
          iVar2 = (int)puVar18 * 8;
          *(int *)(puVar17 + -0xc0) = iVar2;
          puVar19 = puVar19 + iVar2;
          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + iVar2;
          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;
          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;
          iVar2 = *(int *)(puVar17 + -0xb8);
          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {
            iVar2 = *(int *)(puVar17 + -0xc4);
            *(undefined1 **)(puVar17 + 0x18) = puVar18;
            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;
            iVar14 = (*(int *)(puVar17 + -0xb0) - iVar2) * 2;
            do {
              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);
              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
              *(int *)(puVar11 + -0x18) = iVar2;
              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);
              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);
              *(int *)(puVar17 + -0xcc) = iVar14;
              *(undefined4 *)(puVar11 + -0x24) = 0x4769a;
              __gmpn_toom42_mul();
              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);
              puVar6 = *(undefined4 **)(puVar17 + -0x9c);
              iVar14 = *(int *)(puVar17 + -0xc0);
              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);
              *(undefined1 **)(puVar11 + -0xc) = puVar19;
              *(undefined1 **)(puVar11 + -0x10) = puVar19;
              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;
              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;
              pcVar3 = (code *)*puVar6;
              *(undefined4 *)(puVar11 + -0x14) = 0x476c2;
              uVar10 = (*pcVar3)();
              iVar14 = *(int *)(puVar17 + -0xa8);
              *(undefined4 *)(puVar17 + -200) = uVar10;
              iVar4 = *(int *)(puVar17 + -0x9c);
              *(int *)(puVar11 + -8) = iVar2;
              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;
              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);
              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;
              pcVar3 = *(code **)(iVar4 + 0x28);
              *(undefined4 *)(puVar11 + -0x14) = 0x476eb;
              (*pcVar3)();
              puVar13 = *(uint **)(puVar17 + -0xc4);
              uVar8 = *(uint *)(puVar17 + -200);
              uVar9 = *puVar13;
              *puVar13 = *puVar13 + uVar8;
              if (CARRY4(uVar9,uVar8)) {
                do {
                  puVar1 = puVar13 + 1;
                  uVar9 = *puVar1;
                  *puVar1 = *puVar1 + 1;
                  puVar13 = puVar13 + 1;
                } while (0xfffffffe < uVar9);
              }
              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);
              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);
            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);
LAB_0004772d:
            puVar18 = *(undefined1 **)(puVar17 + 0x18);
          }
        }
        else {
          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
          *(undefined1 **)(puVar11 + -0x10) = puVar18;
          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xc4);
          *(undefined1 **)(puVar11 + -0x1c) = puVar12;
          *(undefined1 **)(puVar11 + -0x20) = puVar19;
          *(undefined1 **)(puVar17 + -0xa8) = puVar12;
          *(undefined4 *)(puVar11 + -0x24) = 0x47adb;
          __gmpn_toom63_mul();
          *(int *)(puVar17 + -0xc0) = (int)puVar18 * 8;
          iVar14 = *(int *)(puVar17 + 0x10) - *(int *)(puVar17 + -0xc4);
          *(int *)(puVar17 + -0xb0) = iVar14;
          puVar19 = puVar19 + (int)puVar18 * 8;
          *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xa8) + (int)puVar18 * 8;
          *(int *)(puVar17 + -0xa8) = (int)puVar18 * 4;
          *(int *)(puVar17 + -0xbc) = *(int *)(puVar17 + -0xa4) + (int)puVar18 * 4;
          iVar2 = *(int *)(puVar17 + -0xb8);
          if (iVar2 == iVar14 * 2 || SBORROW4(iVar2,iVar14 * 2) != iVar2 + iVar14 * -2 < 0) {
            iVar2 = *(int *)(puVar17 + -0xc4);
            *(undefined1 **)(puVar17 + 0x18) = puVar18;
            *(int *)(puVar17 + -0xd0) = (int)puVar18 * -4;
            iVar14 = (iVar14 - iVar2) * 2;
            do {
              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
              *(undefined4 *)(puVar11 + -0x10) = *(undefined4 *)(puVar17 + 0x18);
              *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
              *(int *)(puVar11 + -0x18) = iVar2;
              *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);
              *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);
              *(int *)(puVar17 + -0xcc) = iVar14;
              *(undefined4 *)(puVar11 + -0x24) = 0x47b8a;
              __gmpn_toom63_mul();
              *(undefined4 *)(puVar11 + -4) = *(undefined4 *)(puVar17 + 0x18);
              puVar6 = *(undefined4 **)(puVar17 + -0x9c);
              iVar14 = *(int *)(puVar17 + -0xc0);
              *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);
              *(undefined1 **)(puVar11 + -0xc) = puVar19;
              *(undefined1 **)(puVar11 + -0x10) = puVar19;
              *(int *)(puVar17 + -0xac) = *(int *)(puVar17 + -0xac) + iVar14;
              *(int *)(puVar17 + -0xb0) = *(int *)(puVar17 + -0xb0) - iVar2;
              pcVar3 = (code *)*puVar6;
              *(undefined4 *)(puVar11 + -0x14) = 0x47bb2;
              uVar10 = (*pcVar3)();
              iVar14 = *(int *)(puVar17 + -0xa8);
              *(undefined4 *)(puVar17 + -200) = uVar10;
              iVar4 = *(int *)(puVar17 + -0x9c);
              *(int *)(puVar11 + -8) = iVar2;
              *(undefined1 **)(puVar17 + -0xc4) = puVar19 + iVar14;
              *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);
              *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar14;
              pcVar3 = *(code **)(iVar4 + 0x28);
              *(undefined4 *)(puVar11 + -0x14) = 0x47bda;
              (*pcVar3)();
              puVar13 = *(uint **)(puVar17 + -0xc4);
              uVar8 = *(uint *)(puVar17 + -200);
              uVar9 = *puVar13;
              *puVar13 = *puVar13 + uVar8;
              if (CARRY4(uVar9,uVar8)) {
                do {
                  puVar1 = puVar13 + 1;
                  uVar9 = *puVar1;
                  *puVar1 = *puVar1 + 1;
                  puVar13 = puVar13 + 1;
                } while (0xfffffffe < uVar9);
              }
              iVar14 = *(int *)(puVar17 + -0xcc) + *(int *)(puVar17 + -0xd0);
              puVar19 = puVar19 + *(int *)(puVar17 + -0xc0);
            } while (*(int *)(puVar17 + -0xb8) <= *(int *)(puVar17 + -0xa8) + iVar14);
            goto LAB_0004772d;
          }
        }
        if (*(int *)(puVar17 + -0xb0) < (int)puVar18) {
          *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0xb0);
          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xac);
          *(undefined1 **)(puVar11 + -0x18) = puVar18;
          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xa0);
          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);
          *(undefined4 *)(puVar11 + -0x24) = 0x4775a;
          MASKED();
        }
        else {
          *(undefined1 **)(puVar11 + -0x10) = puVar18;
          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + -0xb0);
          *(undefined4 *)(puVar11 + -0x1c) = *(undefined4 *)(puVar17 + -0xac);
          *(undefined4 *)(puVar11 + -0x20) = *(undefined4 *)(puVar17 + -0xa4);
          *(undefined4 *)(puVar11 + -0x24) = 0x47c49;
          MASKED();
        }
        puVar6 = *(undefined4 **)(puVar17 + -0x9c);
        *(undefined1 **)(puVar11 + -4) = puVar18;
        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xa4);
        *(undefined1 **)(puVar11 + -0xc) = puVar19;
        *(undefined1 **)(puVar11 + -0x10) = puVar19;
        pcVar3 = (code *)*puVar6;
        *(undefined4 *)(puVar11 + -0x14) = 0x4776e;
        uVar10 = (*pcVar3)();
        iVar2 = *(int *)(puVar17 + -0xa8);
        *(undefined4 *)(puVar17 + -0xa4) = uVar10;
        iVar14 = *(int *)(puVar17 + -0x9c);
        *(undefined4 *)(puVar11 + -8) = *(undefined4 *)(puVar17 + -0xb0);
        *(undefined1 **)(puVar17 + -0xa0) = puVar19 + iVar2;
        *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xbc);
        *(undefined1 **)(puVar11 + -0x10) = puVar19 + iVar2;
        pcVar3 = *(code **)(iVar14 + 0x28);
        *(undefined4 *)(puVar11 + -0x14) = 0x4779b;
        (*pcVar3)();
        puVar13 = *(uint **)(puVar17 + -0xa0);
        uVar8 = *(uint *)(puVar17 + -0xa4);
        uVar9 = *puVar13;
        *puVar13 = *puVar13 + uVar8;
        if (CARRY4(uVar9,uVar8)) {
          do {
            puVar1 = puVar13 + 1;
            uVar9 = *puVar1;
            *puVar1 = *puVar1 + 1;
            puVar13 = puVar13 + 1;
          } while (0xfffffffe < uVar9);
        }
        *(undefined1 **)(puVar17 + -0xa8) = puVar18 + *(int *)(puVar17 + -0xb0);
      }
      else {
        iVar2 = (*(int *)(puVar17 + -0xa4) + *(int *)(puVar17 + 0x10)) * 2;
        if (iVar2 < *(int *)(puVar17 + -0xac)) {
          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
          *(undefined1 **)(puVar11 + -0x10) = puVar18;
          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);
          *(undefined1 **)(puVar11 + -0x1c) = puVar12;
          *(undefined1 **)(puVar11 + -0x20) = puVar19;
          *(undefined4 *)(puVar11 + -0x24) = 0x47d4a;
          __gmpn_toom33_mul();
        }
        else if (SBORROW4(*(int *)(puVar17 + -0xa4),(int)puVar18 * 3) ==
                 *(int *)(puVar17 + -0xa4) + (int)puVar18 * -3 < 0) {
          if (iVar2 < (int)(puVar18 + *(int *)(puVar17 + -0xb8) * 2)) {
            if (*(int *)(puVar17 + 0x10) * 4 < *(int *)(puVar17 + -0xac)) {
              if ((int)puVar18 < 0x6e) goto LAB_00047dab;
            }
            else if ((int)puVar18 < 100) goto LAB_00047e74;
            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
            *(undefined1 **)(puVar11 + -0x10) = puVar18;
            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);
            *(undefined1 **)(puVar11 + -0x1c) = puVar12;
            *(undefined1 **)(puVar11 + -0x20) = puVar19;
            *(undefined4 *)(puVar11 + -0x24) = 0x47d26;
            __gmpn_toom53_mul();
          }
          else if ((int)puVar18 < 0x6e) {
LAB_00047e74:
            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
            *(undefined1 **)(puVar11 + -0x10) = puVar18;
            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);
            *(undefined1 **)(puVar11 + -0x1c) = puVar12;
            *(undefined1 **)(puVar11 + -0x20) = puVar19;
            *(undefined4 *)(puVar11 + -0x24) = 0x47e8e;
            __gmpn_toom42_mul();
          }
          else {
            *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
            *(undefined1 **)(puVar11 + -0x10) = puVar18;
            *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
            *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);
            *(undefined1 **)(puVar11 + -0x1c) = puVar12;
            *(undefined1 **)(puVar11 + -0x20) = puVar19;
            *(undefined4 *)(puVar11 + -0x24) = 0x47e27;
            __gmpn_toom63_mul();
          }
        }
        else if ((int)puVar18 < 100) {
LAB_00047dab:
          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
          *(undefined1 **)(puVar11 + -0x10) = puVar18;
          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);
          *(undefined1 **)(puVar11 + -0x1c) = puVar12;
          *(undefined1 **)(puVar11 + -0x20) = puVar19;
          *(undefined4 *)(puVar11 + -0x24) = 0x47dc5;
          __gmpn_toom32_mul();
        }
        else {
          *(undefined4 *)(puVar11 + -0xc) = *(undefined4 *)(puVar17 + -0xb4);
          *(undefined1 **)(puVar11 + -0x10) = puVar18;
          *(undefined4 *)(puVar11 + -0x14) = *(undefined4 *)(puVar17 + -0xa0);
          *(undefined4 *)(puVar11 + -0x18) = *(undefined4 *)(puVar17 + 0x10);
          *(undefined1 **)(puVar11 + -0x1c) = puVar12;
          *(undefined1 **)(puVar11 + -0x20) = puVar19;
          *(undefined4 *)(puVar11 + -0x24) = 0x47a39;
          __gmpn_toom43_mul();
        }
      }
      if (*(int *)(puVar17 + -0x94) != 0) {
        *(int *)(puVar11 + -0x10) = *(int *)(puVar17 + -0x94);
        *(undefined4 *)(puVar11 + -0x14) = 0x47e00;
        __gmp_tmp_reentrant_free();
      }
      *(undefined4 *)(puVar17 + -0x9c) = *(undefined4 *)(puVar17 + -0xa8);
      goto LAB_000471aa;
    }
  }
  pcVar3 = *(code **)(*(int *)(puVar17 + -0x9c) + 0x68);
  apuStack_100[1] = puVar12;
  if ((*(int *)(puVar17 + 0x10) < 0x1f5) || (puVar18 == (undefined1 *)0x1)) {
    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);
    iStack_f8 = *(int *)(puVar17 + 0x10);
    auStack_8014[0x1fc4] = 0x47451;
    apuStack_100[0] = puVar19;
    apuStack_f4[1] = puVar18;
    (*pcVar3)();
    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + *(int *)(puVar17 + 0x10);
    puVar11 = auStack_e0;
  }
  else {
    *(undefined1 **)(puVar17 + -0xa8) = puVar12;
    apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);
    iStack_f8 = 500;
    auStack_8014[0x1fc4] = 0x46f33;
    apuStack_100[0] = puVar19;
    apuStack_f4[1] = puVar18;
    (*pcVar3)();
    apuStack_f4[1] = puVar17 + -0x90;
    *(undefined1 **)(puVar17 + -0xa4) = apuStack_f4[1];
    apuStack_f4[0] = (undefined1 *)0x46f4e;
    apuStack_f4[2] = puVar19 + 2000;
    apuStack_f4[3] = puVar18;
    (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();
    iVar2 = *(int *)(puVar17 + 0x10);
    puVar12 = (undefined1 *)(*(int *)(puVar17 + -0xa8) + 2000);
    *(int *)(puVar17 + -0xac) = (int)puVar18 * 4;
    puVar19 = puVar19 + 2000;
    while (puVar11 = (undefined1 *)(iVar2 - 500), apuStack_100[0] = puVar19,
          apuStack_100[1] = puVar12, 500 < (int)puVar11) {
      *(undefined1 **)(puVar17 + -0xa8) = puVar11;
      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);
      iStack_f8 = 500;
      auStack_8014[0x1fc4] = 0x46fa8;
      apuStack_f4[1] = puVar18;
      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();
      apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);
      apuStack_f4[0] = (undefined1 *)0x46fbc;
      apuStack_f4[1] = puVar19;
      apuStack_f4[2] = puVar19;
      uStack_e4 = (uint)puVar18;
      uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();
      puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));
      uVar9 = *puVar13;
      *puVar13 = *puVar13 + uVar8;
      if (CARRY4(uVar9,uVar8)) {
        do {
          puVar1 = puVar13 + 1;
          uVar9 = *puVar1;
          *puVar1 = *puVar1 + 1;
          puVar13 = puVar13 + 1;
        } while (0xfffffffe < uVar9);
      }
      puVar19 = puVar19 + 2000;
      puVar12 = puVar12 + 2000;
      apuStack_f4[1] = *(undefined1 **)(puVar17 + -0xa4);
      apuStack_f4[0] = (undefined1 *)0x46ff2;
      apuStack_f4[2] = puVar19;
      apuStack_f4[3] = puVar18;
      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x28))();
      iVar2 = *(int *)(puVar17 + -0xa8);
    }
    if ((int)puVar18 < (int)puVar11) {
      apuStack_f4[0] = *(undefined1 **)(puVar17 + -0xa0);
      auStack_8014[0x1fc4] = 0x47033;
      iStack_f8 = (int)puVar11;
      apuStack_f4[1] = puVar18;
      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();
    }
    else {
      apuStack_100[1] = *(undefined1 **)(puVar17 + -0xa0);
      auStack_8014[0x1fc4] = 0x477f7;
      iStack_f8 = (int)puVar18;
      apuStack_f4[0] = puVar12;
      apuStack_f4[1] = puVar11;
      (**(code **)(*(int *)(puVar17 + -0x9c) + 0x68))();
    }
    apuStack_f4[3] = *(undefined1 **)(puVar17 + -0xa4);
    apuStack_f4[0] = (undefined1 *)0x47047;
    apuStack_f4[1] = puVar19;
    apuStack_f4[2] = puVar19;
    uStack_e4 = (uint)puVar18;
    uVar8 = (*(code *)**(undefined4 **)(puVar17 + -0x9c))();
    puVar13 = (uint *)(puVar19 + *(int *)(puVar17 + -0xac));
    uVar9 = *puVar13;
    *puVar13 = *puVar13 + uVar8;
    if (CARRY4(uVar9,uVar8)) {
      do {
        puVar1 = puVar13 + 1;
        uVar9 = *puVar1;
        *puVar1 = *puVar1 + 1;
        puVar13 = puVar13 + 1;
      } while (0xfffffffe < uVar9);
    }
    *(undefined1 **)(puVar17 + -0x9c) = puVar18 + (int)puVar11;
    puVar11 = auStack_e0;
  }
LAB_000471aa:
  if (*(int *)(puVar17 + -0x1c) == *(int *)(in_GS_OFFSET + 0x14)) {
    return *(undefined4 *)(puVar19 + *(int *)(puVar17 + -0x9c) * 4 + -4);
  }
                    /* WARNING: Subroutine does not return */
  *(undefined4 *)(puVar11 + -4) = 0x47f0b;
  FUN_0007ebe0();
}

