
byte ** FUN_00098c58(int **param_1,int **param_2,int **param_3,int *param_4)

{
  bool bVar1;
  int **ppiVar2;
  int **ppiVar3;
  int iVar4;
  byte **ppbVar5;
  undefined4 uVar6;
  int iVar7;
  int **ppiVar8;
  byte **ppbVar9;
  int *piVar10;
  code *pcVar11;
  byte bVar12;
  int **ppiVar13;
  int **ppiVar14;
  byte **ppbVar15;
  byte *pbVar16;
  int *piVar17;
  undefined1 uVar18;
  int iVar19;
  int *piVar20;
  uint uVar21;
  uint uVar22;
  int *piVar23;
  int *piVar24;
  undefined4 *puVar25;
  int **unaff_s2;
  int **unaff_s3;
  int *piVar26;
  code *unaff_s4;
  int **unaff_s5;
  int **unaff_s6;
  undefined *puVar27;
  undefined4 uVar28;
  double dVar29;
  undefined8 uVar30;
  byte **ppbStack_180;
  byte *pbStack_130;
  int *piStack_12c;
  code *pcStack_128;
  undefined4 uStack_120;
  undefined4 uStack_11c;
  undefined4 uStack_118;
  undefined4 uStack_114;
  undefined4 uStack_110;
  undefined4 uStack_10c;
  undefined4 uStack_108;
  undefined4 uStack_104;
  undefined4 uStack_100;
  undefined4 uStack_fc;
  undefined1 uStack_f8;
  int iStack_f4;
  int **ppiStack_f0;
  int *piStack_ec;
  int iStack_e8;
  int **ppiStack_e4;
  int **ppiStack_e0;
  undefined4 uStack_dc;
  code *pcStack_c8;
  int *piStack_bc;
  int iStack_b8;
  byte **ppbStack_b4;
  int *piStack_b0;
  int **ppiStack_ac;
  int **ppiStack_a8;
  int **ppiStack_a4;
  code *pcStack_a0;
  int **ppiStack_9c;
  int **ppiStack_98;
  undefined4 uStack_94;
  undefined *puStack_80;
  int **ppiStack_78;
  byte **ppbStack_74;
  byte **ppbStack_6c;
  int **ppiStack_68;
  int **ppiStack_64;
  int **ppiStack_60;
  code *pcStack_5c;
  int *piStack_4c;
  int *local_30;
  int **local_2c;
  
  puVar27 = PTR___stack_chk_guard_0015ba2c;
  local_30 = (int *)0x0;
  local_2c = *(int ***)PTR___stack_chk_guard_0015ba2c;
  ppiVar8 = param_3;
  piVar17 = param_4;
  ppiVar2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x71f4);
  if (ppiVar2 == (int **)0x0) {
    ppbVar5 = (byte **)&DAT_00000007;
  }
  else {
    unaff_s5 = &local_30;
    unaff_s4 = (code *)(*(code *)PTR_strlen_0015b9c4)(ppiVar2);
    unaff_s2 = (int **)(PTR_LAB_0015b65c + 0x273c);
    ppiVar3 = (int **)(*(code *)unaff_s2)(ppiVar2,unaff_s5);
    ppiVar8 = ppiVar2;
    if (ppiVar3 != (int **)0x0) {
      ppiVar8 = ppiVar3;
    }
    unaff_s3 = (int **)(PTR_LAB_0015b65c + 0x1120);
    *(code *)((int)ppiVar8 + (int)local_30) = (code)0x0;
    (*(code *)unaff_s3)(ppiVar8);
    iVar4 = (*(code *)PTR_strlen_0015b9c4)();
    iVar4 = (*(code *)(PTR_LAB_0015b6c0 + -0x2c24))(param_1,ppiVar8,iVar4 + 1);
    unaff_s6 = ppiVar2;
    if ((iVar4 == 0) || (iVar4 = *(int *)(iVar4 + 8), iVar4 == 0)) {
      ppbVar5 = (byte **)0x1;
      param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478);
      FUN_00092618(param_4);
    }
    else {
      unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);
      pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);
      iVar19 = 0;
      param_1 = (int **)0x0;
      while ((pcVar11 < unaff_s4 &&
             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {
        iVar19 = iVar19 + 1;
        ppiVar8 = (int **)0x0;
        piVar17 = (int *)(iVar19 * 4);
        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);
        if (ppiVar3 == (int **)0x0) {
          ppbVar5 = (byte **)&DAT_00000007;
          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);
          (*(code *)PTR_sqlite3_free_0015b620)(param_1);
          goto LAB_00098e8c;
        }
        (ppiVar3 + iVar19)[-1] = piVar20;
        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;
        (*(code *)unaff_s3)(piVar20);
        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);
        param_1 = ppiVar3;
      }
      param_2 = param_1;
      ppiVar8 = param_3;
      ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);
      if (ppbVar5 == (byte **)0x0) {
        **param_3 = iVar4;
      }
      else {
        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);
        FUN_00092618(param_4);
      }
      (*(code *)PTR_sqlite3_free_0015b620)(param_1);
    }
    (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);
  }
LAB_00098e8c:
  if (local_2c == *(int ***)puVar27) {
    return ppbVar5;
  }
  pcVar11 = FUN_00098f2c;
  ppiVar2 = local_2c;
  puVar27 = PTR___stack_chk_fail_0015ba10;
  (*(code *)PTR___stack_chk_fail_0015ba10)();
  puStack_80 = puVar27 + 0xca684;
  piVar20 = *(int **)(puVar27 + 0xc2b00);
  ppbStack_74 = (byte **)*piVar20;
  ppiVar3 = ppiVar2;
  ppiVar13 = param_2;
  ppiStack_ac = param_1;
  ppiStack_a4 = unaff_s3;
  ppbStack_6c = ppbVar5;
  ppiStack_68 = param_1;
  ppiStack_64 = unaff_s2;
  ppiStack_60 = unaff_s3;
  pcStack_5c = pcVar11;
  piStack_4c = piVar17;
  if (*ppiVar2 == (int *)0x0) {
    ppiVar13 = &piStack_4c;
    ppiStack_78 = ppiVar13;
    ppiVar14 = (int **)sqlite3_vmprintf(ppiVar8);
    if (ppiVar14 == (int **)0x0) {
LAB_00099014:
      unaff_s2 = (int **)0x0;
      *ppiVar2 = (int *)0x7;
      ppiVar3 = (int **)*param_2;
    }
    else {
      ppiVar3 = (int **)*param_2;
      unaff_s2 = ppiVar14;
      if (ppiVar3 != (int **)0x0) {
        ppiVar8 = ppiVar14;
        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);
        ppiVar13 = ppiVar3;
        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);
        if (unaff_s2 == (int **)0x0) goto LAB_00099014;
        ppiVar3 = (int **)*param_2;
      }
    }
    (**(code **)(puStack_80 + -0x7f90))();
    *param_2 = (int *)unaff_s2;
    ppiStack_ac = ppiVar2;
    ppiStack_a4 = param_2;
  }
  if (ppbStack_74 == (byte **)*piVar20) {
    return (byte **)*piVar20;
  }
  pcVar11 = *(code **)(puStack_80 + -0x7ba0);
  uVar28 = 0x99034;
  (*pcVar11)();
  pcStack_c8 = pcVar11 + 0xca57c;
  piVar24 = *(int **)(pcVar11 + 0xc29f8);
  piStack_bc = (int *)0x0;
  ppbStack_b4 = (byte **)*piVar24;
  piStack_b0 = piVar20;
  ppiStack_a8 = unaff_s2;
  pcStack_a0 = unaff_s4;
  ppiStack_9c = unaff_s5;
  ppiStack_98 = unaff_s6;
  uStack_94 = uVar28;
  uVar28 = (**(code **)(pcVar11 + 0xc2694))();
  iVar4 = (**(code **)(pcStack_c8 + -0x7f9c))(*ppiVar8);
  iVar19 = (**(code **)(pcStack_c8 + -0x7fac))(*ppiVar8);
  ppiVar2 = ppiVar3;
  if (ppiVar13 == (int **)&SUB_00000002) {
    uVar6 = (**(code **)(pcStack_c8 + -0x7ed0))(ppiVar3);
    piVar17 = &iStack_b8;
    iStack_b8 = 0;
    (**(code **)(pcStack_c8 + -0x7d60))(uVar6,0x3ec,0xffffffff);
    if (iStack_b8 == 0) {
      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434);
      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);
    }
    else {
      iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1]);
      if ((iVar4 != 0) && (iVar7 == 4)) {
        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);
        piStack_bc = (int *)*piStack_bc;
        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))
                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);
        if (piStack_bc == piVar17) {
          (**(code **)(pcStack_c8 + -0x7e40))
                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);
        }
        goto LAB_000990fc;
      }
      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c);
      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);
    }
  }
  else {
    if (iVar4 == 0) {
LAB_000990f4:
      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);
      if (piStack_bc != (int *)0x0) {
LAB_000990fc:
        piVar17 = (int *)0xffffffff;
        ppiVar14 = &piStack_bc;
        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);
        goto LAB_00099118;
      }
    }
    else {
      iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);
      if (iVar19 != 0) {
        piStack_bc = *(int **)(iVar19 + 8);
        goto LAB_000990f4;
      }
      piStack_bc = (int *)0x0;
      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);
    }
    ppiVar8 = (int **)sqlite3_mprintf(iVar19 + -0x7478,iVar4);
    ppiVar14 = ppiVar8;
    (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar8,0xffffffff);
    ppiVar2 = ppiVar8;
    (**(code **)(pcStack_c8 + -0x7f90))();
  }
LAB_00099118:
  if (ppbStack_b4 == (byte **)*piVar24) {
    return (byte **)*piVar24;
  }
  pcVar11 = *(code **)(pcStack_c8 + -0x7ba0);
  uVar28 = 0x992a0;
  (*pcVar11)();
  ppiStack_e4 = ppiVar3;
  piStack_ec = piVar24;
  iStack_e8 = iVar4;
  piVar20 = &uStack_120;
  pcStack_128 = pcVar11 + 0xca310;
  uStack_dc = uVar28;
  ppiStack_e0 = ppiVar13;
  ppiStack_f0 = ppiVar8;
  piVar26 = *(int **)(pcVar11 + 0xc278c);
  piVar24 = *ppiVar14;
  uStack_120 = 0;
  uStack_11c = 0;
  uStack_118 = 0;
  uStack_114 = 0;
  uStack_110 = 0;
  uStack_10c = 0;
  uStack_108 = 0;
  uStack_104 = 0;
  uStack_100 = 0;
  uStack_fc = 0;
  uStack_f8 = 0;
  iStack_f4 = *piVar26;
  pbVar16 = (byte *)((int)piVar24 * 2);
  if ((int)piVar24 < 1) {
    uVar22 = 0;
    ppiVar14[5] = (int *)0x2;
    ppiVar14[7] = (int *)0x1;
LAB_00099480:
    piVar20 = ppiVar2[0xc];
    piVar23 = (int *)((int)piVar20 >> (uVar22 & 0x1f));
    piVar10 = piVar23;
    piVar24 = (int *)(((int)piVar20 << 1) << (~uVar22 & 0x1f) |
                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f));
    if ((uVar22 & 0x20) != 0) {
      piVar10 = (int *)((int)piVar20 >> 0x1f);
      piVar24 = piVar23;
    }
    piVar20 = piVar24;
    dVar29 = (double)(**(code **)(pcStack_128 + -0x7f18))(piVar10);
    ppbVar5 = (byte **)0x0;
    ppiVar14[0xc] = piVar10;
    ppiVar14[0xd] = piVar24;
    *(double *)(ppiVar14 + 10) = dVar29 * *(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780);
  }
  else {
    piVar10 = ppiVar14[1];
    bVar1 = false;
    piVar17 = piVar10;
    do {
      piVar23 = piVar17 + 1;
      piVar17 = piVar17 + 3;
      if (*(char *)piVar23 == '@') {
        bVar1 = true;
      }
    } while (piVar10 + (int)piVar24 * 3 != piVar17);
    piVar17 = (int *)0x0;
    uVar21 = 0;
    iVar4 = 0;
LAB_000993bc:
    piVar10 = (int *)((int)piVar10 + (int)piVar17);
    if (!bVar1) {
      if (*(char *)((int)piVar10 + 5) == '\0') goto LAB_0009939c;
      iVar19 = *piVar10;
      bVar12 = *(byte *)(piVar10 + 1);
      if (iVar19 != 0) goto LAB_000993d8;
      if (bVar12 != 2) goto LAB_00099394;
      if (iVar4 == 0) {
        iVar19 = 0;
      }
      else {
        iVar7 = 0;
        do {
          iVar19 = iVar7 + 1;
          ppiVar14[4][iVar7 * 2] = 0;
          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;
          iVar7 = iVar19;
        } while (iVar19 != iVar4);
        iVar19 = iVar19 * 8;
      }
      piVar17 = (int *)0x1;
      ppiVar14[5] = (int *)0x1;
      piVar20 = *(int **)(pcVar11 + 0xc23f4);
      uVar30 = *(undefined8 *)(piVar20 + -0x1de2);
      *(undefined4 *)((int)ppiVar14[4] + iVar19) = 1;
      pbVar16 = (byte *)0x0;
      *(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1;
      *(undefined8 *)(ppiVar14 + 10) = uVar30;
      ppiVar14[0xd] = (int *)0x1;
      ppiVar14[0xc] = (int *)0x0;
      ppiVar14[0xe] = (int *)0x1;
      ppbVar5 = (byte **)0x0;
      goto LAB_000994e0;
    }
    if (*(char *)((int)piVar10 + 5) == '\0') {
LAB_0009939c:
      uVar22 = uVar21;
      if ((int)piVar24 <= iVar4 + 1) goto LAB_00099470;
    }
    else {
      iVar19 = *piVar10;
      bVar12 = *(byte *)(piVar10 + 1);
LAB_000993d8:
      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {
LAB_00099394:
        uVar18 = 0x46;
        if (bVar12 != 0x40) goto LAB_0009939c;
      }
      else if (bVar12 == 8) {
        uVar18 = 0x42;
      }
      else if (bVar12 < 9) {
        uVar18 = 0x41;
        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;
      }
      else {
        uVar18 = 0x44;
        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))
           ) goto LAB_0009939c;
      }
      piVar24 = ppiVar14[4];
      uVar22 = uVar21 + 2;
      *(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;
      *(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';
      piVar24[iVar4 * 2] = (int)uVar22 >> 1;
      *(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;
      piVar24 = *ppiVar14;
      uVar21 = uVar22;
      if ((int)piVar24 <= iVar4 + 1) {
LAB_00099470:
        pbVar16 = (byte *)(iVar4 + 1);
        ppiVar14[5] = (int *)0x2;
        ppiVar14[7] = (int *)0x1;
        uVar21 = uVar22;
        if (uVar22 == 0) goto LAB_00099480;
        goto LAB_00099544;
      }
    }
    piVar17 = piVar17 + 3;
    if ((int)uVar21 < 0x28) goto code_r0x000993b8;
    ppiVar14[5] = (int *)0x2;
    ppiVar14[7] = (int *)0x1;
LAB_00099544:
    pbVar16 = (byte *)(iVar4 + 1);
    piVar24 = (int *)sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4);
    ppiVar14[6] = piVar24;
    if (piVar24 != (int *)0x0) {
      uVar22 = (int)uVar21 >> 1;
      goto LAB_00099480;
    }
    ppbVar5 = (byte **)&DAT_00000007;
  }
LAB_000994e0:
  if (iStack_f4 == *piVar26) {
    return ppbVar5;
  }
  pcVar11 = *(code **)(pcStack_128 + -0x7ba0);
  iVar4 = iStack_f4;
  (*pcVar11)();
  ppbVar9 = &pbStack_130;
  puVar25 = *(undefined4 **)(pcVar11 + 0xc2410);
  ppbVar15 = (byte **)*puVar25;
  ppbVar5 = ppbVar15;
  pbStack_130 = pbVar16;
  piStack_12c = piVar17;
  if ((*(int *)(iVar4 + 0x28) != 0) || (99 < *(int *)(iVar4 + 0x30))) goto LAB_0009967c;
  piVar24 = (int *)sqlite3_vmprintf();
  if (piVar24 == (int *)0x0) {
LAB_000996f0:
    *(undefined4 *)(iVar4 + 0x28) = 7;
  }
  else {
    ppbVar9 = *(byte ***)(iVar4 + 0x2c);
    if (ppbVar9 == (byte **)0x0) {
      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4);
    }
    else {
      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);
    }
    piVar20 = (int *)(*(int *)(pcVar11 + 0xc1fe0) - 0x741c);
    iVar19 = sqlite3_mprintf();
    *(int *)(iVar4 + 0x2c) = iVar19;
    piVar17 = piVar24;
    if (iVar19 == 0) goto LAB_000996f0;
  }
  *(int *)(iVar4 + 0x30) = *(int *)(iVar4 + 0x30) + 1;
  ppbVar5 = ppbVar9;
LAB_0009967c:
  ppbVar9 = (byte **)*puVar25;
  if (ppbVar15 == ppbVar9) {
    return ppbVar9;
  }
  pcVar11 = *(code **)(pcVar11 + 0xc23f4);
  (*pcVar11)();
  piVar24 = *(int **)(pcVar11 + 0xc231c);
  ppbStack_180 = (byte **)0x0;
  iVar4 = *piVar24;
  ppbVar9 = (byte **)0x0;
  if (ppbVar5 != (byte **)0x0) {
    if (*(char *)ppbVar5 == '$') {
      pbVar16 = (byte *)((int)ppbVar5 + 1);
      ppbVar9 = (byte **)FUN_0008b18c();
      ppbVar5 = ppbStack_180;
    }
    else {
      iVar19 = *(int *)(pcVar11 + 0xc1eec);
      *(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01';
      ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414);
      if (ppbVar9 == (byte **)0x0) {
        (**(code **)(pcVar11 + 0xc2074))(piVar17);
        ppbVar9 = (byte **)0x0;
      }
      else {
        pbVar16 = (byte *)0xffffffff;
        ppbVar5 = ppbVar9;
        (**(code **)(pcVar11 + 0xc2060))(piVar17);
        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);
        ppbVar9 = (byte **)0x0;
      }
    }
  }
  if (iVar4 != *piVar24) {
    pcVar11 = *(code **)(pcVar11 + 0xc2300);
    (*pcVar11)();
    ppbVar9 = (byte **)FUN_0008ad48();
    if (ppbVar9 != (byte **)0x0) {
      if (ppbVar5 == (byte **)&SUB_00000002) {
        uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));
        ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);
      }
      else {
        ppbVar9 = (byte **)ppbVar9[2];
      }
      if (ppbVar9 != (byte **)0x0) {
                    /* WARNING: Could not recover jumptable at 0x000998e4. Too many branches */
                    /* WARNING: Treating indirect jump as call */
        ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))
                                     (iVar4,*(undefined4 *)
                                             ((uint)*(byte *)ppbVar9 * 4 +
                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);
        return ppbVar5;
      }
    }
    return ppbVar9;
  }
  return ppbVar9;
code_r0x000993b8:
  piVar10 = ppiVar14[1];
  iVar4 = iVar4 + 1;
  goto LAB_000993bc;
}


lui gp,0xd
addiu gp,gp,-0x56a8
addu gp,gp,t9
addiu sp,sp,-0x58
lw v0,-0x7b84(gp)
lw t9,-0x7f88(gp)
sw gp,0x10(sp)
sw s1,0x34(sp)
or s1,a0,zero
sw ra,0x54(sp)
sw s8,0x50(sp)
sw s7,0x4c(sp)
sw s6,0x48(sp)
sw s5,0x44(sp)
sw s4,0x40(sp)
sw s3,0x3c(sp)
sw s2,0x38(sp)
sw s0,0x30(sp)
sw v0,0x18(sp)
sw a2,0x1c(sp)
sw a3,0x20(sp)
sw zero,0x28(sp)
lw a0,-0x7fc8(gp)
lw v0,0x0(v0)
addiu a0,a0,0x71f4
sw v0,0x2c(sp)
bal 0x000926b8
_nop
beq v0,zero,0x00098ed0
_lw gp,0x10(sp)
lw t9,-0x7bec(gp)
or a0,v0,zero
or s6,v0,zero
jalr t9
_addiu s5,sp,0x28
or a0,s6,zero
lw gp,0x10(sp)
or a1,s5,zero
or s4,v0,zero
lw s2,-0x7f54(gp)
addiu s2,s2,0x273c
or t9,s2,zero
jalr t9
_or s0,s6,zero
lw gp,0x10(sp)
movn s0,v0,v0
lw v0,0x28(sp)
lw s3,-0x7f54(gp)
or a0,s0,zero
addu v0,s0,v0
addiu s3,s3,0x1120
or t9,s3,zero
jalr t9
_sb zero,0x0(v0)
lw gp,0x10(sp)
lw t9,-0x7bec(gp)
jalr t9
_nop
or a1,s0,zero
lw gp,0x10(sp)
addiu a2,v0,0x1
lw t9,-0x7ef0(gp)
addiu t9,t9,-0x2c24
jalr t9
_or a0,s1,zero
beq v0,zero,0x00098e58
_lw gp,0x10(sp)
lw v0,0x8(v0)
beq v0,zero,0x00098e58
_sw v0,0x24(sp)
lw a0,0x28(sp)
addu s4,s6,s4
or s1,zero,zero
addiu a0,a0,0x1
addu a0,s0,a0
sltu v0,a0,s4
bne v0,zero,0x00098df8
_or s0,zero,zero
b 0x00098e14
_lw v0,0x24(sp)
addiu s0,s0,0x1
lw t9,-0x7e4c(gp)
or a2,zero,zero
sll s7,s0,0x2
or a0,s1,zero
jalr t9
_or a3,s7,zero
lw gp,0x10(sp)
beq v0,zero,0x00098ed8
_or t0,v0,zero
addu a1,v0,s7
or a0,s8,zero
or t9,s3,zero
sw s8,-0x4(a1)
lw v0,0x28(sp)
addu v0,s8,v0
jalr t9
_sb zero,0x0(v0)
lw a0,0x28(sp)
addiu a0,a0,0x1
addu a0,s8,a0
sltu v0,a0,s4
beq v0,zero,0x00098e10
_or s1,t0,zero
or t9,s2,zero
jalr t9
_or a1,s5,zero
lw gp,0x10(sp)
bne v0,zero,0x00098d98
_or s8,v0,zero
lw v0,0x24(sp)
or a0,s0,zero
lw a2,0x1c(sp)
lw t9,0x4(v0)
jalr t9
_or a1,s1,zero
lw gp,0x10(sp)
bne v0,zero,0x00098f00
_or s0,v0,zero
lw v0,0x1c(sp)
lw v1,0x24(sp)
lw v0,0x0(v0)
sw v1,0x0(v0)
lw t9,-0x7f90(gp)
jalr t9
_or a0,s1,zero
b 0x00098e7c
_lw gp,0x10(sp)
lw a1,-0x7fb4(gp)
or a2,s0,zero
lw t9,-0x7e94(gp)
li s0,0x1
lw a0,0x20(sp)
addiu t9,t9,0x2618
bal 0x00092618
_addiu a1,a1,-0x7478
lw gp,0x10(sp)
lw t9,-0x7f90(gp)
jalr t9
_or a0,s6,zero
lw gp,0x10(sp)
lw v1,0x18(sp)
or v0,s0,zero
lw a0,0x2c(sp)
lw v1,0x0(v1)
bne a0,v1,0x00098f20
_lw ra,0x54(sp)
lw s8,0x50(sp)
lw s7,0x4c(sp)
lw s6,0x48(sp)
lw s5,0x44(sp)
lw s4,0x40(sp)
lw s3,0x3c(sp)
lw s2,0x38(sp)
lw s1,0x34(sp)
lw s0,0x30(sp)
jr ra
_addiu sp,sp,0x58
b 0x00098e8c
_li s0,0x7
lw t9,-0x7f90(gp)
or a0,s6,zero
jalr t9
_li s0,0x7
lw gp,0x10(sp)
lw t9,-0x7f90(gp)
jalr t9
_or a0,s1,zero
b 0x00098e8c
_lw gp,0x10(sp)
lw a1,-0x7fb4(gp)
lw t9,-0x7e94(gp)
lw a0,0x20(sp)
addiu t9,t9,0x2618
bal 0x00092618
_addiu a1,a1,-0x7460
b 0x00098e44
_lw gp,0x10(sp)
lw t9,-0x7ba0(gp)
jalr t9
_nop
(translation_unit "byte ** FUN_00098c58(int **param_1,int **param_2,int **param_3,int *param_4)\n\n{\n  bool bVar1;\n  int **ppiVar2;\n  int **ppiVar3;\n  int iVar4;\n  byte **ppbVar5;\n  undefined4 uVar6;\n  int iVar7;\n  int **ppiVar8;\n  byte **ppbVar9;\n  int *piVar10;\n  code *pcVar11;\n  byte bVar12;\n  int **ppiVar13;\n  int **ppiVar14;\n  byte **ppbVar15;\n  byte *pbVar16;\n  int *piVar17;\n  undefined1 uVar18;\n  int iVar19;\n  int *piVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  int *piVar24;\n  undefined4 *puVar25;\n  int **unaff_s2;\n  int **unaff_s3;\n  int *piVar26;\n  code *unaff_s4;\n  int **unaff_s5;\n  int **unaff_s6;\n  undefined *puVar27;\n  undefined4 uVar28;\n  double dVar29;\n  undefined8 uVar30;\n  byte **ppbStack_180;\n  byte *pbStack_130;\n  int *piStack_12c;\n  code *pcStack_128;\n  undefined4 uStack_120;\n  undefined4 uStack_11c;\n  undefined4 uStack_118;\n  undefined4 uStack_114;\n  undefined4 uStack_110;\n  undefined4 uStack_10c;\n  undefined4 uStack_108;\n  undefined4 uStack_104;\n  undefined4 uStack_100;\n  undefined4 uStack_fc;\n  undefined1 uStack_f8;\n  int iStack_f4;\n  int **ppiStack_f0;\n  int *piStack_ec;\n  int iStack_e8;\n  int **ppiStack_e4;\n  int **ppiStack_e0;\n  undefined4 uStack_dc;\n  code *pcStack_c8;\n  int *piStack_bc;\n  int iStack_b8;\n  byte **ppbStack_b4;\n  int *piStack_b0;\n  int **ppiStack_ac;\n  int **ppiStack_a8;\n  int **ppiStack_a4;\n  code *pcStack_a0;\n  int **ppiStack_9c;\n  int **ppiStack_98;\n  undefined4 uStack_94;\n  undefined *puStack_80;\n  int **ppiStack_78;\n  byte **ppbStack_74;\n  byte **ppbStack_6c;\n  int **ppiStack_68;\n  int **ppiStack_64;\n  int **ppiStack_60;\n  code *pcStack_5c;\n  int *piStack_4c;\n  int *local_30;\n  int **local_2c;\n  \n  puVar27 = PTR___stack_chk_guard_0015ba2c;\n  local_30 = (int *)0x0;\n  local_2c = *(int ***)PTR___stack_chk_guard_0015ba2c;\n  ppiVar8 = param_3;\n  piVar17 = param_4;\n  ppiVar2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x71f4);\n  if (ppiVar2 == (int **)0x0) {\n    ppbVar5 = (byte **)&DAT_00000007;\n  }\n  else {\n    unaff_s5 = &local_30;\n    unaff_s4 = (code *)(*(code *)PTR_strlen_0015b9c4)(ppiVar2);\n    unaff_s2 = (int **)(PTR_LAB_0015b65c + 0x273c);\n    ppiVar3 = (int **)(*(code *)unaff_s2)(ppiVar2,unaff_s5);\n    ppiVar8 = ppiVar2;\n    if (ppiVar3 != (int **)0x0) {\n      ppiVar8 = ppiVar3;\n    }\n    unaff_s3 = (int **)(PTR_LAB_0015b65c + 0x1120);\n    *(code *)((int)ppiVar8 + (int)local_30) = (code)0x0;\n    (*(code *)unaff_s3)(ppiVar8);\n    iVar4 = (*(code *)PTR_strlen_0015b9c4)();\n    iVar4 = (*(code *)(PTR_LAB_0015b6c0 + -0x2c24))(param_1,ppiVar8,iVar4 + 1);\n    unaff_s6 = ppiVar2;\n    if ((iVar4 == 0) || (iVar4 = *(int *)(iVar4 + 8), iVar4 == 0)) {\n      ppbVar5 = (byte **)0x1;\n      param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478);\n      FUN_00092618(param_4);\n    }\n    else {\n      unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);\n      pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);\n      iVar19 = 0;\n      param_1 = (int **)0x0;\n      while ((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }\n      param_2 = param_1;\n      ppiVar8 = param_3;\n      ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);\n      if (ppbVar5 == (byte **)0x0) {\n        **param_3 = iVar4;\n      }\n      else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }\n      (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n  }\nLAB_00098e8c:\n  if (local_2c == *(int ***)puVar27) {\n    return ppbVar5;\n  }\n  pcVar11 = FUN_00098f2c;\n  ppiVar2 = local_2c;\n  puVar27 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  puStack_80 = puVar27 + 0xca684;\n  piVar20 = *(int **)(puVar27 + 0xc2b00);\n  ppbStack_74 = (byte **)*piVar20;\n  ppiVar3 = ppiVar2;\n  ppiVar13 = param_2;\n  ppiStack_ac = param_1;\n  ppiStack_a4 = unaff_s3;\n  ppbStack_6c = ppbVar5;\n  ppiStack_68 = param_1;\n  ppiStack_64 = unaff_s2;\n  ppiStack_60 = unaff_s3;\n  pcStack_5c = pcVar11;\n  piStack_4c = piVar17;\n  if (*ppiVar2 == (int *)0x0) {\n    ppiVar13 = &piStack_4c;\n    ppiStack_78 = ppiVar13;\n    ppiVar14 = (int **)sqlite3_vmprintf(ppiVar8);\n    if (ppiVar14 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *ppiVar2 = (int *)0x7;\n      ppiVar3 = (int **)*param_2;\n    }\n    else {\n      ppiVar3 = (int **)*param_2;\n      unaff_s2 = ppiVar14;\n      if (ppiVar3 != (int **)0x0) {\n        ppiVar8 = ppiVar14;\n        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);\n        ppiVar13 = ppiVar3;\n        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar3 = (int **)*param_2;\n      }\n    }\n    (**(code **)(puStack_80 + -0x7f90))();\n    *param_2 = (int *)unaff_s2;\n    ppiStack_ac = ppiVar2;\n    ppiStack_a4 = param_2;\n  }\n  if (ppbStack_74 == (byte **)*piVar20) {\n    return (byte **)*piVar20;\n  }\n  pcVar11 = *(code **)(puStack_80 + -0x7ba0);\n  uVar28 = 0x99034;\n  (*pcVar11)();\n  pcStack_c8 = pcVar11 + 0xca57c;\n  piVar24 = *(int **)(pcVar11 + 0xc29f8);\n  piStack_bc = (int *)0x0;\n  ppbStack_b4 = (byte **)*piVar24;\n  piStack_b0 = piVar20;\n  ppiStack_a8 = unaff_s2;\n  pcStack_a0 = unaff_s4;\n  ppiStack_9c = unaff_s5;\n  ppiStack_98 = unaff_s6;\n  uStack_94 = uVar28;\n  uVar28 = (**(code **)(pcVar11 + 0xc2694))();\n  iVar4 = (**(code **)(pcStack_c8 + -0x7f9c))(*ppiVar8);\n  iVar19 = (**(code **)(pcStack_c8 + -0x7fac))(*ppiVar8);\n  ppiVar2 = ppiVar3;\n  if (ppiVar13 == (int **)&SUB_00000002) {\n    uVar6 = (**(code **)(pcStack_c8 + -0x7ed0))(ppiVar3);\n    piVar17 = &iStack_b8;\n    iStack_b8 = 0;\n    (**(code **)(pcStack_c8 + -0x7d60))(uVar6,0x3ec,0xffffffff);\n    if (iStack_b8 == 0) {\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n    else {\n      iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1]);\n      if ((iVar4 != 0) && (iVar7 == 4)) {\n        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);\n        piStack_bc = (int *)*piStack_bc;\n        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);\n        if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n  }\n  else {\n    if (iVar4 == 0) {\nLAB_000990f4:\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n      if (piStack_bc != (int *)0x0) {\nLAB_000990fc:\n        piVar17 = (int *)0xffffffff;\n        ppiVar14 = &piStack_bc;\n        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);\n      if (iVar19 != 0) {\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }\n      piStack_bc = (int *)0x0;\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n    }\n    ppiVar8 = (int **)sqlite3_mprintf(iVar19 + -0x7478,iVar4);\n    ppiVar14 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar8,0xffffffff);\n    ppiVar2 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7f90))();\n  }\nLAB_00099118:\n  if (ppbStack_b4 == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }\n  pcVar11 = *(code **)(pcStack_c8 + -0x7ba0);\n  uVar28 = 0x992a0;\n  (*pcVar11)();\n  ppiStack_e4 = ppiVar3;\n  piStack_ec = piVar24;\n  iStack_e8 = iVar4;\n  piVar20 = &uStack_120;\n  pcStack_128 = pcVar11 + 0xca310;\n  uStack_dc = uVar28;\n  ppiStack_e0 = ppiVar13;\n  ppiStack_f0 = ppiVar8;\n  piVar26 = *(int **)(pcVar11 + 0xc278c);\n  piVar24 = *ppiVar14;\n  uStack_120 = 0;\n  uStack_11c = 0;\n  uStack_118 = 0;\n  uStack_114 = 0;\n  uStack_110 = 0;\n  uStack_10c = 0;\n  uStack_108 = 0;\n  uStack_104 = 0;\n  uStack_100 = 0;\n  uStack_fc = 0;\n  uStack_f8 = 0;\n  iStack_f4 = *piVar26;\n  pbVar16 = (byte *)((int)piVar24 * 2);\n  if ((int)piVar24 < 1) {\n    uVar22 = 0;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099480:\n    piVar20 = ppiVar2[0xc];\n    piVar23 = (int *)((int)piVar20 >> (uVar22 & 0x1f));\n    piVar10 = piVar23;\n    piVar24 = (int *)(((int)piVar20 << 1) << (~uVar22 & 0x1f) |\n                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f));\n    if ((uVar22 & 0x20) != 0) {\n      piVar10 = (int *)((int)piVar20 >> 0x1f);\n      piVar24 = piVar23;\n    }\n    piVar20 = piVar24;\n    dVar29 = (double)(**(code **)(pcStack_128 + -0x7f18))(piVar10);\n    ppbVar5 = (byte **)0x0;\n    ppiVar14[0xc] = piVar10;\n    ppiVar14[0xd] = piVar24;\n    *(double *)(ppiVar14 + 10) = dVar29 * *(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780);\n  }\n  else {\n    piVar10 = ppiVar14[1];\n    bVar1 = false;\n    piVar17 = piVar10;\n    do {\n      piVar23 = piVar17 + 1;\n      piVar17 = piVar17 + 3;\n      if (*(char *)piVar23 == '@') {\n        bVar1 = true;\n      }\n    } while (piVar10 + (int)piVar24 * 3 != piVar17);\n    piVar17 = (int *)0x0;\n    uVar21 = 0;\n    iVar4 = 0;\nLAB_000993bc:\n    piVar10 = (int *)((int)piVar10 + (int)piVar17);\n    if (!bVar1) {\n      if (*(char *)((int)piVar10 + 5) == '\0') goto LAB_0009939c;\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\n      if (iVar19 != 0) goto LAB_000993d8;\n      if (bVar12 != 2) goto LAB_00099394;\n      if (iVar4 == 0) {\n        iVar19 = 0;\n      }\n      else {\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }\n      piVar17 = (int *)0x1;\n      ppiVar14[5] = (int *)0x1;\n      piVar20 = *(int **)(pcVar11 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar20 + -0x1de2);\n      *(undefined4 *)((int)ppiVar14[4] + iVar19) = 1;\n      pbVar16 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1;\n      *(undefined8 *)(ppiVar14 + 10) = uVar30;\n      ppiVar14[0xd] = (int *)0x1;\n      ppiVar14[0xc] = (int *)0x0;\n      ppiVar14[0xe] = (int *)0x1;\n      ppbVar5 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar10 + 5) == '\0') {\nLAB_0009939c:\n      uVar22 = uVar21;\n      if ((int)piVar24 <= iVar4 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\nLAB_000993d8:\n      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar24 = ppiVar14[4];\n      uVar22 = uVar21 + 2;\n      *(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;\n      *(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';\n      piVar24[iVar4 * 2] = (int)uVar22 >> 1;\n      *(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;\n      piVar24 = *ppiVar14;\n      uVar21 = uVar22;\n      if ((int)piVar24 <= iVar4 + 1) {\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }\n    piVar17 = piVar17 + 3;\n    if ((int)uVar21 < 0x28) goto code_r0x000993b8;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099544:\n    pbVar16 = (byte *)(iVar4 + 1);\n    piVar24 = (int *)sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4);\n    ppiVar14[6] = piVar24;\n    if (piVar24 != (int *)0x0) {\n      uVar22 = (int)uVar21 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar5 = (byte **)&DAT_00000007;\n  }\nLAB_000994e0:\n  if (iStack_f4 == *piVar26) {\n    return ppbVar5;\n  }\n  pcVar11 = *(code **)(pcStack_128 + -0x7ba0);\n  iVar4 = iStack_f4;\n  (*pcVar11)();\n  ppbVar9 = &pbStack_130;\n  puVar25 = *(undefined4 **)(pcVar11 + 0xc2410);\n  ppbVar15 = (byte **)*puVar25;\n  ppbVar5 = ppbVar15;\n  pbStack_130 = pbVar16;\n  piStack_12c = piVar17;\n  if ((*(int *)(iVar4 + 0x28) != 0) || (99 < *(int *)(iVar4 + 0x30))) goto LAB_0009967c;\n  piVar24 = (int *)sqlite3_vmprintf();\n  if (piVar24 == (int *)0x0) {\nLAB_000996f0:\n    *(undefined4 *)(iVar4 + 0x28) = 7;\n  }\n  else {\n    ppbVar9 = *(byte ***)(iVar4 + 0x2c);\n    if (ppbVar9 == (byte **)0x0) {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);\n    }\n    piVar20 = (int *)(*(int *)(pcVar11 + 0xc1fe0) - 0x741c);\n    iVar19 = sqlite3_mprintf();\n    *(int *)(iVar4 + 0x2c) = iVar19;\n    piVar17 = piVar24;\n    if (iVar19 == 0) goto LAB_000996f0;\n  }\n  *(int *)(iVar4 + 0x30) = *(int *)(iVar4 + 0x30) + 1;\n  ppbVar5 = ppbVar9;\nLAB_0009967c:\n  ppbVar9 = (byte **)*puVar25;\n  if (ppbVar15 == ppbVar9) {\n    return ppbVar9;\n  }\n  pcVar11 = *(code **)(pcVar11 + 0xc23f4);\n  (*pcVar11)();\n  piVar24 = *(int **)(pcVar11 + 0xc231c);\n  ppbStack_180 = (byte **)0x0;\n  iVar4 = *piVar24;\n  ppbVar9 = (byte **)0x0;\n  if (ppbVar5 != (byte **)0x0) {\n    if (*(char *)ppbVar5 == '$') {\n      pbVar16 = (byte *)((int)ppbVar5 + 1);\n      ppbVar9 = (byte **)FUN_0008b18c();\n      ppbVar5 = ppbStack_180;\n    }\n    else {\n      iVar19 = *(int *)(pcVar11 + 0xc1eec);\n      *(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01';\n      ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414);\n      if (ppbVar9 == (byte **)0x0) {\n        (**(code **)(pcVar11 + 0xc2074))(piVar17);\n        ppbVar9 = (byte **)0x0;\n      }\n      else {\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }\n    }\n  }\n  if (iVar4 != *piVar24) {\n    pcVar11 = *(code **)(pcVar11 + 0xc2300);\n    (*pcVar11)();\n    ppbVar9 = (byte **)FUN_0008ad48();\n    if (ppbVar9 != (byte **)0x0) {\n      if (ppbVar5 == (byte **)&SUB_00000002) {\n        uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));\n        ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);\n      }\n      else {\n        ppbVar9 = (byte **)ppbVar9[2];\n      }\n      if (ppbVar9 != (byte **)0x0) {\n                    \n                    \n        ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n        return ppbVar5;\n      }\n    }\n    return ppbVar9;\n  }\n  return ppbVar9;\ncode_r0x000993b8:\n  piVar10 = ppiVar14[1];\n  iVar4 = iVar4 + 1;\n  goto LAB_000993bc;\n}\n\n" (function_definition "byte ** FUN_00098c58(int **param_1,int **param_2,int **param_3,int *param_4)\n\n{\n  bool bVar1;\n  int **ppiVar2;\n  int **ppiVar3;\n  int iVar4;\n  byte **ppbVar5;\n  undefined4 uVar6;\n  int iVar7;\n  int **ppiVar8;\n  byte **ppbVar9;\n  int *piVar10;\n  code *pcVar11;\n  byte bVar12;\n  int **ppiVar13;\n  int **ppiVar14;\n  byte **ppbVar15;\n  byte *pbVar16;\n  int *piVar17;\n  undefined1 uVar18;\n  int iVar19;\n  int *piVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  int *piVar24;\n  undefined4 *puVar25;\n  int **unaff_s2;\n  int **unaff_s3;\n  int *piVar26;\n  code *unaff_s4;\n  int **unaff_s5;\n  int **unaff_s6;\n  undefined *puVar27;\n  undefined4 uVar28;\n  double dVar29;\n  undefined8 uVar30;\n  byte **ppbStack_180;\n  byte *pbStack_130;\n  int *piStack_12c;\n  code *pcStack_128;\n  undefined4 uStack_120;\n  undefined4 uStack_11c;\n  undefined4 uStack_118;\n  undefined4 uStack_114;\n  undefined4 uStack_110;\n  undefined4 uStack_10c;\n  undefined4 uStack_108;\n  undefined4 uStack_104;\n  undefined4 uStack_100;\n  undefined4 uStack_fc;\n  undefined1 uStack_f8;\n  int iStack_f4;\n  int **ppiStack_f0;\n  int *piStack_ec;\n  int iStack_e8;\n  int **ppiStack_e4;\n  int **ppiStack_e0;\n  undefined4 uStack_dc;\n  code *pcStack_c8;\n  int *piStack_bc;\n  int iStack_b8;\n  byte **ppbStack_b4;\n  int *piStack_b0;\n  int **ppiStack_ac;\n  int **ppiStack_a8;\n  int **ppiStack_a4;\n  code *pcStack_a0;\n  int **ppiStack_9c;\n  int **ppiStack_98;\n  undefined4 uStack_94;\n  undefined *puStack_80;\n  int **ppiStack_78;\n  byte **ppbStack_74;\n  byte **ppbStack_6c;\n  int **ppiStack_68;\n  int **ppiStack_64;\n  int **ppiStack_60;\n  code *pcStack_5c;\n  int *piStack_4c;\n  int *local_30;\n  int **local_2c;\n  \n  puVar27 = PTR___stack_chk_guard_0015ba2c;\n  local_30 = (int *)0x0;\n  local_2c = *(int ***)PTR___stack_chk_guard_0015ba2c;\n  ppiVar8 = param_3;\n  piVar17 = param_4;\n  ppiVar2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x71f4);\n  if (ppiVar2 == (int **)0x0) {\n    ppbVar5 = (byte **)&DAT_00000007;\n  }\n  else {\n    unaff_s5 = &local_30;\n    unaff_s4 = (code *)(*(code *)PTR_strlen_0015b9c4)(ppiVar2);\n    unaff_s2 = (int **)(PTR_LAB_0015b65c + 0x273c);\n    ppiVar3 = (int **)(*(code *)unaff_s2)(ppiVar2,unaff_s5);\n    ppiVar8 = ppiVar2;\n    if (ppiVar3 != (int **)0x0) {\n      ppiVar8 = ppiVar3;\n    }\n    unaff_s3 = (int **)(PTR_LAB_0015b65c + 0x1120);\n    *(code *)((int)ppiVar8 + (int)local_30) = (code)0x0;\n    (*(code *)unaff_s3)(ppiVar8);\n    iVar4 = (*(code *)PTR_strlen_0015b9c4)();\n    iVar4 = (*(code *)(PTR_LAB_0015b6c0 + -0x2c24))(param_1,ppiVar8,iVar4 + 1);\n    unaff_s6 = ppiVar2;\n    if ((iVar4 == 0) || (iVar4 = *(int *)(iVar4 + 8), iVar4 == 0)) {\n      ppbVar5 = (byte **)0x1;\n      param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478);\n      FUN_00092618(param_4);\n    }\n    else {\n      unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);\n      pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);\n      iVar19 = 0;\n      param_1 = (int **)0x0;\n      while ((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }\n      param_2 = param_1;\n      ppiVar8 = param_3;\n      ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);\n      if (ppbVar5 == (byte **)0x0) {\n        **param_3 = iVar4;\n      }\n      else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }\n      (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n  }\nLAB_00098e8c:\n  if (local_2c == *(int ***)puVar27) {\n    return ppbVar5;\n  }\n  pcVar11 = FUN_00098f2c;\n  ppiVar2 = local_2c;\n  puVar27 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  puStack_80 = puVar27 + 0xca684;\n  piVar20 = *(int **)(puVar27 + 0xc2b00);\n  ppbStack_74 = (byte **)*piVar20;\n  ppiVar3 = ppiVar2;\n  ppiVar13 = param_2;\n  ppiStack_ac = param_1;\n  ppiStack_a4 = unaff_s3;\n  ppbStack_6c = ppbVar5;\n  ppiStack_68 = param_1;\n  ppiStack_64 = unaff_s2;\n  ppiStack_60 = unaff_s3;\n  pcStack_5c = pcVar11;\n  piStack_4c = piVar17;\n  if (*ppiVar2 == (int *)0x0) {\n    ppiVar13 = &piStack_4c;\n    ppiStack_78 = ppiVar13;\n    ppiVar14 = (int **)sqlite3_vmprintf(ppiVar8);\n    if (ppiVar14 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *ppiVar2 = (int *)0x7;\n      ppiVar3 = (int **)*param_2;\n    }\n    else {\n      ppiVar3 = (int **)*param_2;\n      unaff_s2 = ppiVar14;\n      if (ppiVar3 != (int **)0x0) {\n        ppiVar8 = ppiVar14;\n        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);\n        ppiVar13 = ppiVar3;\n        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar3 = (int **)*param_2;\n      }\n    }\n    (**(code **)(puStack_80 + -0x7f90))();\n    *param_2 = (int *)unaff_s2;\n    ppiStack_ac = ppiVar2;\n    ppiStack_a4 = param_2;\n  }\n  if (ppbStack_74 == (byte **)*piVar20) {\n    return (byte **)*piVar20;\n  }\n  pcVar11 = *(code **)(puStack_80 + -0x7ba0);\n  uVar28 = 0x99034;\n  (*pcVar11)();\n  pcStack_c8 = pcVar11 + 0xca57c;\n  piVar24 = *(int **)(pcVar11 + 0xc29f8);\n  piStack_bc = (int *)0x0;\n  ppbStack_b4 = (byte **)*piVar24;\n  piStack_b0 = piVar20;\n  ppiStack_a8 = unaff_s2;\n  pcStack_a0 = unaff_s4;\n  ppiStack_9c = unaff_s5;\n  ppiStack_98 = unaff_s6;\n  uStack_94 = uVar28;\n  uVar28 = (**(code **)(pcVar11 + 0xc2694))();\n  iVar4 = (**(code **)(pcStack_c8 + -0x7f9c))(*ppiVar8);\n  iVar19 = (**(code **)(pcStack_c8 + -0x7fac))(*ppiVar8);\n  ppiVar2 = ppiVar3;\n  if (ppiVar13 == (int **)&SUB_00000002) {\n    uVar6 = (**(code **)(pcStack_c8 + -0x7ed0))(ppiVar3);\n    piVar17 = &iStack_b8;\n    iStack_b8 = 0;\n    (**(code **)(pcStack_c8 + -0x7d60))(uVar6,0x3ec,0xffffffff);\n    if (iStack_b8 == 0) {\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n    else {\n      iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1]);\n      if ((iVar4 != 0) && (iVar7 == 4)) {\n        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);\n        piStack_bc = (int *)*piStack_bc;\n        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);\n        if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n  }\n  else {\n    if (iVar4 == 0) {\nLAB_000990f4:\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n      if (piStack_bc != (int *)0x0) {\nLAB_000990fc:\n        piVar17 = (int *)0xffffffff;\n        ppiVar14 = &piStack_bc;\n        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);\n      if (iVar19 != 0) {\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }\n      piStack_bc = (int *)0x0;\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n    }\n    ppiVar8 = (int **)sqlite3_mprintf(iVar19 + -0x7478,iVar4);\n    ppiVar14 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar8,0xffffffff);\n    ppiVar2 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7f90))();\n  }\nLAB_00099118:\n  if (ppbStack_b4 == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }\n  pcVar11 = *(code **)(pcStack_c8 + -0x7ba0);\n  uVar28 = 0x992a0;\n  (*pcVar11)();\n  ppiStack_e4 = ppiVar3;\n  piStack_ec = piVar24;\n  iStack_e8 = iVar4;\n  piVar20 = &uStack_120;\n  pcStack_128 = pcVar11 + 0xca310;\n  uStack_dc = uVar28;\n  ppiStack_e0 = ppiVar13;\n  ppiStack_f0 = ppiVar8;\n  piVar26 = *(int **)(pcVar11 + 0xc278c);\n  piVar24 = *ppiVar14;\n  uStack_120 = 0;\n  uStack_11c = 0;\n  uStack_118 = 0;\n  uStack_114 = 0;\n  uStack_110 = 0;\n  uStack_10c = 0;\n  uStack_108 = 0;\n  uStack_104 = 0;\n  uStack_100 = 0;\n  uStack_fc = 0;\n  uStack_f8 = 0;\n  iStack_f4 = *piVar26;\n  pbVar16 = (byte *)((int)piVar24 * 2);\n  if ((int)piVar24 < 1) {\n    uVar22 = 0;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099480:\n    piVar20 = ppiVar2[0xc];\n    piVar23 = (int *)((int)piVar20 >> (uVar22 & 0x1f));\n    piVar10 = piVar23;\n    piVar24 = (int *)(((int)piVar20 << 1) << (~uVar22 & 0x1f) |\n                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f));\n    if ((uVar22 & 0x20) != 0) {\n      piVar10 = (int *)((int)piVar20 >> 0x1f);\n      piVar24 = piVar23;\n    }\n    piVar20 = piVar24;\n    dVar29 = (double)(**(code **)(pcStack_128 + -0x7f18))(piVar10);\n    ppbVar5 = (byte **)0x0;\n    ppiVar14[0xc] = piVar10;\n    ppiVar14[0xd] = piVar24;\n    *(double *)(ppiVar14 + 10) = dVar29 * *(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780);\n  }\n  else {\n    piVar10 = ppiVar14[1];\n    bVar1 = false;\n    piVar17 = piVar10;\n    do {\n      piVar23 = piVar17 + 1;\n      piVar17 = piVar17 + 3;\n      if (*(char *)piVar23 == '@') {\n        bVar1 = true;\n      }\n    } while (piVar10 + (int)piVar24 * 3 != piVar17);\n    piVar17 = (int *)0x0;\n    uVar21 = 0;\n    iVar4 = 0;\nLAB_000993bc:\n    piVar10 = (int *)((int)piVar10 + (int)piVar17);\n    if (!bVar1) {\n      if (*(char *)((int)piVar10 + 5) == '\0') goto LAB_0009939c;\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\n      if (iVar19 != 0) goto LAB_000993d8;\n      if (bVar12 != 2) goto LAB_00099394;\n      if (iVar4 == 0) {\n        iVar19 = 0;\n      }\n      else {\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }\n      piVar17 = (int *)0x1;\n      ppiVar14[5] = (int *)0x1;\n      piVar20 = *(int **)(pcVar11 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar20 + -0x1de2);\n      *(undefined4 *)((int)ppiVar14[4] + iVar19) = 1;\n      pbVar16 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1;\n      *(undefined8 *)(ppiVar14 + 10) = uVar30;\n      ppiVar14[0xd] = (int *)0x1;\n      ppiVar14[0xc] = (int *)0x0;\n      ppiVar14[0xe] = (int *)0x1;\n      ppbVar5 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar10 + 5) == '\0') {\nLAB_0009939c:\n      uVar22 = uVar21;\n      if ((int)piVar24 <= iVar4 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\nLAB_000993d8:\n      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar24 = ppiVar14[4];\n      uVar22 = uVar21 + 2;\n      *(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;\n      *(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';\n      piVar24[iVar4 * 2] = (int)uVar22 >> 1;\n      *(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;\n      piVar24 = *ppiVar14;\n      uVar21 = uVar22;\n      if ((int)piVar24 <= iVar4 + 1) {\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }\n    piVar17 = piVar17 + 3;\n    if ((int)uVar21 < 0x28) goto code_r0x000993b8;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099544:\n    pbVar16 = (byte *)(iVar4 + 1);\n    piVar24 = (int *)sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4);\n    ppiVar14[6] = piVar24;\n    if (piVar24 != (int *)0x0) {\n      uVar22 = (int)uVar21 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar5 = (byte **)&DAT_00000007;\n  }\nLAB_000994e0:\n  if (iStack_f4 == *piVar26) {\n    return ppbVar5;\n  }\n  pcVar11 = *(code **)(pcStack_128 + -0x7ba0);\n  iVar4 = iStack_f4;\n  (*pcVar11)();\n  ppbVar9 = &pbStack_130;\n  puVar25 = *(undefined4 **)(pcVar11 + 0xc2410);\n  ppbVar15 = (byte **)*puVar25;\n  ppbVar5 = ppbVar15;\n  pbStack_130 = pbVar16;\n  piStack_12c = piVar17;\n  if ((*(int *)(iVar4 + 0x28) != 0) || (99 < *(int *)(iVar4 + 0x30))) goto LAB_0009967c;\n  piVar24 = (int *)sqlite3_vmprintf();\n  if (piVar24 == (int *)0x0) {\nLAB_000996f0:\n    *(undefined4 *)(iVar4 + 0x28) = 7;\n  }\n  else {\n    ppbVar9 = *(byte ***)(iVar4 + 0x2c);\n    if (ppbVar9 == (byte **)0x0) {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);\n    }\n    piVar20 = (int *)(*(int *)(pcVar11 + 0xc1fe0) - 0x741c);\n    iVar19 = sqlite3_mprintf();\n    *(int *)(iVar4 + 0x2c) = iVar19;\n    piVar17 = piVar24;\n    if (iVar19 == 0) goto LAB_000996f0;\n  }\n  *(int *)(iVar4 + 0x30) = *(int *)(iVar4 + 0x30) + 1;\n  ppbVar5 = ppbVar9;\nLAB_0009967c:\n  ppbVar9 = (byte **)*puVar25;\n  if (ppbVar15 == ppbVar9) {\n    return ppbVar9;\n  }\n  pcVar11 = *(code **)(pcVar11 + 0xc23f4);\n  (*pcVar11)();\n  piVar24 = *(int **)(pcVar11 + 0xc231c);\n  ppbStack_180 = (byte **)0x0;\n  iVar4 = *piVar24;\n  ppbVar9 = (byte **)0x0;\n  if (ppbVar5 != (byte **)0x0) {\n    if (*(char *)ppbVar5 == '$') {\n      pbVar16 = (byte *)((int)ppbVar5 + 1);\n      ppbVar9 = (byte **)FUN_0008b18c();\n      ppbVar5 = ppbStack_180;\n    }\n    else {\n      iVar19 = *(int *)(pcVar11 + 0xc1eec);\n      *(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01';\n      ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414);\n      if (ppbVar9 == (byte **)0x0) {\n        (**(code **)(pcVar11 + 0xc2074))(piVar17);\n        ppbVar9 = (byte **)0x0;\n      }\n      else {\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }\n    }\n  }\n  if (iVar4 != *piVar24) {\n    pcVar11 = *(code **)(pcVar11 + 0xc2300);\n    (*pcVar11)();\n    ppbVar9 = (byte **)FUN_0008ad48();\n    if (ppbVar9 != (byte **)0x0) {\n      if (ppbVar5 == (byte **)&SUB_00000002) {\n        uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));\n        ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);\n      }\n      else {\n        ppbVar9 = (byte **)ppbVar9[2];\n      }\n      if (ppbVar9 != (byte **)0x0) {\n                    \n                    \n        ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n        return ppbVar5;\n      }\n    }\n    return ppbVar9;\n  }\n  return ppbVar9;\ncode_r0x000993b8:\n  piVar10 = ppiVar14[1];\n  iVar4 = iVar4 + 1;\n  goto LAB_000993bc;\n}" type_identifier (pointer_declarator "** FUN_00098c58(int **param_1,int **param_2,int **param_3,int *param_4)" * (pointer_declarator "* FUN_00098c58(int **param_1,int **param_2,int **param_3,int *param_4)" * (function_declarator "FUN_00098c58(int **param_1,int **param_2,int **param_3,int *param_4)" identifier (parameter_list "(int **param_1,int **param_2,int **param_3,int *param_4)" ( (parameter_declaration "int **param_1" primitive_type (pointer_declarator "**param_1" * (pointer_declarator "*param_1" * identifier))) , (parameter_declaration "int **param_2" primitive_type (pointer_declarator "**param_2" * (pointer_declarator "*param_2" * identifier))) , (parameter_declaration "int **param_3" primitive_type (pointer_declarator "**param_3" * (pointer_declarator "*param_3" * identifier))) , (parameter_declaration "int *param_4" primitive_type (pointer_declarator "*param_4" * identifier)) ))))) (compound_statement "{\n  bool bVar1;\n  int **ppiVar2;\n  int **ppiVar3;\n  int iVar4;\n  byte **ppbVar5;\n  undefined4 uVar6;\n  int iVar7;\n  int **ppiVar8;\n  byte **ppbVar9;\n  int *piVar10;\n  code *pcVar11;\n  byte bVar12;\n  int **ppiVar13;\n  int **ppiVar14;\n  byte **ppbVar15;\n  byte *pbVar16;\n  int *piVar17;\n  undefined1 uVar18;\n  int iVar19;\n  int *piVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  int *piVar24;\n  undefined4 *puVar25;\n  int **unaff_s2;\n  int **unaff_s3;\n  int *piVar26;\n  code *unaff_s4;\n  int **unaff_s5;\n  int **unaff_s6;\n  undefined *puVar27;\n  undefined4 uVar28;\n  double dVar29;\n  undefined8 uVar30;\n  byte **ppbStack_180;\n  byte *pbStack_130;\n  int *piStack_12c;\n  code *pcStack_128;\n  undefined4 uStack_120;\n  undefined4 uStack_11c;\n  undefined4 uStack_118;\n  undefined4 uStack_114;\n  undefined4 uStack_110;\n  undefined4 uStack_10c;\n  undefined4 uStack_108;\n  undefined4 uStack_104;\n  undefined4 uStack_100;\n  undefined4 uStack_fc;\n  undefined1 uStack_f8;\n  int iStack_f4;\n  int **ppiStack_f0;\n  int *piStack_ec;\n  int iStack_e8;\n  int **ppiStack_e4;\n  int **ppiStack_e0;\n  undefined4 uStack_dc;\n  code *pcStack_c8;\n  int *piStack_bc;\n  int iStack_b8;\n  byte **ppbStack_b4;\n  int *piStack_b0;\n  int **ppiStack_ac;\n  int **ppiStack_a8;\n  int **ppiStack_a4;\n  code *pcStack_a0;\n  int **ppiStack_9c;\n  int **ppiStack_98;\n  undefined4 uStack_94;\n  undefined *puStack_80;\n  int **ppiStack_78;\n  byte **ppbStack_74;\n  byte **ppbStack_6c;\n  int **ppiStack_68;\n  int **ppiStack_64;\n  int **ppiStack_60;\n  code *pcStack_5c;\n  int *piStack_4c;\n  int *local_30;\n  int **local_2c;\n  \n  puVar27 = PTR___stack_chk_guard_0015ba2c;\n  local_30 = (int *)0x0;\n  local_2c = *(int ***)PTR___stack_chk_guard_0015ba2c;\n  ppiVar8 = param_3;\n  piVar17 = param_4;\n  ppiVar2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x71f4);\n  if (ppiVar2 == (int **)0x0) {\n    ppbVar5 = (byte **)&DAT_00000007;\n  }\n  else {\n    unaff_s5 = &local_30;\n    unaff_s4 = (code *)(*(code *)PTR_strlen_0015b9c4)(ppiVar2);\n    unaff_s2 = (int **)(PTR_LAB_0015b65c + 0x273c);\n    ppiVar3 = (int **)(*(code *)unaff_s2)(ppiVar2,unaff_s5);\n    ppiVar8 = ppiVar2;\n    if (ppiVar3 != (int **)0x0) {\n      ppiVar8 = ppiVar3;\n    }\n    unaff_s3 = (int **)(PTR_LAB_0015b65c + 0x1120);\n    *(code *)((int)ppiVar8 + (int)local_30) = (code)0x0;\n    (*(code *)unaff_s3)(ppiVar8);\n    iVar4 = (*(code *)PTR_strlen_0015b9c4)();\n    iVar4 = (*(code *)(PTR_LAB_0015b6c0 + -0x2c24))(param_1,ppiVar8,iVar4 + 1);\n    unaff_s6 = ppiVar2;\n    if ((iVar4 == 0) || (iVar4 = *(int *)(iVar4 + 8), iVar4 == 0)) {\n      ppbVar5 = (byte **)0x1;\n      param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478);\n      FUN_00092618(param_4);\n    }\n    else {\n      unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);\n      pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);\n      iVar19 = 0;\n      param_1 = (int **)0x0;\n      while ((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }\n      param_2 = param_1;\n      ppiVar8 = param_3;\n      ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);\n      if (ppbVar5 == (byte **)0x0) {\n        **param_3 = iVar4;\n      }\n      else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }\n      (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n  }\nLAB_00098e8c:\n  if (local_2c == *(int ***)puVar27) {\n    return ppbVar5;\n  }\n  pcVar11 = FUN_00098f2c;\n  ppiVar2 = local_2c;\n  puVar27 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  puStack_80 = puVar27 + 0xca684;\n  piVar20 = *(int **)(puVar27 + 0xc2b00);\n  ppbStack_74 = (byte **)*piVar20;\n  ppiVar3 = ppiVar2;\n  ppiVar13 = param_2;\n  ppiStack_ac = param_1;\n  ppiStack_a4 = unaff_s3;\n  ppbStack_6c = ppbVar5;\n  ppiStack_68 = param_1;\n  ppiStack_64 = unaff_s2;\n  ppiStack_60 = unaff_s3;\n  pcStack_5c = pcVar11;\n  piStack_4c = piVar17;\n  if (*ppiVar2 == (int *)0x0) {\n    ppiVar13 = &piStack_4c;\n    ppiStack_78 = ppiVar13;\n    ppiVar14 = (int **)sqlite3_vmprintf(ppiVar8);\n    if (ppiVar14 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *ppiVar2 = (int *)0x7;\n      ppiVar3 = (int **)*param_2;\n    }\n    else {\n      ppiVar3 = (int **)*param_2;\n      unaff_s2 = ppiVar14;\n      if (ppiVar3 != (int **)0x0) {\n        ppiVar8 = ppiVar14;\n        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);\n        ppiVar13 = ppiVar3;\n        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar3 = (int **)*param_2;\n      }\n    }\n    (**(code **)(puStack_80 + -0x7f90))();\n    *param_2 = (int *)unaff_s2;\n    ppiStack_ac = ppiVar2;\n    ppiStack_a4 = param_2;\n  }\n  if (ppbStack_74 == (byte **)*piVar20) {\n    return (byte **)*piVar20;\n  }\n  pcVar11 = *(code **)(puStack_80 + -0x7ba0);\n  uVar28 = 0x99034;\n  (*pcVar11)();\n  pcStack_c8 = pcVar11 + 0xca57c;\n  piVar24 = *(int **)(pcVar11 + 0xc29f8);\n  piStack_bc = (int *)0x0;\n  ppbStack_b4 = (byte **)*piVar24;\n  piStack_b0 = piVar20;\n  ppiStack_a8 = unaff_s2;\n  pcStack_a0 = unaff_s4;\n  ppiStack_9c = unaff_s5;\n  ppiStack_98 = unaff_s6;\n  uStack_94 = uVar28;\n  uVar28 = (**(code **)(pcVar11 + 0xc2694))();\n  iVar4 = (**(code **)(pcStack_c8 + -0x7f9c))(*ppiVar8);\n  iVar19 = (**(code **)(pcStack_c8 + -0x7fac))(*ppiVar8);\n  ppiVar2 = ppiVar3;\n  if (ppiVar13 == (int **)&SUB_00000002) {\n    uVar6 = (**(code **)(pcStack_c8 + -0x7ed0))(ppiVar3);\n    piVar17 = &iStack_b8;\n    iStack_b8 = 0;\n    (**(code **)(pcStack_c8 + -0x7d60))(uVar6,0x3ec,0xffffffff);\n    if (iStack_b8 == 0) {\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n    else {\n      iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1]);\n      if ((iVar4 != 0) && (iVar7 == 4)) {\n        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);\n        piStack_bc = (int *)*piStack_bc;\n        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);\n        if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n  }\n  else {\n    if (iVar4 == 0) {\nLAB_000990f4:\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n      if (piStack_bc != (int *)0x0) {\nLAB_000990fc:\n        piVar17 = (int *)0xffffffff;\n        ppiVar14 = &piStack_bc;\n        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);\n      if (iVar19 != 0) {\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }\n      piStack_bc = (int *)0x0;\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n    }\n    ppiVar8 = (int **)sqlite3_mprintf(iVar19 + -0x7478,iVar4);\n    ppiVar14 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar8,0xffffffff);\n    ppiVar2 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7f90))();\n  }\nLAB_00099118:\n  if (ppbStack_b4 == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }\n  pcVar11 = *(code **)(pcStack_c8 + -0x7ba0);\n  uVar28 = 0x992a0;\n  (*pcVar11)();\n  ppiStack_e4 = ppiVar3;\n  piStack_ec = piVar24;\n  iStack_e8 = iVar4;\n  piVar20 = &uStack_120;\n  pcStack_128 = pcVar11 + 0xca310;\n  uStack_dc = uVar28;\n  ppiStack_e0 = ppiVar13;\n  ppiStack_f0 = ppiVar8;\n  piVar26 = *(int **)(pcVar11 + 0xc278c);\n  piVar24 = *ppiVar14;\n  uStack_120 = 0;\n  uStack_11c = 0;\n  uStack_118 = 0;\n  uStack_114 = 0;\n  uStack_110 = 0;\n  uStack_10c = 0;\n  uStack_108 = 0;\n  uStack_104 = 0;\n  uStack_100 = 0;\n  uStack_fc = 0;\n  uStack_f8 = 0;\n  iStack_f4 = *piVar26;\n  pbVar16 = (byte *)((int)piVar24 * 2);\n  if ((int)piVar24 < 1) {\n    uVar22 = 0;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099480:\n    piVar20 = ppiVar2[0xc];\n    piVar23 = (int *)((int)piVar20 >> (uVar22 & 0x1f));\n    piVar10 = piVar23;\n    piVar24 = (int *)(((int)piVar20 << 1) << (~uVar22 & 0x1f) |\n                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f));\n    if ((uVar22 & 0x20) != 0) {\n      piVar10 = (int *)((int)piVar20 >> 0x1f);\n      piVar24 = piVar23;\n    }\n    piVar20 = piVar24;\n    dVar29 = (double)(**(code **)(pcStack_128 + -0x7f18))(piVar10);\n    ppbVar5 = (byte **)0x0;\n    ppiVar14[0xc] = piVar10;\n    ppiVar14[0xd] = piVar24;\n    *(double *)(ppiVar14 + 10) = dVar29 * *(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780);\n  }\n  else {\n    piVar10 = ppiVar14[1];\n    bVar1 = false;\n    piVar17 = piVar10;\n    do {\n      piVar23 = piVar17 + 1;\n      piVar17 = piVar17 + 3;\n      if (*(char *)piVar23 == '@') {\n        bVar1 = true;\n      }\n    } while (piVar10 + (int)piVar24 * 3 != piVar17);\n    piVar17 = (int *)0x0;\n    uVar21 = 0;\n    iVar4 = 0;\nLAB_000993bc:\n    piVar10 = (int *)((int)piVar10 + (int)piVar17);\n    if (!bVar1) {\n      if (*(char *)((int)piVar10 + 5) == '\0') goto LAB_0009939c;\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\n      if (iVar19 != 0) goto LAB_000993d8;\n      if (bVar12 != 2) goto LAB_00099394;\n      if (iVar4 == 0) {\n        iVar19 = 0;\n      }\n      else {\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }\n      piVar17 = (int *)0x1;\n      ppiVar14[5] = (int *)0x1;\n      piVar20 = *(int **)(pcVar11 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar20 + -0x1de2);\n      *(undefined4 *)((int)ppiVar14[4] + iVar19) = 1;\n      pbVar16 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1;\n      *(undefined8 *)(ppiVar14 + 10) = uVar30;\n      ppiVar14[0xd] = (int *)0x1;\n      ppiVar14[0xc] = (int *)0x0;\n      ppiVar14[0xe] = (int *)0x1;\n      ppbVar5 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar10 + 5) == '\0') {\nLAB_0009939c:\n      uVar22 = uVar21;\n      if ((int)piVar24 <= iVar4 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\nLAB_000993d8:\n      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar24 = ppiVar14[4];\n      uVar22 = uVar21 + 2;\n      *(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;\n      *(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';\n      piVar24[iVar4 * 2] = (int)uVar22 >> 1;\n      *(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;\n      piVar24 = *ppiVar14;\n      uVar21 = uVar22;\n      if ((int)piVar24 <= iVar4 + 1) {\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }\n    piVar17 = piVar17 + 3;\n    if ((int)uVar21 < 0x28) goto code_r0x000993b8;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099544:\n    pbVar16 = (byte *)(iVar4 + 1);\n    piVar24 = (int *)sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4);\n    ppiVar14[6] = piVar24;\n    if (piVar24 != (int *)0x0) {\n      uVar22 = (int)uVar21 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar5 = (byte **)&DAT_00000007;\n  }\nLAB_000994e0:\n  if (iStack_f4 == *piVar26) {\n    return ppbVar5;\n  }\n  pcVar11 = *(code **)(pcStack_128 + -0x7ba0);\n  iVar4 = iStack_f4;\n  (*pcVar11)();\n  ppbVar9 = &pbStack_130;\n  puVar25 = *(undefined4 **)(pcVar11 + 0xc2410);\n  ppbVar15 = (byte **)*puVar25;\n  ppbVar5 = ppbVar15;\n  pbStack_130 = pbVar16;\n  piStack_12c = piVar17;\n  if ((*(int *)(iVar4 + 0x28) != 0) || (99 < *(int *)(iVar4 + 0x30))) goto LAB_0009967c;\n  piVar24 = (int *)sqlite3_vmprintf();\n  if (piVar24 == (int *)0x0) {\nLAB_000996f0:\n    *(undefined4 *)(iVar4 + 0x28) = 7;\n  }\n  else {\n    ppbVar9 = *(byte ***)(iVar4 + 0x2c);\n    if (ppbVar9 == (byte **)0x0) {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);\n    }\n    piVar20 = (int *)(*(int *)(pcVar11 + 0xc1fe0) - 0x741c);\n    iVar19 = sqlite3_mprintf();\n    *(int *)(iVar4 + 0x2c) = iVar19;\n    piVar17 = piVar24;\n    if (iVar19 == 0) goto LAB_000996f0;\n  }\n  *(int *)(iVar4 + 0x30) = *(int *)(iVar4 + 0x30) + 1;\n  ppbVar5 = ppbVar9;\nLAB_0009967c:\n  ppbVar9 = (byte **)*puVar25;\n  if (ppbVar15 == ppbVar9) {\n    return ppbVar9;\n  }\n  pcVar11 = *(code **)(pcVar11 + 0xc23f4);\n  (*pcVar11)();\n  piVar24 = *(int **)(pcVar11 + 0xc231c);\n  ppbStack_180 = (byte **)0x0;\n  iVar4 = *piVar24;\n  ppbVar9 = (byte **)0x0;\n  if (ppbVar5 != (byte **)0x0) {\n    if (*(char *)ppbVar5 == '$') {\n      pbVar16 = (byte *)((int)ppbVar5 + 1);\n      ppbVar9 = (byte **)FUN_0008b18c();\n      ppbVar5 = ppbStack_180;\n    }\n    else {\n      iVar19 = *(int *)(pcVar11 + 0xc1eec);\n      *(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01';\n      ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414);\n      if (ppbVar9 == (byte **)0x0) {\n        (**(code **)(pcVar11 + 0xc2074))(piVar17);\n        ppbVar9 = (byte **)0x0;\n      }\n      else {\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }\n    }\n  }\n  if (iVar4 != *piVar24) {\n    pcVar11 = *(code **)(pcVar11 + 0xc2300);\n    (*pcVar11)();\n    ppbVar9 = (byte **)FUN_0008ad48();\n    if (ppbVar9 != (byte **)0x0) {\n      if (ppbVar5 == (byte **)&SUB_00000002) {\n        uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));\n        ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);\n      }\n      else {\n        ppbVar9 = (byte **)ppbVar9[2];\n      }\n      if (ppbVar9 != (byte **)0x0) {\n                    \n                    \n        ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n        return ppbVar5;\n      }\n    }\n    return ppbVar9;\n  }\n  return ppbVar9;\ncode_r0x000993b8:\n  piVar10 = ppiVar14[1];\n  iVar4 = iVar4 + 1;\n  goto LAB_000993bc;\n}" { (declaration "bool bVar1;" primitive_type identifier ;) (declaration "int **ppiVar2;" primitive_type (pointer_declarator "**ppiVar2" * (pointer_declarator "*ppiVar2" * identifier)) ;) (declaration "int **ppiVar3;" primitive_type (pointer_declarator "**ppiVar3" * (pointer_declarator "*ppiVar3" * identifier)) ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "byte **ppbVar5;" type_identifier (pointer_declarator "**ppbVar5" * (pointer_declarator "*ppbVar5" * identifier)) ;) (declaration "undefined4 uVar6;" type_identifier identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "int **ppiVar8;" primitive_type (pointer_declarator "**ppiVar8" * (pointer_declarator "*ppiVar8" * identifier)) ;) (declaration "byte **ppbVar9;" type_identifier (pointer_declarator "**ppbVar9" * (pointer_declarator "*ppbVar9" * identifier)) ;) (declaration "int *piVar10;" primitive_type (pointer_declarator "*piVar10" * identifier) ;) (declaration "code *pcVar11;" type_identifier (pointer_declarator "*pcVar11" * identifier) ;) (declaration "byte bVar12;" type_identifier identifier ;) (declaration "int **ppiVar13;" primitive_type (pointer_declarator "**ppiVar13" * (pointer_declarator "*ppiVar13" * identifier)) ;) (declaration "int **ppiVar14;" primitive_type (pointer_declarator "**ppiVar14" * (pointer_declarator "*ppiVar14" * identifier)) ;) (declaration "byte **ppbVar15;" type_identifier (pointer_declarator "**ppbVar15" * (pointer_declarator "*ppbVar15" * identifier)) ;) (declaration "byte *pbVar16;" type_identifier (pointer_declarator "*pbVar16" * identifier) ;) (declaration "int *piVar17;" primitive_type (pointer_declarator "*piVar17" * identifier) ;) (declaration "undefined1 uVar18;" type_identifier identifier ;) (declaration "int iVar19;" primitive_type identifier ;) (declaration "int *piVar20;" primitive_type (pointer_declarator "*piVar20" * identifier) ;) (declaration "uint uVar21;" type_identifier identifier ;) (declaration "uint uVar22;" type_identifier identifier ;) (declaration "int *piVar23;" primitive_type (pointer_declarator "*piVar23" * identifier) ;) (declaration "int *piVar24;" primitive_type (pointer_declarator "*piVar24" * identifier) ;) (declaration "undefined4 *puVar25;" type_identifier (pointer_declarator "*puVar25" * identifier) ;) (declaration "int **unaff_s2;" primitive_type (pointer_declarator "**unaff_s2" * (pointer_declarator "*unaff_s2" * identifier)) ;) (declaration "int **unaff_s3;" primitive_type (pointer_declarator "**unaff_s3" * (pointer_declarator "*unaff_s3" * identifier)) ;) (declaration "int *piVar26;" primitive_type (pointer_declarator "*piVar26" * identifier) ;) (declaration "code *unaff_s4;" type_identifier (pointer_declarator "*unaff_s4" * identifier) ;) (declaration "int **unaff_s5;" primitive_type (pointer_declarator "**unaff_s5" * (pointer_declarator "*unaff_s5" * identifier)) ;) (declaration "int **unaff_s6;" primitive_type (pointer_declarator "**unaff_s6" * (pointer_declarator "*unaff_s6" * identifier)) ;) (declaration "undefined *puVar27;" type_identifier (pointer_declarator "*puVar27" * identifier) ;) (declaration "undefined4 uVar28;" type_identifier identifier ;) (declaration "double dVar29;" primitive_type identifier ;) (declaration "undefined8 uVar30;" type_identifier identifier ;) (declaration "byte **ppbStack_180;" type_identifier (pointer_declarator "**ppbStack_180" * (pointer_declarator "*ppbStack_180" * identifier)) ;) (declaration "byte *pbStack_130;" type_identifier (pointer_declarator "*pbStack_130" * identifier) ;) (declaration "int *piStack_12c;" primitive_type (pointer_declarator "*piStack_12c" * identifier) ;) (declaration "code *pcStack_128;" type_identifier (pointer_declarator "*pcStack_128" * identifier) ;) (declaration "undefined4 uStack_120;" type_identifier identifier ;) (declaration "undefined4 uStack_11c;" type_identifier identifier ;) (declaration "undefined4 uStack_118;" type_identifier identifier ;) (declaration "undefined4 uStack_114;" type_identifier identifier ;) (declaration "undefined4 uStack_110;" type_identifier identifier ;) (declaration "undefined4 uStack_10c;" type_identifier identifier ;) (declaration "undefined4 uStack_108;" type_identifier identifier ;) (declaration "undefined4 uStack_104;" type_identifier identifier ;) (declaration "undefined4 uStack_100;" type_identifier identifier ;) (declaration "undefined4 uStack_fc;" type_identifier identifier ;) (declaration "undefined1 uStack_f8;" type_identifier identifier ;) (declaration "int iStack_f4;" primitive_type identifier ;) (declaration "int **ppiStack_f0;" primitive_type (pointer_declarator "**ppiStack_f0" * (pointer_declarator "*ppiStack_f0" * identifier)) ;) (declaration "int *piStack_ec;" primitive_type (pointer_declarator "*piStack_ec" * identifier) ;) (declaration "int iStack_e8;" primitive_type identifier ;) (declaration "int **ppiStack_e4;" primitive_type (pointer_declarator "**ppiStack_e4" * (pointer_declarator "*ppiStack_e4" * identifier)) ;) (declaration "int **ppiStack_e0;" primitive_type (pointer_declarator "**ppiStack_e0" * (pointer_declarator "*ppiStack_e0" * identifier)) ;) (declaration "undefined4 uStack_dc;" type_identifier identifier ;) (declaration "code *pcStack_c8;" type_identifier (pointer_declarator "*pcStack_c8" * identifier) ;) (declaration "int *piStack_bc;" primitive_type (pointer_declarator "*piStack_bc" * identifier) ;) (declaration "int iStack_b8;" primitive_type identifier ;) (declaration "byte **ppbStack_b4;" type_identifier (pointer_declarator "**ppbStack_b4" * (pointer_declarator "*ppbStack_b4" * identifier)) ;) (declaration "int *piStack_b0;" primitive_type (pointer_declarator "*piStack_b0" * identifier) ;) (declaration "int **ppiStack_ac;" primitive_type (pointer_declarator "**ppiStack_ac" * (pointer_declarator "*ppiStack_ac" * identifier)) ;) (declaration "int **ppiStack_a8;" primitive_type (pointer_declarator "**ppiStack_a8" * (pointer_declarator "*ppiStack_a8" * identifier)) ;) (declaration "int **ppiStack_a4;" primitive_type (pointer_declarator "**ppiStack_a4" * (pointer_declarator "*ppiStack_a4" * identifier)) ;) (declaration "code *pcStack_a0;" type_identifier (pointer_declarator "*pcStack_a0" * identifier) ;) (declaration "int **ppiStack_9c;" primitive_type (pointer_declarator "**ppiStack_9c" * (pointer_declarator "*ppiStack_9c" * identifier)) ;) (declaration "int **ppiStack_98;" primitive_type (pointer_declarator "**ppiStack_98" * (pointer_declarator "*ppiStack_98" * identifier)) ;) (declaration "undefined4 uStack_94;" type_identifier identifier ;) (declaration "undefined *puStack_80;" type_identifier (pointer_declarator "*puStack_80" * identifier) ;) (declaration "int **ppiStack_78;" primitive_type (pointer_declarator "**ppiStack_78" * (pointer_declarator "*ppiStack_78" * identifier)) ;) (declaration "byte **ppbStack_74;" type_identifier (pointer_declarator "**ppbStack_74" * (pointer_declarator "*ppbStack_74" * identifier)) ;) (declaration "byte **ppbStack_6c;" type_identifier (pointer_declarator "**ppbStack_6c" * (pointer_declarator "*ppbStack_6c" * identifier)) ;) (declaration "int **ppiStack_68;" primitive_type (pointer_declarator "**ppiStack_68" * (pointer_declarator "*ppiStack_68" * identifier)) ;) (declaration "int **ppiStack_64;" primitive_type (pointer_declarator "**ppiStack_64" * (pointer_declarator "*ppiStack_64" * identifier)) ;) (declaration "int **ppiStack_60;" primitive_type (pointer_declarator "**ppiStack_60" * (pointer_declarator "*ppiStack_60" * identifier)) ;) (declaration "code *pcStack_5c;" type_identifier (pointer_declarator "*pcStack_5c" * identifier) ;) (declaration "int *piStack_4c;" primitive_type (pointer_declarator "*piStack_4c" * identifier) ;) (declaration "int *local_30;" primitive_type (pointer_declarator "*local_30" * identifier) ;) (declaration "int **local_2c;" primitive_type (pointer_declarator "**local_2c" * (pointer_declarator "*local_2c" * identifier)) ;) (expression_statement "puVar27 = PTR___stack_chk_guard_0015ba2c;" (assignment_expression "puVar27 = PTR___stack_chk_guard_0015ba2c" identifier = identifier) ;) (expression_statement "local_30 = (int *)0x0;" (assignment_expression "local_30 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_2c = *(int ***)PTR___stack_chk_guard_0015ba2c;" (assignment_expression "local_2c = *(int ***)PTR___stack_chk_guard_0015ba2c" identifier = (pointer_expression "*(int ***)PTR___stack_chk_guard_0015ba2c" * (cast_expression "(int ***)PTR___stack_chk_guard_0015ba2c" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) identifier))) ;) (expression_statement "ppiVar8 = param_3;" (assignment_expression "ppiVar8 = param_3" identifier = identifier) ;) (expression_statement "piVar17 = param_4;" (assignment_expression "piVar17 = param_4" identifier = identifier) ;) (expression_statement "ppiVar2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x71f4);" (assignment_expression "ppiVar2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x71f4)" identifier = (cast_expression "(int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x71f4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x71f4)" identifier (argument_list "(PTR_LAB_0015b5e8 + 0x71f4)" ( (binary_expression "PTR_LAB_0015b5e8 + 0x71f4" identifier + number_literal) ))))) ;) (if_statement "if (ppiVar2 == (int **)0x0) {\n    ppbVar5 = (byte **)&DAT_00000007;\n  }\n  else {\n    unaff_s5 = &local_30;\n    unaff_s4 = (code *)(*(code *)PTR_strlen_0015b9c4)(ppiVar2);\n    unaff_s2 = (int **)(PTR_LAB_0015b65c + 0x273c);\n    ppiVar3 = (int **)(*(code *)unaff_s2)(ppiVar2,unaff_s5);\n    ppiVar8 = ppiVar2;\n    if (ppiVar3 != (int **)0x0) {\n      ppiVar8 = ppiVar3;\n    }\n    unaff_s3 = (int **)(PTR_LAB_0015b65c + 0x1120);\n    *(code *)((int)ppiVar8 + (int)local_30) = (code)0x0;\n    (*(code *)unaff_s3)(ppiVar8);\n    iVar4 = (*(code *)PTR_strlen_0015b9c4)();\n    iVar4 = (*(code *)(PTR_LAB_0015b6c0 + -0x2c24))(param_1,ppiVar8,iVar4 + 1);\n    unaff_s6 = ppiVar2;\n    if ((iVar4 == 0) || (iVar4 = *(int *)(iVar4 + 8), iVar4 == 0)) {\n      ppbVar5 = (byte **)0x1;\n      param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478);\n      FUN_00092618(param_4);\n    }\n    else {\n      unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);\n      pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);\n      iVar19 = 0;\n      param_1 = (int **)0x0;\n      while ((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }\n      param_2 = param_1;\n      ppiVar8 = param_3;\n      ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);\n      if (ppbVar5 == (byte **)0x0) {\n        **param_3 = iVar4;\n      }\n      else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }\n      (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n  }" if (parenthesized_expression "(ppiVar2 == (int **)0x0)" ( (binary_expression "ppiVar2 == (int **)0x0" identifier == (cast_expression "(int **)0x0" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n    ppbVar5 = (byte **)&DAT_00000007;\n  }" { (expression_statement "ppbVar5 = (byte **)&DAT_00000007;" (assignment_expression "ppbVar5 = (byte **)&DAT_00000007" identifier = (cast_expression "(byte **)&DAT_00000007" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&DAT_00000007" & identifier))) ;) }) (else_clause "else {\n    unaff_s5 = &local_30;\n    unaff_s4 = (code *)(*(code *)PTR_strlen_0015b9c4)(ppiVar2);\n    unaff_s2 = (int **)(PTR_LAB_0015b65c + 0x273c);\n    ppiVar3 = (int **)(*(code *)unaff_s2)(ppiVar2,unaff_s5);\n    ppiVar8 = ppiVar2;\n    if (ppiVar3 != (int **)0x0) {\n      ppiVar8 = ppiVar3;\n    }\n    unaff_s3 = (int **)(PTR_LAB_0015b65c + 0x1120);\n    *(code *)((int)ppiVar8 + (int)local_30) = (code)0x0;\n    (*(code *)unaff_s3)(ppiVar8);\n    iVar4 = (*(code *)PTR_strlen_0015b9c4)();\n    iVar4 = (*(code *)(PTR_LAB_0015b6c0 + -0x2c24))(param_1,ppiVar8,iVar4 + 1);\n    unaff_s6 = ppiVar2;\n    if ((iVar4 == 0) || (iVar4 = *(int *)(iVar4 + 8), iVar4 == 0)) {\n      ppbVar5 = (byte **)0x1;\n      param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478);\n      FUN_00092618(param_4);\n    }\n    else {\n      unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);\n      pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);\n      iVar19 = 0;\n      param_1 = (int **)0x0;\n      while ((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }\n      param_2 = param_1;\n      ppiVar8 = param_3;\n      ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);\n      if (ppbVar5 == (byte **)0x0) {\n        **param_3 = iVar4;\n      }\n      else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }\n      (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n  }" else (compound_statement "{\n    unaff_s5 = &local_30;\n    unaff_s4 = (code *)(*(code *)PTR_strlen_0015b9c4)(ppiVar2);\n    unaff_s2 = (int **)(PTR_LAB_0015b65c + 0x273c);\n    ppiVar3 = (int **)(*(code *)unaff_s2)(ppiVar2,unaff_s5);\n    ppiVar8 = ppiVar2;\n    if (ppiVar3 != (int **)0x0) {\n      ppiVar8 = ppiVar3;\n    }\n    unaff_s3 = (int **)(PTR_LAB_0015b65c + 0x1120);\n    *(code *)((int)ppiVar8 + (int)local_30) = (code)0x0;\n    (*(code *)unaff_s3)(ppiVar8);\n    iVar4 = (*(code *)PTR_strlen_0015b9c4)();\n    iVar4 = (*(code *)(PTR_LAB_0015b6c0 + -0x2c24))(param_1,ppiVar8,iVar4 + 1);\n    unaff_s6 = ppiVar2;\n    if ((iVar4 == 0) || (iVar4 = *(int *)(iVar4 + 8), iVar4 == 0)) {\n      ppbVar5 = (byte **)0x1;\n      param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478);\n      FUN_00092618(param_4);\n    }\n    else {\n      unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);\n      pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);\n      iVar19 = 0;\n      param_1 = (int **)0x0;\n      while ((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }\n      param_2 = param_1;\n      ppiVar8 = param_3;\n      ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);\n      if (ppbVar5 == (byte **)0x0) {\n        **param_3 = iVar4;\n      }\n      else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }\n      (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n  }" { (expression_statement "unaff_s5 = &local_30;" (assignment_expression "unaff_s5 = &local_30" identifier = (pointer_expression "&local_30" & identifier)) ;) (expression_statement "unaff_s4 = (code *)(*(code *)PTR_strlen_0015b9c4)(ppiVar2);" (assignment_expression "unaff_s4 = (code *)(*(code *)PTR_strlen_0015b9c4)(ppiVar2)" identifier = (cast_expression "(code *)(*(code *)PTR_strlen_0015b9c4)(ppiVar2)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_strlen_0015b9c4)(ppiVar2)" (parenthesized_expression "(*(code *)PTR_strlen_0015b9c4)" ( (pointer_expression "*(code *)PTR_strlen_0015b9c4" * (cast_expression "(code *)PTR_strlen_0015b9c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(ppiVar2)" ( identifier ))))) ;) (expression_statement "unaff_s2 = (int **)(PTR_LAB_0015b65c + 0x273c);" (assignment_expression "unaff_s2 = (int **)(PTR_LAB_0015b65c + 0x273c)" identifier = (cast_expression "(int **)(PTR_LAB_0015b65c + 0x273c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(PTR_LAB_0015b65c + 0x273c)" ( (binary_expression "PTR_LAB_0015b65c + 0x273c" identifier + number_literal) )))) ;) (expression_statement "ppiVar3 = (int **)(*(code *)unaff_s2)(ppiVar2,unaff_s5);" (assignment_expression "ppiVar3 = (int **)(*(code *)unaff_s2)(ppiVar2,unaff_s5)" identifier = (cast_expression "(int **)(*(code *)unaff_s2)(ppiVar2,unaff_s5)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "(*(code *)unaff_s2)(ppiVar2,unaff_s5)" (parenthesized_expression "(*(code *)unaff_s2)" ( (pointer_expression "*(code *)unaff_s2" * (cast_expression "(code *)unaff_s2" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(ppiVar2,unaff_s5)" ( identifier , identifier ))))) ;) (expression_statement "ppiVar8 = ppiVar2;" (assignment_expression "ppiVar8 = ppiVar2" identifier = identifier) ;) (if_statement "if (ppiVar3 != (int **)0x0) {\n      ppiVar8 = ppiVar3;\n    }" if (parenthesized_expression "(ppiVar3 != (int **)0x0)" ( (binary_expression "ppiVar3 != (int **)0x0" identifier != (cast_expression "(int **)0x0" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n      ppiVar8 = ppiVar3;\n    }" { (expression_statement "ppiVar8 = ppiVar3;" (assignment_expression "ppiVar8 = ppiVar3" identifier = identifier) ;) })) (expression_statement "unaff_s3 = (int **)(PTR_LAB_0015b65c + 0x1120);" (assignment_expression "unaff_s3 = (int **)(PTR_LAB_0015b65c + 0x1120)" identifier = (cast_expression "(int **)(PTR_LAB_0015b65c + 0x1120)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(PTR_LAB_0015b65c + 0x1120)" ( (binary_expression "PTR_LAB_0015b65c + 0x1120" identifier + number_literal) )))) ;) (expression_statement "*(code *)((int)ppiVar8 + (int)local_30) = (code)0x0;" (assignment_expression "*(code *)((int)ppiVar8 + (int)local_30) = (code)0x0" (pointer_expression "*(code *)((int)ppiVar8 + (int)local_30)" * (cast_expression "(code *)((int)ppiVar8 + (int)local_30)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppiVar8 + (int)local_30)" ( (binary_expression "(int)ppiVar8 + (int)local_30" (cast_expression "(int)ppiVar8" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_30" ( (type_descriptor "int" primitive_type) ) identifier)) )))) = (cast_expression "(code)0x0" ( (type_descriptor "code" type_identifier) ) number_literal)) ;) (expression_statement "(*(code *)unaff_s3)(ppiVar8);" (call_expression "(*(code *)unaff_s3)(ppiVar8)" (parenthesized_expression "(*(code *)unaff_s3)" ( (pointer_expression "*(code *)unaff_s3" * (cast_expression "(code *)unaff_s3" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(ppiVar8)" ( identifier ))) ;) (expression_statement "iVar4 = (*(code *)PTR_strlen_0015b9c4)();" (assignment_expression "iVar4 = (*(code *)PTR_strlen_0015b9c4)()" identifier = (call_expression "(*(code *)PTR_strlen_0015b9c4)()" (parenthesized_expression "(*(code *)PTR_strlen_0015b9c4)" ( (pointer_expression "*(code *)PTR_strlen_0015b9c4" * (cast_expression "(code *)PTR_strlen_0015b9c4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (expression_statement "iVar4 = (*(code *)(PTR_LAB_0015b6c0 + -0x2c24))(param_1,ppiVar8,iVar4 + 1);" (assignment_expression "iVar4 = (*(code *)(PTR_LAB_0015b6c0 + -0x2c24))(param_1,ppiVar8,iVar4 + 1)" identifier = (call_expression "(*(code *)(PTR_LAB_0015b6c0 + -0x2c24))(param_1,ppiVar8,iVar4 + 1)" (parenthesized_expression "(*(code *)(PTR_LAB_0015b6c0 + -0x2c24))" ( (pointer_expression "*(code *)(PTR_LAB_0015b6c0 + -0x2c24)" * (cast_expression "(code *)(PTR_LAB_0015b6c0 + -0x2c24)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0015b6c0 + -0x2c24)" ( (binary_expression "PTR_LAB_0015b6c0 + -0x2c24" identifier + number_literal) )))) )) (argument_list "(param_1,ppiVar8,iVar4 + 1)" ( identifier , identifier , (binary_expression "iVar4 + 1" identifier + number_literal) )))) ;) (expression_statement "unaff_s6 = ppiVar2;" (assignment_expression "unaff_s6 = ppiVar2" identifier = identifier) ;) (if_statement "if ((iVar4 == 0) || (iVar4 = *(int *)(iVar4 + 8), iVar4 == 0)) {\n      ppbVar5 = (byte **)0x1;\n      param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478);\n      FUN_00092618(param_4);\n    }\n    else {\n      unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);\n      pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);\n      iVar19 = 0;\n      param_1 = (int **)0x0;\n      while ((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }\n      param_2 = param_1;\n      ppiVar8 = param_3;\n      ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);\n      if (ppbVar5 == (byte **)0x0) {\n        **param_3 = iVar4;\n      }\n      else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }\n      (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n    }" if (parenthesized_expression "((iVar4 == 0) || (iVar4 = *(int *)(iVar4 + 8), iVar4 == 0))" ( (binary_expression "(iVar4 == 0) || (iVar4 = *(int *)(iVar4 + 8), iVar4 == 0)" (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) || (parenthesized_expression "(iVar4 = *(int *)(iVar4 + 8), iVar4 == 0)" ( (comma_expression "iVar4 = *(int *)(iVar4 + 8), iVar4 == 0" (assignment_expression "iVar4 = *(int *)(iVar4 + 8)" identifier = (pointer_expression "*(int *)(iVar4 + 8)" * (cast_expression "(int *)(iVar4 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 8)" ( (binary_expression "iVar4 + 8" identifier + number_literal) ))))) , (binary_expression "iVar4 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n      ppbVar5 = (byte **)0x1;\n      param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478);\n      FUN_00092618(param_4);\n    }" { (expression_statement "ppbVar5 = (byte **)0x1;" (assignment_expression "ppbVar5 = (byte **)0x1" identifier = (cast_expression "(byte **)0x1" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478);" (assignment_expression "param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478)" identifier = (cast_expression "(int **)(PTR_UINT_0015b5fc + -0x7478)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(PTR_UINT_0015b5fc + -0x7478)" ( (binary_expression "PTR_UINT_0015b5fc + -0x7478" identifier + number_literal) )))) ;) (expression_statement "FUN_00092618(param_4);" (call_expression "FUN_00092618(param_4)" identifier (argument_list "(param_4)" ( identifier ))) ;) }) (else_clause "else {\n      unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);\n      pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);\n      iVar19 = 0;\n      param_1 = (int **)0x0;\n      while ((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }\n      param_2 = param_1;\n      ppiVar8 = param_3;\n      ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);\n      if (ppbVar5 == (byte **)0x0) {\n        **param_3 = iVar4;\n      }\n      else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }\n      (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n    }" else (compound_statement "{\n      unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);\n      pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);\n      iVar19 = 0;\n      param_1 = (int **)0x0;\n      while ((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }\n      param_2 = param_1;\n      ppiVar8 = param_3;\n      ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);\n      if (ppbVar5 == (byte **)0x0) {\n        **param_3 = iVar4;\n      }\n      else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }\n      (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n    }" { (expression_statement "unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);" (assignment_expression "unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4)" identifier = (cast_expression "(code *)((int)ppiVar2 + (int)unaff_s4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppiVar2 + (int)unaff_s4)" ( (binary_expression "(int)ppiVar2 + (int)unaff_s4" (cast_expression "(int)ppiVar2" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)unaff_s4" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);" (assignment_expression "pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1)" identifier = (cast_expression "(code *)((int)ppiVar8 + (int)local_30 + 1)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppiVar8 + (int)local_30 + 1)" ( (binary_expression "(int)ppiVar8 + (int)local_30 + 1" (binary_expression "(int)ppiVar8 + (int)local_30" (cast_expression "(int)ppiVar8" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_30" ( (type_descriptor "int" primitive_type) ) identifier)) + number_literal) )))) ;) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" identifier = number_literal) ;) (expression_statement "param_1 = (int **)0x0;" (assignment_expression "param_1 = (int **)0x0" identifier = (cast_expression "(int **)0x0" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (while_statement "while ((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }" while (parenthesized_expression "((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0)))" ( (parenthesized_expression "(pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))" ( (binary_expression "pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0)" (binary_expression "pcVar11 < unaff_s4" identifier < identifier) && (parenthesized_expression "(param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0)" ( (comma_expression "param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0" (assignment_expression "param_2 = unaff_s5" identifier = identifier) , (comma_expression "piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0" (assignment_expression "piVar20 = (int *)(*(code *)unaff_s2)()" identifier = (cast_expression "(int *)(*(code *)unaff_s2)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)unaff_s2)()" (parenthesized_expression "(*(code *)unaff_s2)" ( (pointer_expression "*(code *)unaff_s2" * (cast_expression "(code *)unaff_s2" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) , (binary_expression "piVar20 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)))) ))) )) )) (compound_statement "{\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }" { (expression_statement "iVar19 = iVar19 + 1;" (assignment_expression "iVar19 = iVar19 + 1" identifier = (binary_expression "iVar19 + 1" identifier + number_literal)) ;) (expression_statement "ppiVar8 = (int **)0x0;" (assignment_expression "ppiVar8 = (int **)0x0" identifier = (cast_expression "(int **)0x0" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "piVar17 = (int *)(iVar19 * 4);" (assignment_expression "piVar17 = (int *)(iVar19 * 4)" identifier = (cast_expression "(int *)(iVar19 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar19 * 4)" ( (binary_expression "iVar19 * 4" identifier * number_literal) )))) ;) (expression_statement "ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);" (assignment_expression "ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1)" identifier = (cast_expression "(int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1)" (parenthesized_expression "(*(code *)PTR_sqlite3_realloc64_0015b764)" ( (pointer_expression "*(code *)PTR_sqlite3_realloc64_0015b764" * (cast_expression "(code *)PTR_sqlite3_realloc64_0015b764" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1)" ( identifier ))))) ;) (if_statement "if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }" if (parenthesized_expression "(ppiVar3 == (int **)0x0)" ( (binary_expression "ppiVar3 == (int **)0x0" identifier == (cast_expression "(int **)0x0" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }" { (expression_statement "ppbVar5 = (byte **)&DAT_00000007;" (assignment_expression "ppbVar5 = (byte **)&DAT_00000007" identifier = (cast_expression "(byte **)&DAT_00000007" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&DAT_00000007" & identifier))) ;) (expression_statement "(*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);" (call_expression "(*(code *)PTR_sqlite3_free_0015b620)(ppiVar2)" (parenthesized_expression "(*(code *)PTR_sqlite3_free_0015b620)" ( (pointer_expression "*(code *)PTR_sqlite3_free_0015b620" * (cast_expression "(code *)PTR_sqlite3_free_0015b620" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(ppiVar2)" ( identifier ))) ;) (expression_statement "(*(code *)PTR_sqlite3_free_0015b620)(param_1);" (call_expression "(*(code *)PTR_sqlite3_free_0015b620)(param_1)" (parenthesized_expression "(*(code *)PTR_sqlite3_free_0015b620)" ( (pointer_expression "*(code *)PTR_sqlite3_free_0015b620" * (cast_expression "(code *)PTR_sqlite3_free_0015b620" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1)" ( identifier ))) ;) (goto_statement "goto LAB_00098e8c;" goto statement_identifier ;) })) (expression_statement "(ppiVar3 + iVar19)[-1] = piVar20;" (assignment_expression "(ppiVar3 + iVar19)[-1] = piVar20" (subscript_expression "(ppiVar3 + iVar19)[-1]" (parenthesized_expression "(ppiVar3 + iVar19)" ( (binary_expression "ppiVar3 + iVar19" identifier + identifier) )) [ number_literal ]) = identifier) ;) (expression_statement "*(undefined1 *)((int)piVar20 + (int)local_30) = 0;" (assignment_expression "*(undefined1 *)((int)piVar20 + (int)local_30) = 0" (pointer_expression "*(undefined1 *)((int)piVar20 + (int)local_30)" * (cast_expression "(undefined1 *)((int)piVar20 + (int)local_30)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar20 + (int)local_30)" ( (binary_expression "(int)piVar20 + (int)local_30" (cast_expression "(int)piVar20" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_30" ( (type_descriptor "int" primitive_type) ) identifier)) )))) = number_literal) ;) (expression_statement "(*(code *)unaff_s3)(piVar20);" (call_expression "(*(code *)unaff_s3)(piVar20)" (parenthesized_expression "(*(code *)unaff_s3)" ( (pointer_expression "*(code *)unaff_s3" * (cast_expression "(code *)unaff_s3" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(piVar20)" ( identifier ))) ;) (expression_statement "pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);" (assignment_expression "pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1)" identifier = (cast_expression "(code *)((int)local_30 + (int)piVar20 + 1)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_30 + (int)piVar20 + 1)" ( (binary_expression "(int)local_30 + (int)piVar20 + 1" (binary_expression "(int)local_30 + (int)piVar20" (cast_expression "(int)local_30" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)piVar20" ( (type_descriptor "int" primitive_type) ) identifier)) + number_literal) )))) ;) (expression_statement "param_1 = ppiVar3;" (assignment_expression "param_1 = ppiVar3" identifier = identifier) ;) })) (expression_statement "param_2 = param_1;" (assignment_expression "param_2 = param_1" identifier = identifier) ;) (expression_statement "ppiVar8 = param_3;" (assignment_expression "ppiVar8 = param_3" identifier = identifier) ;) (expression_statement "ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);" (assignment_expression "ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19)" identifier = (cast_expression "(byte **)(**(code **)(iVar4 + 4))(iVar19)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "(**(code **)(iVar4 + 4))(iVar19)" (parenthesized_expression "(**(code **)(iVar4 + 4))" ( (pointer_expression "**(code **)(iVar4 + 4)" * (pointer_expression "*(code **)(iVar4 + 4)" * (cast_expression "(code **)(iVar4 + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar4 + 4)" ( (binary_expression "iVar4 + 4" identifier + number_literal) ))))) )) (argument_list "(iVar19)" ( identifier ))))) ;) (if_statement "if (ppbVar5 == (byte **)0x0) {\n        **param_3 = iVar4;\n      }\n      else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }" if (parenthesized_expression "(ppbVar5 == (byte **)0x0)" ( (binary_expression "ppbVar5 == (byte **)0x0" identifier == (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n        **param_3 = iVar4;\n      }" { (expression_statement "**param_3 = iVar4;" (assignment_expression "**param_3 = iVar4" (pointer_expression "**param_3" * (pointer_expression "*param_3" * identifier)) = identifier) ;) }) (else_clause "else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }" else (compound_statement "{\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }" { (expression_statement "param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);" (assignment_expression "param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460)" identifier = (cast_expression "(int **)(PTR_UINT_0015b5fc + -0x7460)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(PTR_UINT_0015b5fc + -0x7460)" ( (binary_expression "PTR_UINT_0015b5fc + -0x7460" identifier + number_literal) )))) ;) (expression_statement "FUN_00092618(param_4);" (call_expression "FUN_00092618(param_4)" identifier (argument_list "(param_4)" ( identifier ))) ;) }))) (expression_statement "(*(code *)PTR_sqlite3_free_0015b620)(param_1);" (call_expression "(*(code *)PTR_sqlite3_free_0015b620)(param_1)" (parenthesized_expression "(*(code *)PTR_sqlite3_free_0015b620)" ( (pointer_expression "*(code *)PTR_sqlite3_free_0015b620" * (cast_expression "(code *)PTR_sqlite3_free_0015b620" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1)" ( identifier ))) ;) }))) (expression_statement "(*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);" (call_expression "(*(code *)PTR_sqlite3_free_0015b620)(ppiVar2)" (parenthesized_expression "(*(code *)PTR_sqlite3_free_0015b620)" ( (pointer_expression "*(code *)PTR_sqlite3_free_0015b620" * (cast_expression "(code *)PTR_sqlite3_free_0015b620" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(ppiVar2)" ( identifier ))) ;) }))) (labeled_statement "LAB_00098e8c:\n  if (local_2c == *(int ***)puVar27) {\n    return ppbVar5;\n  }" statement_identifier : (if_statement "if (local_2c == *(int ***)puVar27) {\n    return ppbVar5;\n  }" if (parenthesized_expression "(local_2c == *(int ***)puVar27)" ( (binary_expression "local_2c == *(int ***)puVar27" identifier == (pointer_expression "*(int ***)puVar27" * (cast_expression "(int ***)puVar27" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) identifier))) )) (compound_statement "{\n    return ppbVar5;\n  }" { (return_statement "return ppbVar5;" return identifier ;) }))) (expression_statement "pcVar11 = FUN_00098f2c;" (assignment_expression "pcVar11 = FUN_00098f2c" identifier = identifier) ;) (expression_statement "ppiVar2 = local_2c;" (assignment_expression "ppiVar2 = local_2c" identifier = identifier) ;) (expression_statement "puVar27 = PTR___stack_chk_fail_0015ba10;" (assignment_expression "puVar27 = PTR___stack_chk_fail_0015ba10" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_0015ba10)();" (call_expression "(*(code *)PTR___stack_chk_fail_0015ba10)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0015ba10)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_0015ba10" * (cast_expression "(code *)PTR___stack_chk_fail_0015ba10" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "puStack_80 = puVar27 + 0xca684;" (assignment_expression "puStack_80 = puVar27 + 0xca684" identifier = (binary_expression "puVar27 + 0xca684" identifier + number_literal)) ;) (expression_statement "piVar20 = *(int **)(puVar27 + 0xc2b00);" (assignment_expression "piVar20 = *(int **)(puVar27 + 0xc2b00)" identifier = (pointer_expression "*(int **)(puVar27 + 0xc2b00)" * (cast_expression "(int **)(puVar27 + 0xc2b00)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar27 + 0xc2b00)" ( (binary_expression "puVar27 + 0xc2b00" identifier + number_literal) ))))) ;) (expression_statement "ppbStack_74 = (byte **)*piVar20;" (assignment_expression "ppbStack_74 = (byte **)*piVar20" identifier = (cast_expression "(byte **)*piVar20" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "*piVar20" * identifier))) ;) (expression_statement "ppiVar3 = ppiVar2;" (assignment_expression "ppiVar3 = ppiVar2" identifier = identifier) ;) (expression_statement "ppiVar13 = param_2;" (assignment_expression "ppiVar13 = param_2" identifier = identifier) ;) (expression_statement "ppiStack_ac = param_1;" (assignment_expression "ppiStack_ac = param_1" identifier = identifier) ;) (expression_statement "ppiStack_a4 = unaff_s3;" (assignment_expression "ppiStack_a4 = unaff_s3" identifier = identifier) ;) (expression_statement "ppbStack_6c = ppbVar5;" (assignment_expression "ppbStack_6c = ppbVar5" identifier = identifier) ;) (expression_statement "ppiStack_68 = param_1;" (assignment_expression "ppiStack_68 = param_1" identifier = identifier) ;) (expression_statement "ppiStack_64 = unaff_s2;" (assignment_expression "ppiStack_64 = unaff_s2" identifier = identifier) ;) (expression_statement "ppiStack_60 = unaff_s3;" (assignment_expression "ppiStack_60 = unaff_s3" identifier = identifier) ;) (expression_statement "pcStack_5c = pcVar11;" (assignment_expression "pcStack_5c = pcVar11" identifier = identifier) ;) (expression_statement "piStack_4c = piVar17;" (assignment_expression "piStack_4c = piVar17" identifier = identifier) ;) (if_statement "if (*ppiVar2 == (int *)0x0) {\n    ppiVar13 = &piStack_4c;\n    ppiStack_78 = ppiVar13;\n    ppiVar14 = (int **)sqlite3_vmprintf(ppiVar8);\n    if (ppiVar14 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *ppiVar2 = (int *)0x7;\n      ppiVar3 = (int **)*param_2;\n    }\n    else {\n      ppiVar3 = (int **)*param_2;\n      unaff_s2 = ppiVar14;\n      if (ppiVar3 != (int **)0x0) {\n        ppiVar8 = ppiVar14;\n        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);\n        ppiVar13 = ppiVar3;\n        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar3 = (int **)*param_2;\n      }\n    }\n    (**(code **)(puStack_80 + -0x7f90))();\n    *param_2 = (int *)unaff_s2;\n    ppiStack_ac = ppiVar2;\n    ppiStack_a4 = param_2;\n  }" if (parenthesized_expression "(*ppiVar2 == (int *)0x0)" ( (binary_expression "*ppiVar2 == (int *)0x0" (pointer_expression "*ppiVar2" * identifier) == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    ppiVar13 = &piStack_4c;\n    ppiStack_78 = ppiVar13;\n    ppiVar14 = (int **)sqlite3_vmprintf(ppiVar8);\n    if (ppiVar14 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *ppiVar2 = (int *)0x7;\n      ppiVar3 = (int **)*param_2;\n    }\n    else {\n      ppiVar3 = (int **)*param_2;\n      unaff_s2 = ppiVar14;\n      if (ppiVar3 != (int **)0x0) {\n        ppiVar8 = ppiVar14;\n        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);\n        ppiVar13 = ppiVar3;\n        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar3 = (int **)*param_2;\n      }\n    }\n    (**(code **)(puStack_80 + -0x7f90))();\n    *param_2 = (int *)unaff_s2;\n    ppiStack_ac = ppiVar2;\n    ppiStack_a4 = param_2;\n  }" { (expression_statement "ppiVar13 = &piStack_4c;" (assignment_expression "ppiVar13 = &piStack_4c" identifier = (pointer_expression "&piStack_4c" & identifier)) ;) (expression_statement "ppiStack_78 = ppiVar13;" (assignment_expression "ppiStack_78 = ppiVar13" identifier = identifier) ;) (expression_statement "ppiVar14 = (int **)sqlite3_vmprintf(ppiVar8);" (assignment_expression "ppiVar14 = (int **)sqlite3_vmprintf(ppiVar8)" identifier = (cast_expression "(int **)sqlite3_vmprintf(ppiVar8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "sqlite3_vmprintf(ppiVar8)" identifier (argument_list "(ppiVar8)" ( identifier ))))) ;) (if_statement "if (ppiVar14 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *ppiVar2 = (int *)0x7;\n      ppiVar3 = (int **)*param_2;\n    }\n    else {\n      ppiVar3 = (int **)*param_2;\n      unaff_s2 = ppiVar14;\n      if (ppiVar3 != (int **)0x0) {\n        ppiVar8 = ppiVar14;\n        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);\n        ppiVar13 = ppiVar3;\n        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar3 = (int **)*param_2;\n      }\n    }" if (parenthesized_expression "(ppiVar14 == (int **)0x0)" ( (binary_expression "ppiVar14 == (int **)0x0" identifier == (cast_expression "(int **)0x0" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *ppiVar2 = (int *)0x7;\n      ppiVar3 = (int **)*param_2;\n    }" { (labeled_statement "LAB_00099014:\n      unaff_s2 = (int **)0x0;" statement_identifier : (expression_statement "unaff_s2 = (int **)0x0;" (assignment_expression "unaff_s2 = (int **)0x0" identifier = (cast_expression "(int **)0x0" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;)) (expression_statement "*ppiVar2 = (int *)0x7;" (assignment_expression "*ppiVar2 = (int *)0x7" (pointer_expression "*ppiVar2" * identifier) = (cast_expression "(int *)0x7" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar3 = (int **)*param_2;" (assignment_expression "ppiVar3 = (int **)*param_2" identifier = (cast_expression "(int **)*param_2" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "*param_2" * identifier))) ;) }) (else_clause "else {\n      ppiVar3 = (int **)*param_2;\n      unaff_s2 = ppiVar14;\n      if (ppiVar3 != (int **)0x0) {\n        ppiVar8 = ppiVar14;\n        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);\n        ppiVar13 = ppiVar3;\n        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar3 = (int **)*param_2;\n      }\n    }" else (compound_statement "{\n      ppiVar3 = (int **)*param_2;\n      unaff_s2 = ppiVar14;\n      if (ppiVar3 != (int **)0x0) {\n        ppiVar8 = ppiVar14;\n        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);\n        ppiVar13 = ppiVar3;\n        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar3 = (int **)*param_2;\n      }\n    }" { (expression_statement "ppiVar3 = (int **)*param_2;" (assignment_expression "ppiVar3 = (int **)*param_2" identifier = (cast_expression "(int **)*param_2" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "*param_2" * identifier))) ;) (expression_statement "unaff_s2 = ppiVar14;" (assignment_expression "unaff_s2 = ppiVar14" identifier = identifier) ;) (if_statement "if (ppiVar3 != (int **)0x0) {\n        ppiVar8 = ppiVar14;\n        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);\n        ppiVar13 = ppiVar3;\n        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar3 = (int **)*param_2;\n      }" if (parenthesized_expression "(ppiVar3 != (int **)0x0)" ( (binary_expression "ppiVar3 != (int **)0x0" identifier != (cast_expression "(int **)0x0" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n        ppiVar8 = ppiVar14;\n        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);\n        ppiVar13 = ppiVar3;\n        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar3 = (int **)*param_2;\n      }" { (expression_statement "ppiVar8 = ppiVar14;" (assignment_expression "ppiVar8 = ppiVar14" identifier = identifier) ;) (expression_statement "unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);" (assignment_expression "unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624)" identifier = (cast_expression "(int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624)" identifier (argument_list "(*(int *)(puStack_80 + -0x7fc8) + 0x5624)" ( (binary_expression "*(int *)(puStack_80 + -0x7fc8) + 0x5624" (pointer_expression "*(int *)(puStack_80 + -0x7fc8)" * (cast_expression "(int *)(puStack_80 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_80 + -0x7fc8)" ( (binary_expression "puStack_80 + -0x7fc8" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "ppiVar13 = ppiVar3;" (assignment_expression "ppiVar13 = ppiVar3" identifier = identifier) ;) (expression_statement "(**(code **)(puStack_80 + -0x7f90))(ppiVar14);" (call_expression "(**(code **)(puStack_80 + -0x7f90))(ppiVar14)" (parenthesized_expression "(**(code **)(puStack_80 + -0x7f90))" ( (pointer_expression "**(code **)(puStack_80 + -0x7f90)" * (pointer_expression "*(code **)(puStack_80 + -0x7f90)" * (cast_expression "(code **)(puStack_80 + -0x7f90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_80 + -0x7f90)" ( (binary_expression "puStack_80 + -0x7f90" identifier + number_literal) ))))) )) (argument_list "(ppiVar14)" ( identifier ))) ;) (if_statement "if (unaff_s2 == (int **)0x0) goto LAB_00099014;" if (parenthesized_expression "(unaff_s2 == (int **)0x0)" ( (binary_expression "unaff_s2 == (int **)0x0" identifier == (cast_expression "(int **)0x0" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (goto_statement "goto LAB_00099014;" goto statement_identifier ;)) (expression_statement "ppiVar3 = (int **)*param_2;" (assignment_expression "ppiVar3 = (int **)*param_2" identifier = (cast_expression "(int **)*param_2" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "*param_2" * identifier))) ;) })) }))) (expression_statement "(**(code **)(puStack_80 + -0x7f90))();" (call_expression "(**(code **)(puStack_80 + -0x7f90))()" (parenthesized_expression "(**(code **)(puStack_80 + -0x7f90))" ( (pointer_expression "**(code **)(puStack_80 + -0x7f90)" * (pointer_expression "*(code **)(puStack_80 + -0x7f90)" * (cast_expression "(code **)(puStack_80 + -0x7f90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_80 + -0x7f90)" ( (binary_expression "puStack_80 + -0x7f90" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "*param_2 = (int *)unaff_s2;" (assignment_expression "*param_2 = (int *)unaff_s2" (pointer_expression "*param_2" * identifier) = (cast_expression "(int *)unaff_s2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "ppiStack_ac = ppiVar2;" (assignment_expression "ppiStack_ac = ppiVar2" identifier = identifier) ;) (expression_statement "ppiStack_a4 = param_2;" (assignment_expression "ppiStack_a4 = param_2" identifier = identifier) ;) })) (if_statement "if (ppbStack_74 == (byte **)*piVar20) {\n    return (byte **)*piVar20;\n  }" if (parenthesized_expression "(ppbStack_74 == (byte **)*piVar20)" ( (binary_expression "ppbStack_74 == (byte **)*piVar20" identifier == (cast_expression "(byte **)*piVar20" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "*piVar20" * identifier))) )) (compound_statement "{\n    return (byte **)*piVar20;\n  }" { (return_statement "return (byte **)*piVar20;" return (cast_expression "(byte **)*piVar20" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "*piVar20" * identifier)) ;) })) (expression_statement "pcVar11 = *(code **)(puStack_80 + -0x7ba0);" (assignment_expression "pcVar11 = *(code **)(puStack_80 + -0x7ba0)" identifier = (pointer_expression "*(code **)(puStack_80 + -0x7ba0)" * (cast_expression "(code **)(puStack_80 + -0x7ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_80 + -0x7ba0)" ( (binary_expression "puStack_80 + -0x7ba0" identifier + number_literal) ))))) ;) (expression_statement "uVar28 = 0x99034;" (assignment_expression "uVar28 = 0x99034" identifier = number_literal) ;) (expression_statement "(*pcVar11)();" (call_expression "(*pcVar11)()" (parenthesized_expression "(*pcVar11)" ( (pointer_expression "*pcVar11" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_c8 = pcVar11 + 0xca57c;" (assignment_expression "pcStack_c8 = pcVar11 + 0xca57c" identifier = (binary_expression "pcVar11 + 0xca57c" identifier + number_literal)) ;) (expression_statement "piVar24 = *(int **)(pcVar11 + 0xc29f8);" (assignment_expression "piVar24 = *(int **)(pcVar11 + 0xc29f8)" identifier = (pointer_expression "*(int **)(pcVar11 + 0xc29f8)" * (cast_expression "(int **)(pcVar11 + 0xc29f8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0xc29f8)" ( (binary_expression "pcVar11 + 0xc29f8" identifier + number_literal) ))))) ;) (expression_statement "piStack_bc = (int *)0x0;" (assignment_expression "piStack_bc = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppbStack_b4 = (byte **)*piVar24;" (assignment_expression "ppbStack_b4 = (byte **)*piVar24" identifier = (cast_expression "(byte **)*piVar24" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "*piVar24" * identifier))) ;) (expression_statement "piStack_b0 = piVar20;" (assignment_expression "piStack_b0 = piVar20" identifier = identifier) ;) (expression_statement "ppiStack_a8 = unaff_s2;" (assignment_expression "ppiStack_a8 = unaff_s2" identifier = identifier) ;) (expression_statement "pcStack_a0 = unaff_s4;" (assignment_expression "pcStack_a0 = unaff_s4" identifier = identifier) ;) (expression_statement "ppiStack_9c = unaff_s5;" (assignment_expression "ppiStack_9c = unaff_s5" identifier = identifier) ;) (expression_statement "ppiStack_98 = unaff_s6;" (assignment_expression "ppiStack_98 = unaff_s6" identifier = identifier) ;) (expression_statement "uStack_94 = uVar28;" (assignment_expression "uStack_94 = uVar28" identifier = identifier) ;) (expression_statement "uVar28 = (**(code **)(pcVar11 + 0xc2694))();" (assignment_expression "uVar28 = (**(code **)(pcVar11 + 0xc2694))()" identifier = (call_expression "(**(code **)(pcVar11 + 0xc2694))()" (parenthesized_expression "(**(code **)(pcVar11 + 0xc2694))" ( (pointer_expression "**(code **)(pcVar11 + 0xc2694)" * (pointer_expression "*(code **)(pcVar11 + 0xc2694)" * (cast_expression "(code **)(pcVar11 + 0xc2694)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0xc2694)" ( (binary_expression "pcVar11 + 0xc2694" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (expression_statement "iVar4 = (**(code **)(pcStack_c8 + -0x7f9c))(*ppiVar8);" (assignment_expression "iVar4 = (**(code **)(pcStack_c8 + -0x7f9c))(*ppiVar8)" identifier = (call_expression "(**(code **)(pcStack_c8 + -0x7f9c))(*ppiVar8)" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7f9c))" ( (pointer_expression "**(code **)(pcStack_c8 + -0x7f9c)" * (pointer_expression "*(code **)(pcStack_c8 + -0x7f9c)" * (cast_expression "(code **)(pcStack_c8 + -0x7f9c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_c8 + -0x7f9c)" ( (binary_expression "pcStack_c8 + -0x7f9c" identifier + number_literal) ))))) )) (argument_list "(*ppiVar8)" ( (pointer_expression "*ppiVar8" * identifier) )))) ;) (expression_statement "iVar19 = (**(code **)(pcStack_c8 + -0x7fac))(*ppiVar8);" (assignment_expression "iVar19 = (**(code **)(pcStack_c8 + -0x7fac))(*ppiVar8)" identifier = (call_expression "(**(code **)(pcStack_c8 + -0x7fac))(*ppiVar8)" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7fac))" ( (pointer_expression "**(code **)(pcStack_c8 + -0x7fac)" * (pointer_expression "*(code **)(pcStack_c8 + -0x7fac)" * (cast_expression "(code **)(pcStack_c8 + -0x7fac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_c8 + -0x7fac)" ( (binary_expression "pcStack_c8 + -0x7fac" identifier + number_literal) ))))) )) (argument_list "(*ppiVar8)" ( (pointer_expression "*ppiVar8" * identifier) )))) ;) (expression_statement "ppiVar2 = ppiVar3;" (assignment_expression "ppiVar2 = ppiVar3" identifier = identifier) ;) (if_statement "if (ppiVar13 == (int **)&SUB_00000002) {\n    uVar6 = (**(code **)(pcStack_c8 + -0x7ed0))(ppiVar3);\n    piVar17 = &iStack_b8;\n    iStack_b8 = 0;\n    (**(code **)(pcStack_c8 + -0x7d60))(uVar6,0x3ec,0xffffffff);\n    if (iStack_b8 == 0) {\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n    else {\n      iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1]);\n      if ((iVar4 != 0) && (iVar7 == 4)) {\n        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);\n        piStack_bc = (int *)*piStack_bc;\n        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);\n        if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n  }\n  else {\n    if (iVar4 == 0) {\nLAB_000990f4:\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n      if (piStack_bc != (int *)0x0) {\nLAB_000990fc:\n        piVar17 = (int *)0xffffffff;\n        ppiVar14 = &piStack_bc;\n        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);\n      if (iVar19 != 0) {\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }\n      piStack_bc = (int *)0x0;\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n    }\n    ppiVar8 = (int **)sqlite3_mprintf(iVar19 + -0x7478,iVar4);\n    ppiVar14 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar8,0xffffffff);\n    ppiVar2 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7f90))();\n  }" if (parenthesized_expression "(ppiVar13 == (int **)&SUB_00000002)" ( (binary_expression "ppiVar13 == (int **)&SUB_00000002" identifier == (cast_expression "(int **)&SUB_00000002" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&SUB_00000002" & identifier))) )) (compound_statement "{\n    uVar6 = (**(code **)(pcStack_c8 + -0x7ed0))(ppiVar3);\n    piVar17 = &iStack_b8;\n    iStack_b8 = 0;\n    (**(code **)(pcStack_c8 + -0x7d60))(uVar6,0x3ec,0xffffffff);\n    if (iStack_b8 == 0) {\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n    else {\n      iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1]);\n      if ((iVar4 != 0) && (iVar7 == 4)) {\n        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);\n        piStack_bc = (int *)*piStack_bc;\n        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);\n        if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n  }" { (expression_statement "uVar6 = (**(code **)(pcStack_c8 + -0x7ed0))(ppiVar3);" (assignment_expression "uVar6 = (**(code **)(pcStack_c8 + -0x7ed0))(ppiVar3)" identifier = (call_expression "(**(code **)(pcStack_c8 + -0x7ed0))(ppiVar3)" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7ed0))" ( (pointer_expression "**(code **)(pcStack_c8 + -0x7ed0)" * (pointer_expression "*(code **)(pcStack_c8 + -0x7ed0)" * (cast_expression "(code **)(pcStack_c8 + -0x7ed0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_c8 + -0x7ed0)" ( (binary_expression "pcStack_c8 + -0x7ed0" identifier + number_literal) ))))) )) (argument_list "(ppiVar3)" ( identifier )))) ;) (expression_statement "piVar17 = &iStack_b8;" (assignment_expression "piVar17 = &iStack_b8" identifier = (pointer_expression "&iStack_b8" & identifier)) ;) (expression_statement "iStack_b8 = 0;" (assignment_expression "iStack_b8 = 0" identifier = number_literal) ;) (expression_statement "(**(code **)(pcStack_c8 + -0x7d60))(uVar6,0x3ec,0xffffffff);" (call_expression "(**(code **)(pcStack_c8 + -0x7d60))(uVar6,0x3ec,0xffffffff)" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7d60))" ( (pointer_expression "**(code **)(pcStack_c8 + -0x7d60)" * (pointer_expression "*(code **)(pcStack_c8 + -0x7d60)" * (cast_expression "(code **)(pcStack_c8 + -0x7d60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_c8 + -0x7d60)" ( (binary_expression "pcStack_c8 + -0x7d60" identifier + number_literal) ))))) )) (argument_list "(uVar6,0x3ec,0xffffffff)" ( identifier , number_literal , number_literal ))) ;) (if_statement "if (iStack_b8 == 0) {\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n    else {\n      iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1]);\n      if ((iVar4 != 0) && (iVar7 == 4)) {\n        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);\n        piStack_bc = (int *)*piStack_bc;\n        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);\n        if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }" if (parenthesized_expression "(iStack_b8 == 0)" ( (binary_expression "iStack_b8 == 0" identifier == number_literal) )) (compound_statement "{\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }" { (expression_statement "ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434);" (assignment_expression "ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434)" identifier = (cast_expression "(int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434)" ( (binary_expression "*(int *)(pcStack_c8 + -0x7fb4) + -0x7434" (pointer_expression "*(int *)(pcStack_c8 + -0x7fb4)" * (cast_expression "(int *)(pcStack_c8 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_c8 + -0x7fb4)" ( (binary_expression "pcStack_c8 + -0x7fb4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);" (call_expression "(**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff)" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7e40))" ( (pointer_expression "**(code **)(pcStack_c8 + -0x7e40)" * (pointer_expression "*(code **)(pcStack_c8 + -0x7e40)" * (cast_expression "(code **)(pcStack_c8 + -0x7e40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_c8 + -0x7e40)" ( (binary_expression "pcStack_c8 + -0x7e40" identifier + number_literal) ))))) )) (argument_list "(ppiVar3,ppiVar14,0xffffffff)" ( identifier , identifier , number_literal ))) ;) }) (else_clause "else {\n      iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1]);\n      if ((iVar4 != 0) && (iVar7 == 4)) {\n        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);\n        piStack_bc = (int *)*piStack_bc;\n        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);\n        if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }" else (compound_statement "{\n      iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1]);\n      if ((iVar4 != 0) && (iVar7 == 4)) {\n        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);\n        piStack_bc = (int *)*piStack_bc;\n        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);\n        if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }" { (expression_statement "iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1]);" (assignment_expression "iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1])" identifier = (call_expression "(**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1])" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7fac))" ( (pointer_expression "**(code **)(pcStack_c8 + -0x7fac)" * (pointer_expression "*(code **)(pcStack_c8 + -0x7fac)" * (cast_expression "(code **)(pcStack_c8 + -0x7fac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_c8 + -0x7fac)" ( (binary_expression "pcStack_c8 + -0x7fac" identifier + number_literal) ))))) )) (argument_list "(ppiVar8[1])" ( (subscript_expression "ppiVar8[1]" identifier [ number_literal ]) )))) ;) (if_statement "if ((iVar4 != 0) && (iVar7 == 4)) {\n        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);\n        piStack_bc = (int *)*piStack_bc;\n        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);\n        if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }" if (parenthesized_expression "((iVar4 != 0) && (iVar7 == 4))" ( (binary_expression "(iVar4 != 0) && (iVar7 == 4)" (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar7 == 4)" ( (binary_expression "iVar7 == 4" identifier == number_literal) ))) )) (compound_statement "{\n        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);\n        piStack_bc = (int *)*piStack_bc;\n        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);\n        if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }" { (expression_statement "piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);" (assignment_expression "piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1])" identifier = (cast_expression "(int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1])" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1])" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7fb0))" ( (pointer_expression "**(code **)(pcStack_c8 + -0x7fb0)" * (pointer_expression "*(code **)(pcStack_c8 + -0x7fb0)" * (cast_expression "(code **)(pcStack_c8 + -0x7fb0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_c8 + -0x7fb0)" ( (binary_expression "pcStack_c8 + -0x7fb0" identifier + number_literal) ))))) )) (argument_list "(ppiVar8[1])" ( (subscript_expression "ppiVar8[1]" identifier [ number_literal ]) ))))) ;) (expression_statement "piStack_bc = (int *)*piStack_bc;" (assignment_expression "piStack_bc = (int *)*piStack_bc" identifier = (cast_expression "(int *)*piStack_bc" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piStack_bc" * identifier))) ;) (expression_statement "piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);" (assignment_expression "piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc)" identifier = (cast_expression "(int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc)" (parenthesized_expression "(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))" ( (pointer_expression "*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8)" * (cast_expression "(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8)" ( (binary_expression "*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8" (pointer_expression "*(int *)(pcStack_c8 + -0x7eb0)" * (cast_expression "(int *)(pcStack_c8 + -0x7eb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_c8 + -0x7eb0)" ( (binary_expression "pcStack_c8 + -0x7eb0" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar28,iVar4,iVar19 + 1,piStack_bc)" ( identifier , identifier , (binary_expression "iVar19 + 1" identifier + number_literal) , identifier ))))) ;) (if_statement "if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }" if (parenthesized_expression "(piStack_bc == piVar17)" ( (binary_expression "piStack_bc == piVar17" identifier == identifier) )) (compound_statement "{\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }" { (expression_statement "(**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);" (call_expression "(**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff)" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7e40))" ( (pointer_expression "**(code **)(pcStack_c8 + -0x7e40)" * (pointer_expression "*(code **)(pcStack_c8 + -0x7e40)" * (cast_expression "(code **)(pcStack_c8 + -0x7e40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_c8 + -0x7e40)" ( (binary_expression "pcStack_c8 + -0x7e40" identifier + number_literal) ))))) )) (argument_list "(ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff)" ( identifier , (binary_expression "*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac" (pointer_expression "*(int *)(pcStack_c8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_c8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_c8 + -0x7fc8)" ( (binary_expression "pcStack_c8 + -0x7fc8" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) })) (goto_statement "goto LAB_000990fc;" goto statement_identifier ;) })) (expression_statement "ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c);" (assignment_expression "ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c)" identifier = (cast_expression "(int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c)" ( (binary_expression "*(int *)(pcStack_c8 + -0x7fb4) + -0x744c" (pointer_expression "*(int *)(pcStack_c8 + -0x7fb4)" * (cast_expression "(int *)(pcStack_c8 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_c8 + -0x7fb4)" ( (binary_expression "pcStack_c8 + -0x7fb4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);" (call_expression "(**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff)" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7e40))" ( (pointer_expression "**(code **)(pcStack_c8 + -0x7e40)" * (pointer_expression "*(code **)(pcStack_c8 + -0x7e40)" * (cast_expression "(code **)(pcStack_c8 + -0x7e40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_c8 + -0x7e40)" ( (binary_expression "pcStack_c8 + -0x7e40" identifier + number_literal) ))))) )) (argument_list "(ppiVar3,ppiVar14,0xffffffff)" ( identifier , identifier , number_literal ))) ;) }))) }) (else_clause "else {\n    if (iVar4 == 0) {\nLAB_000990f4:\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n      if (piStack_bc != (int *)0x0) {\nLAB_000990fc:\n        piVar17 = (int *)0xffffffff;\n        ppiVar14 = &piStack_bc;\n        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);\n      if (iVar19 != 0) {\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }\n      piStack_bc = (int *)0x0;\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n    }\n    ppiVar8 = (int **)sqlite3_mprintf(iVar19 + -0x7478,iVar4);\n    ppiVar14 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar8,0xffffffff);\n    ppiVar2 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7f90))();\n  }" else (compound_statement "{\n    if (iVar4 == 0) {\nLAB_000990f4:\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n      if (piStack_bc != (int *)0x0) {\nLAB_000990fc:\n        piVar17 = (int *)0xffffffff;\n        ppiVar14 = &piStack_bc;\n        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);\n      if (iVar19 != 0) {\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }\n      piStack_bc = (int *)0x0;\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n    }\n    ppiVar8 = (int **)sqlite3_mprintf(iVar19 + -0x7478,iVar4);\n    ppiVar14 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar8,0xffffffff);\n    ppiVar2 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7f90))();\n  }" { (if_statement "if (iVar4 == 0) {\nLAB_000990f4:\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n      if (piStack_bc != (int *)0x0) {\nLAB_000990fc:\n        piVar17 = (int *)0xffffffff;\n        ppiVar14 = &piStack_bc;\n        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);\n      if (iVar19 != 0) {\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }\n      piStack_bc = (int *)0x0;\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n    }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_000990f4:\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n      if (piStack_bc != (int *)0x0) {\nLAB_000990fc:\n        piVar17 = (int *)0xffffffff;\n        ppiVar14 = &piStack_bc;\n        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);\n        goto LAB_00099118;\n      }\n    }" { (labeled_statement "LAB_000990f4:\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);" statement_identifier : (expression_statement "iVar19 = *(int *)(pcStack_c8 + -0x7fb4);" (assignment_expression "iVar19 = *(int *)(pcStack_c8 + -0x7fb4)" identifier = (pointer_expression "*(int *)(pcStack_c8 + -0x7fb4)" * (cast_expression "(int *)(pcStack_c8 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_c8 + -0x7fb4)" ( (binary_expression "pcStack_c8 + -0x7fb4" identifier + number_literal) ))))) ;)) (if_statement "if (piStack_bc != (int *)0x0) {\nLAB_000990fc:\n        piVar17 = (int *)0xffffffff;\n        ppiVar14 = &piStack_bc;\n        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);\n        goto LAB_00099118;\n      }" if (parenthesized_expression "(piStack_bc != (int *)0x0)" ( (binary_expression "piStack_bc != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000990fc:\n        piVar17 = (int *)0xffffffff;\n        ppiVar14 = &piStack_bc;\n        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);\n        goto LAB_00099118;\n      }" { (labeled_statement "LAB_000990fc:\n        piVar17 = (int *)0xffffffff;" statement_identifier : (expression_statement "piVar17 = (int *)0xffffffff;" (assignment_expression "piVar17 = (int *)0xffffffff" identifier = (cast_expression "(int *)0xffffffff" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "ppiVar14 = &piStack_bc;" (assignment_expression "ppiVar14 = &piStack_bc" identifier = (pointer_expression "&piStack_bc" & identifier)) ;) (expression_statement "(**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);" (call_expression "(**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4)" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7e28))" ( (pointer_expression "**(code **)(pcStack_c8 + -0x7e28)" * (pointer_expression "*(code **)(pcStack_c8 + -0x7e28)" * (cast_expression "(code **)(pcStack_c8 + -0x7e28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_c8 + -0x7e28)" ( (binary_expression "pcStack_c8 + -0x7e28" identifier + number_literal) ))))) )) (argument_list "(ppiVar3,ppiVar14,4)" ( identifier , identifier , number_literal ))) ;) (goto_statement "goto LAB_00099118;" goto statement_identifier ;) })) }) (else_clause "else {\n      iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);\n      if (iVar19 != 0) {\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }\n      piStack_bc = (int *)0x0;\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n    }" else (compound_statement "{\n      iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);\n      if (iVar19 != 0) {\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }\n      piStack_bc = (int *)0x0;\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n    }" { (expression_statement "iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);" (assignment_expression "iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1)" identifier = (call_expression "(*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1)" (parenthesized_expression "(*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))" ( (pointer_expression "*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24)" * (cast_expression "(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24)" ( (binary_expression "*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24" (pointer_expression "*(int *)(pcStack_c8 + -0x7ef0)" * (cast_expression "(int *)(pcStack_c8 + -0x7ef0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_c8 + -0x7ef0)" ( (binary_expression "pcStack_c8 + -0x7ef0" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar28,iVar4,iVar19 + 1)" ( identifier , identifier , (binary_expression "iVar19 + 1" identifier + number_literal) )))) ;) (if_statement "if (iVar19 != 0) {\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (compound_statement "{\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }" { (expression_statement "piStack_bc = *(int **)(iVar19 + 8);" (assignment_expression "piStack_bc = *(int **)(iVar19 + 8)" identifier = (pointer_expression "*(int **)(iVar19 + 8)" * (cast_expression "(int **)(iVar19 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar19 + 8)" ( (binary_expression "iVar19 + 8" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000990f4;" goto statement_identifier ;) })) (expression_statement "piStack_bc = (int *)0x0;" (assignment_expression "piStack_bc = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar19 = *(int *)(pcStack_c8 + -0x7fb4);" (assignment_expression "iVar19 = *(int *)(pcStack_c8 + -0x7fb4)" identifier = (pointer_expression "*(int *)(pcStack_c8 + -0x7fb4)" * (cast_expression "(int *)(pcStack_c8 + -0x7fb4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_c8 + -0x7fb4)" ( (binary_expression "pcStack_c8 + -0x7fb4" identifier + number_literal) ))))) ;) }))) (expression_statement "ppiVar8 = (int **)sqlite3_mprintf(iVar19 + -0x7478,iVar4);" (assignment_expression "ppiVar8 = (int **)sqlite3_mprintf(iVar19 + -0x7478,iVar4)" identifier = (cast_expression "(int **)sqlite3_mprintf(iVar19 + -0x7478,iVar4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "sqlite3_mprintf(iVar19 + -0x7478,iVar4)" identifier (argument_list "(iVar19 + -0x7478,iVar4)" ( (binary_expression "iVar19 + -0x7478" identifier + number_literal) , identifier ))))) ;) (expression_statement "ppiVar14 = ppiVar8;" (assignment_expression "ppiVar14 = ppiVar8" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar8,0xffffffff);" (call_expression "(**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar8,0xffffffff)" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7e40))" ( (pointer_expression "**(code **)(pcStack_c8 + -0x7e40)" * (pointer_expression "*(code **)(pcStack_c8 + -0x7e40)" * (cast_expression "(code **)(pcStack_c8 + -0x7e40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_c8 + -0x7e40)" ( (binary_expression "pcStack_c8 + -0x7e40" identifier + number_literal) ))))) )) (argument_list "(ppiVar3,ppiVar8,0xffffffff)" ( identifier , identifier , number_literal ))) ;) (expression_statement "ppiVar2 = ppiVar8;" (assignment_expression "ppiVar2 = ppiVar8" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_c8 + -0x7f90))();" (call_expression "(**(code **)(pcStack_c8 + -0x7f90))()" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7f90))" ( (pointer_expression "**(code **)(pcStack_c8 + -0x7f90)" * (pointer_expression "*(code **)(pcStack_c8 + -0x7f90)" * (cast_expression "(code **)(pcStack_c8 + -0x7f90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_c8 + -0x7f90)" ( (binary_expression "pcStack_c8 + -0x7f90" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) }))) (labeled_statement "LAB_00099118:\n  if (ppbStack_b4 == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }" statement_identifier : (if_statement "if (ppbStack_b4 == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }" if (parenthesized_expression "(ppbStack_b4 == (byte **)*piVar24)" ( (binary_expression "ppbStack_b4 == (byte **)*piVar24" identifier == (cast_expression "(byte **)*piVar24" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "*piVar24" * identifier))) )) (compound_statement "{\n    return (byte **)*piVar24;\n  }" { (return_statement "return (byte **)*piVar24;" return (cast_expression "(byte **)*piVar24" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "*piVar24" * identifier)) ;) }))) (expression_statement "pcVar11 = *(code **)(pcStack_c8 + -0x7ba0);" (assignment_expression "pcVar11 = *(code **)(pcStack_c8 + -0x7ba0)" identifier = (pointer_expression "*(code **)(pcStack_c8 + -0x7ba0)" * (cast_expression "(code **)(pcStack_c8 + -0x7ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_c8 + -0x7ba0)" ( (binary_expression "pcStack_c8 + -0x7ba0" identifier + number_literal) ))))) ;) (expression_statement "uVar28 = 0x992a0;" (assignment_expression "uVar28 = 0x992a0" identifier = number_literal) ;) (expression_statement "(*pcVar11)();" (call_expression "(*pcVar11)()" (parenthesized_expression "(*pcVar11)" ( (pointer_expression "*pcVar11" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "ppiStack_e4 = ppiVar3;" (assignment_expression "ppiStack_e4 = ppiVar3" identifier = identifier) ;) (expression_statement "piStack_ec = piVar24;" (assignment_expression "piStack_ec = piVar24" identifier = identifier) ;) (expression_statement "iStack_e8 = iVar4;" (assignment_expression "iStack_e8 = iVar4" identifier = identifier) ;) (expression_statement "piVar20 = &uStack_120;" (assignment_expression "piVar20 = &uStack_120" identifier = (pointer_expression "&uStack_120" & identifier)) ;) (expression_statement "pcStack_128 = pcVar11 + 0xca310;" (assignment_expression "pcStack_128 = pcVar11 + 0xca310" identifier = (binary_expression "pcVar11 + 0xca310" identifier + number_literal)) ;) (expression_statement "uStack_dc = uVar28;" (assignment_expression "uStack_dc = uVar28" identifier = identifier) ;) (expression_statement "ppiStack_e0 = ppiVar13;" (assignment_expression "ppiStack_e0 = ppiVar13" identifier = identifier) ;) (expression_statement "ppiStack_f0 = ppiVar8;" (assignment_expression "ppiStack_f0 = ppiVar8" identifier = identifier) ;) (expression_statement "piVar26 = *(int **)(pcVar11 + 0xc278c);" (assignment_expression "piVar26 = *(int **)(pcVar11 + 0xc278c)" identifier = (pointer_expression "*(int **)(pcVar11 + 0xc278c)" * (cast_expression "(int **)(pcVar11 + 0xc278c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0xc278c)" ( (binary_expression "pcVar11 + 0xc278c" identifier + number_literal) ))))) ;) (expression_statement "piVar24 = *ppiVar14;" (assignment_expression "piVar24 = *ppiVar14" identifier = (pointer_expression "*ppiVar14" * identifier)) ;) (expression_statement "uStack_120 = 0;" (assignment_expression "uStack_120 = 0" identifier = number_literal) ;) (expression_statement "uStack_11c = 0;" (assignment_expression "uStack_11c = 0" identifier = number_literal) ;) (expression_statement "uStack_118 = 0;" (assignment_expression "uStack_118 = 0" identifier = number_literal) ;) (expression_statement "uStack_114 = 0;" (assignment_expression "uStack_114 = 0" identifier = number_literal) ;) (expression_statement "uStack_110 = 0;" (assignment_expression "uStack_110 = 0" identifier = number_literal) ;) (expression_statement "uStack_10c = 0;" (assignment_expression "uStack_10c = 0" identifier = number_literal) ;) (expression_statement "uStack_108 = 0;" (assignment_expression "uStack_108 = 0" identifier = number_literal) ;) (expression_statement "uStack_104 = 0;" (assignment_expression "uStack_104 = 0" identifier = number_literal) ;) (expression_statement "uStack_100 = 0;" (assignment_expression "uStack_100 = 0" identifier = number_literal) ;) (expression_statement "uStack_fc = 0;" (assignment_expression "uStack_fc = 0" identifier = number_literal) ;) (expression_statement "uStack_f8 = 0;" (assignment_expression "uStack_f8 = 0" identifier = number_literal) ;) (expression_statement "iStack_f4 = *piVar26;" (assignment_expression "iStack_f4 = *piVar26" identifier = (pointer_expression "*piVar26" * identifier)) ;) (expression_statement "pbVar16 = (byte *)((int)piVar24 * 2);" (assignment_expression "pbVar16 = (byte *)((int)piVar24 * 2)" identifier = (cast_expression "(byte *)((int)piVar24 * 2)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar24 * 2)" ( (binary_expression "(int)piVar24 * 2" (cast_expression "(int)piVar24" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) )))) ;) (if_statement "if ((int)piVar24 < 1) {\n    uVar22 = 0;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099480:\n    piVar20 = ppiVar2[0xc];\n    piVar23 = (int *)((int)piVar20 >> (uVar22 & 0x1f));\n    piVar10 = piVar23;\n    piVar24 = (int *)(((int)piVar20 << 1) << (~uVar22 & 0x1f) |\n                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f));\n    if ((uVar22 & 0x20) != 0) {\n      piVar10 = (int *)((int)piVar20 >> 0x1f);\n      piVar24 = piVar23;\n    }\n    piVar20 = piVar24;\n    dVar29 = (double)(**(code **)(pcStack_128 + -0x7f18))(piVar10);\n    ppbVar5 = (byte **)0x0;\n    ppiVar14[0xc] = piVar10;\n    ppiVar14[0xd] = piVar24;\n    *(double *)(ppiVar14 + 10) = dVar29 * *(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780);\n  }\n  else {\n    piVar10 = ppiVar14[1];\n    bVar1 = false;\n    piVar17 = piVar10;\n    do {\n      piVar23 = piVar17 + 1;\n      piVar17 = piVar17 + 3;\n      if (*(char *)piVar23 == '@') {\n        bVar1 = true;\n      }\n    } while (piVar10 + (int)piVar24 * 3 != piVar17);\n    piVar17 = (int *)0x0;\n    uVar21 = 0;\n    iVar4 = 0;\nLAB_000993bc:\n    piVar10 = (int *)((int)piVar10 + (int)piVar17);\n    if (!bVar1) {\n      if (*(char *)((int)piVar10 + 5) == '\0') goto LAB_0009939c;\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\n      if (iVar19 != 0) goto LAB_000993d8;\n      if (bVar12 != 2) goto LAB_00099394;\n      if (iVar4 == 0) {\n        iVar19 = 0;\n      }\n      else {\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }\n      piVar17 = (int *)0x1;\n      ppiVar14[5] = (int *)0x1;\n      piVar20 = *(int **)(pcVar11 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar20 + -0x1de2);\n      *(undefined4 *)((int)ppiVar14[4] + iVar19) = 1;\n      pbVar16 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1;\n      *(undefined8 *)(ppiVar14 + 10) = uVar30;\n      ppiVar14[0xd] = (int *)0x1;\n      ppiVar14[0xc] = (int *)0x0;\n      ppiVar14[0xe] = (int *)0x1;\n      ppbVar5 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar10 + 5) == '\0') {\nLAB_0009939c:\n      uVar22 = uVar21;\n      if ((int)piVar24 <= iVar4 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\nLAB_000993d8:\n      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar24 = ppiVar14[4];\n      uVar22 = uVar21 + 2;\n      *(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;\n      *(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';\n      piVar24[iVar4 * 2] = (int)uVar22 >> 1;\n      *(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;\n      piVar24 = *ppiVar14;\n      uVar21 = uVar22;\n      if ((int)piVar24 <= iVar4 + 1) {\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }\n    piVar17 = piVar17 + 3;\n    if ((int)uVar21 < 0x28) goto code_r0x000993b8;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099544:\n    pbVar16 = (byte *)(iVar4 + 1);\n    piVar24 = (int *)sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4);\n    ppiVar14[6] = piVar24;\n    if (piVar24 != (int *)0x0) {\n      uVar22 = (int)uVar21 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar5 = (byte **)&DAT_00000007;\n  }" if (parenthesized_expression "((int)piVar24 < 1)" ( (binary_expression "(int)piVar24 < 1" (cast_expression "(int)piVar24" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n    uVar22 = 0;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099480:\n    piVar20 = ppiVar2[0xc];\n    piVar23 = (int *)((int)piVar20 >> (uVar22 & 0x1f));\n    piVar10 = piVar23;\n    piVar24 = (int *)(((int)piVar20 << 1) << (~uVar22 & 0x1f) |\n                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f));\n    if ((uVar22 & 0x20) != 0) {\n      piVar10 = (int *)((int)piVar20 >> 0x1f);\n      piVar24 = piVar23;\n    }\n    piVar20 = piVar24;\n    dVar29 = (double)(**(code **)(pcStack_128 + -0x7f18))(piVar10);\n    ppbVar5 = (byte **)0x0;\n    ppiVar14[0xc] = piVar10;\n    ppiVar14[0xd] = piVar24;\n    *(double *)(ppiVar14 + 10) = dVar29 * *(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780);\n  }" { (expression_statement "uVar22 = 0;" (assignment_expression "uVar22 = 0" identifier = number_literal) ;) (expression_statement "ppiVar14[5] = (int *)0x2;" (assignment_expression "ppiVar14[5] = (int *)0x2" (subscript_expression "ppiVar14[5]" identifier [ number_literal ]) = (cast_expression "(int *)0x2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar14[7] = (int *)0x1;" (assignment_expression "ppiVar14[7] = (int *)0x1" (subscript_expression "ppiVar14[7]" identifier [ number_literal ]) = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_00099480:\n    piVar20 = ppiVar2[0xc];" statement_identifier : (expression_statement "piVar20 = ppiVar2[0xc];" (assignment_expression "piVar20 = ppiVar2[0xc]" identifier = (subscript_expression "ppiVar2[0xc]" identifier [ number_literal ])) ;)) (expression_statement "piVar23 = (int *)((int)piVar20 >> (uVar22 & 0x1f));" (assignment_expression "piVar23 = (int *)((int)piVar20 >> (uVar22 & 0x1f))" identifier = (cast_expression "(int *)((int)piVar20 >> (uVar22 & 0x1f))" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar20 >> (uVar22 & 0x1f))" ( (binary_expression "(int)piVar20 >> (uVar22 & 0x1f)" (cast_expression "(int)piVar20" ( (type_descriptor "int" primitive_type) ) identifier) >> (parenthesized_expression "(uVar22 & 0x1f)" ( (binary_expression "uVar22 & 0x1f" identifier & number_literal) ))) )))) ;) (expression_statement "piVar10 = piVar23;" (assignment_expression "piVar10 = piVar23" identifier = identifier) ;) (expression_statement "piVar24 = (int *)(((int)piVar20 << 1) << (~uVar22 & 0x1f) |\n                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f));" (assignment_expression "piVar24 = (int *)(((int)piVar20 << 1) << (~uVar22 & 0x1f) |\n                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f))" identifier = (cast_expression "(int *)(((int)piVar20 << 1) << (~uVar22 & 0x1f) |\n                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f))" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(((int)piVar20 << 1) << (~uVar22 & 0x1f) |\n                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f))" ( (binary_expression "((int)piVar20 << 1) << (~uVar22 & 0x1f) |\n                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f)" (binary_expression "((int)piVar20 << 1) << (~uVar22 & 0x1f)" (parenthesized_expression "((int)piVar20 << 1)" ( (binary_expression "(int)piVar20 << 1" (cast_expression "(int)piVar20" ( (type_descriptor "int" primitive_type) ) identifier) << number_literal) )) << (parenthesized_expression "(~uVar22 & 0x1f)" ( (binary_expression "~uVar22 & 0x1f" (unary_expression "~uVar22" ~ identifier) & number_literal) ))) | (binary_expression "(uint)ppiVar2[0xd] >> (uVar22 & 0x1f)" (cast_expression "(uint)ppiVar2[0xd]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "ppiVar2[0xd]" identifier [ number_literal ])) >> (parenthesized_expression "(uVar22 & 0x1f)" ( (binary_expression "uVar22 & 0x1f" identifier & number_literal) )))) )))) ;) (if_statement "if ((uVar22 & 0x20) != 0) {\n      piVar10 = (int *)((int)piVar20 >> 0x1f);\n      piVar24 = piVar23;\n    }" if (parenthesized_expression "((uVar22 & 0x20) != 0)" ( (binary_expression "(uVar22 & 0x20) != 0" (parenthesized_expression "(uVar22 & 0x20)" ( (binary_expression "uVar22 & 0x20" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      piVar10 = (int *)((int)piVar20 >> 0x1f);\n      piVar24 = piVar23;\n    }" { (expression_statement "piVar10 = (int *)((int)piVar20 >> 0x1f);" (assignment_expression "piVar10 = (int *)((int)piVar20 >> 0x1f)" identifier = (cast_expression "(int *)((int)piVar20 >> 0x1f)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar20 >> 0x1f)" ( (binary_expression "(int)piVar20 >> 0x1f" (cast_expression "(int)piVar20" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )))) ;) (expression_statement "piVar24 = piVar23;" (assignment_expression "piVar24 = piVar23" identifier = identifier) ;) })) (expression_statement "piVar20 = piVar24;" (assignment_expression "piVar20 = piVar24" identifier = identifier) ;) (expression_statement "dVar29 = (double)(**(code **)(pcStack_128 + -0x7f18))(piVar10);" (assignment_expression "dVar29 = (double)(**(code **)(pcStack_128 + -0x7f18))(piVar10)" identifier = (cast_expression "(double)(**(code **)(pcStack_128 + -0x7f18))(piVar10)" ( (type_descriptor "double" primitive_type) ) (call_expression "(**(code **)(pcStack_128 + -0x7f18))(piVar10)" (parenthesized_expression "(**(code **)(pcStack_128 + -0x7f18))" ( (pointer_expression "**(code **)(pcStack_128 + -0x7f18)" * (pointer_expression "*(code **)(pcStack_128 + -0x7f18)" * (cast_expression "(code **)(pcStack_128 + -0x7f18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_128 + -0x7f18)" ( (binary_expression "pcStack_128 + -0x7f18" identifier + number_literal) ))))) )) (argument_list "(piVar10)" ( identifier ))))) ;) (expression_statement "ppbVar5 = (byte **)0x0;" (assignment_expression "ppbVar5 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "ppiVar14[0xc] = piVar10;" (assignment_expression "ppiVar14[0xc] = piVar10" (subscript_expression "ppiVar14[0xc]" identifier [ number_literal ]) = identifier) ;) (expression_statement "ppiVar14[0xd] = piVar24;" (assignment_expression "ppiVar14[0xd] = piVar24" (subscript_expression "ppiVar14[0xd]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(double *)(ppiVar14 + 10) = dVar29 * *(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780);" (assignment_expression "*(double *)(ppiVar14 + 10) = dVar29 * *(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780)" (pointer_expression "*(double *)(ppiVar14 + 10)" * (cast_expression "(double *)(ppiVar14 + 10)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppiVar14 + 10)" ( (binary_expression "ppiVar14 + 10" identifier + number_literal) )))) = (binary_expression "dVar29 * *(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780)" identifier * (pointer_expression "*(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780)" * (cast_expression "(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_128 + -0x7f1c) + -0x7780)" ( (binary_expression "*(int *)(pcStack_128 + -0x7f1c) + -0x7780" (pointer_expression "*(int *)(pcStack_128 + -0x7f1c)" * (cast_expression "(int *)(pcStack_128 + -0x7f1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_128 + -0x7f1c)" ( (binary_expression "pcStack_128 + -0x7f1c" identifier + number_literal) )))) + number_literal) )))))) ;) }) (else_clause "else {\n    piVar10 = ppiVar14[1];\n    bVar1 = false;\n    piVar17 = piVar10;\n    do {\n      piVar23 = piVar17 + 1;\n      piVar17 = piVar17 + 3;\n      if (*(char *)piVar23 == '@') {\n        bVar1 = true;\n      }\n    } while (piVar10 + (int)piVar24 * 3 != piVar17);\n    piVar17 = (int *)0x0;\n    uVar21 = 0;\n    iVar4 = 0;\nLAB_000993bc:\n    piVar10 = (int *)((int)piVar10 + (int)piVar17);\n    if (!bVar1) {\n      if (*(char *)((int)piVar10 + 5) == '\0') goto LAB_0009939c;\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\n      if (iVar19 != 0) goto LAB_000993d8;\n      if (bVar12 != 2) goto LAB_00099394;\n      if (iVar4 == 0) {\n        iVar19 = 0;\n      }\n      else {\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }\n      piVar17 = (int *)0x1;\n      ppiVar14[5] = (int *)0x1;\n      piVar20 = *(int **)(pcVar11 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar20 + -0x1de2);\n      *(undefined4 *)((int)ppiVar14[4] + iVar19) = 1;\n      pbVar16 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1;\n      *(undefined8 *)(ppiVar14 + 10) = uVar30;\n      ppiVar14[0xd] = (int *)0x1;\n      ppiVar14[0xc] = (int *)0x0;\n      ppiVar14[0xe] = (int *)0x1;\n      ppbVar5 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar10 + 5) == '\0') {\nLAB_0009939c:\n      uVar22 = uVar21;\n      if ((int)piVar24 <= iVar4 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\nLAB_000993d8:\n      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar24 = ppiVar14[4];\n      uVar22 = uVar21 + 2;\n      *(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;\n      *(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';\n      piVar24[iVar4 * 2] = (int)uVar22 >> 1;\n      *(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;\n      piVar24 = *ppiVar14;\n      uVar21 = uVar22;\n      if ((int)piVar24 <= iVar4 + 1) {\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }\n    piVar17 = piVar17 + 3;\n    if ((int)uVar21 < 0x28) goto code_r0x000993b8;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099544:\n    pbVar16 = (byte *)(iVar4 + 1);\n    piVar24 = (int *)sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4);\n    ppiVar14[6] = piVar24;\n    if (piVar24 != (int *)0x0) {\n      uVar22 = (int)uVar21 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar5 = (byte **)&DAT_00000007;\n  }" else (compound_statement "{\n    piVar10 = ppiVar14[1];\n    bVar1 = false;\n    piVar17 = piVar10;\n    do {\n      piVar23 = piVar17 + 1;\n      piVar17 = piVar17 + 3;\n      if (*(char *)piVar23 == '@') {\n        bVar1 = true;\n      }\n    } while (piVar10 + (int)piVar24 * 3 != piVar17);\n    piVar17 = (int *)0x0;\n    uVar21 = 0;\n    iVar4 = 0;\nLAB_000993bc:\n    piVar10 = (int *)((int)piVar10 + (int)piVar17);\n    if (!bVar1) {\n      if (*(char *)((int)piVar10 + 5) == '\0') goto LAB_0009939c;\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\n      if (iVar19 != 0) goto LAB_000993d8;\n      if (bVar12 != 2) goto LAB_00099394;\n      if (iVar4 == 0) {\n        iVar19 = 0;\n      }\n      else {\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }\n      piVar17 = (int *)0x1;\n      ppiVar14[5] = (int *)0x1;\n      piVar20 = *(int **)(pcVar11 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar20 + -0x1de2);\n      *(undefined4 *)((int)ppiVar14[4] + iVar19) = 1;\n      pbVar16 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1;\n      *(undefined8 *)(ppiVar14 + 10) = uVar30;\n      ppiVar14[0xd] = (int *)0x1;\n      ppiVar14[0xc] = (int *)0x0;\n      ppiVar14[0xe] = (int *)0x1;\n      ppbVar5 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar10 + 5) == '\0') {\nLAB_0009939c:\n      uVar22 = uVar21;\n      if ((int)piVar24 <= iVar4 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\nLAB_000993d8:\n      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar24 = ppiVar14[4];\n      uVar22 = uVar21 + 2;\n      *(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;\n      *(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';\n      piVar24[iVar4 * 2] = (int)uVar22 >> 1;\n      *(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;\n      piVar24 = *ppiVar14;\n      uVar21 = uVar22;\n      if ((int)piVar24 <= iVar4 + 1) {\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }\n    piVar17 = piVar17 + 3;\n    if ((int)uVar21 < 0x28) goto code_r0x000993b8;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099544:\n    pbVar16 = (byte *)(iVar4 + 1);\n    piVar24 = (int *)sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4);\n    ppiVar14[6] = piVar24;\n    if (piVar24 != (int *)0x0) {\n      uVar22 = (int)uVar21 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar5 = (byte **)&DAT_00000007;\n  }" { (expression_statement "piVar10 = ppiVar14[1];" (assignment_expression "piVar10 = ppiVar14[1]" identifier = (subscript_expression "ppiVar14[1]" identifier [ number_literal ])) ;) (expression_statement "bVar1 = false;" (assignment_expression "bVar1 = false" identifier = false) ;) (expression_statement "piVar17 = piVar10;" (assignment_expression "piVar17 = piVar10" identifier = identifier) ;) (do_statement "do {\n      piVar23 = piVar17 + 1;\n      piVar17 = piVar17 + 3;\n      if (*(char *)piVar23 == '@') {\n        bVar1 = true;\n      }\n    } while (piVar10 + (int)piVar24 * 3 != piVar17);" do (compound_statement "{\n      piVar23 = piVar17 + 1;\n      piVar17 = piVar17 + 3;\n      if (*(char *)piVar23 == '@') {\n        bVar1 = true;\n      }\n    }" { (expression_statement "piVar23 = piVar17 + 1;" (assignment_expression "piVar23 = piVar17 + 1" identifier = (binary_expression "piVar17 + 1" identifier + number_literal)) ;) (expression_statement "piVar17 = piVar17 + 3;" (assignment_expression "piVar17 = piVar17 + 3" identifier = (binary_expression "piVar17 + 3" identifier + number_literal)) ;) (if_statement "if (*(char *)piVar23 == '@') {\n        bVar1 = true;\n      }" if (parenthesized_expression "(*(char *)piVar23 == '@')" ( (binary_expression "*(char *)piVar23 == '@'" (pointer_expression "*(char *)piVar23" * (cast_expression "(char *)piVar23" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) == (char_literal "'@'" ' character ')) )) (compound_statement "{\n        bVar1 = true;\n      }" { (expression_statement "bVar1 = true;" (assignment_expression "bVar1 = true" identifier = true) ;) })) }) while (parenthesized_expression "(piVar10 + (int)piVar24 * 3 != piVar17)" ( (binary_expression "piVar10 + (int)piVar24 * 3 != piVar17" (binary_expression "piVar10 + (int)piVar24 * 3" identifier + (binary_expression "(int)piVar24 * 3" (cast_expression "(int)piVar24" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) != identifier) )) ;) (expression_statement "piVar17 = (int *)0x0;" (assignment_expression "piVar17 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" identifier = number_literal) ;) (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" identifier = number_literal) ;) (labeled_statement "LAB_000993bc:\n    piVar10 = (int *)((int)piVar10 + (int)piVar17);" statement_identifier : (expression_statement "piVar10 = (int *)((int)piVar10 + (int)piVar17);" (assignment_expression "piVar10 = (int *)((int)piVar10 + (int)piVar17)" identifier = (cast_expression "(int *)((int)piVar10 + (int)piVar17)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar10 + (int)piVar17)" ( (binary_expression "(int)piVar10 + (int)piVar17" (cast_expression "(int)piVar10" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)piVar17" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;)) (if_statement "if (!bVar1) {\n      if (*(char *)((int)piVar10 + 5) == '\0') goto LAB_0009939c;\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\n      if (iVar19 != 0) goto LAB_000993d8;\n      if (bVar12 != 2) goto LAB_00099394;\n      if (iVar4 == 0) {\n        iVar19 = 0;\n      }\n      else {\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }\n      piVar17 = (int *)0x1;\n      ppiVar14[5] = (int *)0x1;\n      piVar20 = *(int **)(pcVar11 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar20 + -0x1de2);\n      *(undefined4 *)((int)ppiVar14[4] + iVar19) = 1;\n      pbVar16 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1;\n      *(undefined8 *)(ppiVar14 + 10) = uVar30;\n      ppiVar14[0xd] = (int *)0x1;\n      ppiVar14[0xc] = (int *)0x0;\n      ppiVar14[0xe] = (int *)0x1;\n      ppbVar5 = (byte **)0x0;\n      goto LAB_000994e0;\n    }" if (parenthesized_expression "(!bVar1)" ( (unary_expression "!bVar1" ! identifier) )) (compound_statement "{\n      if (*(char *)((int)piVar10 + 5) == '\0') goto LAB_0009939c;\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\n      if (iVar19 != 0) goto LAB_000993d8;\n      if (bVar12 != 2) goto LAB_00099394;\n      if (iVar4 == 0) {\n        iVar19 = 0;\n      }\n      else {\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }\n      piVar17 = (int *)0x1;\n      ppiVar14[5] = (int *)0x1;\n      piVar20 = *(int **)(pcVar11 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar20 + -0x1de2);\n      *(undefined4 *)((int)ppiVar14[4] + iVar19) = 1;\n      pbVar16 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1;\n      *(undefined8 *)(ppiVar14 + 10) = uVar30;\n      ppiVar14[0xd] = (int *)0x1;\n      ppiVar14[0xc] = (int *)0x0;\n      ppiVar14[0xe] = (int *)0x1;\n      ppbVar5 = (byte **)0x0;\n      goto LAB_000994e0;\n    }" { (if_statement "if (*(char *)((int)piVar10 + 5) == '\0') goto LAB_0009939c;" if (parenthesized_expression "(*(char *)((int)piVar10 + 5) == '\0')" ( (binary_expression "*(char *)((int)piVar10 + 5) == '\0'" (pointer_expression "*(char *)((int)piVar10 + 5)" * (cast_expression "(char *)((int)piVar10 + 5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar10 + 5)" ( (binary_expression "(int)piVar10 + 5" (cast_expression "(int)piVar10" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_0009939c;" goto statement_identifier ;)) (expression_statement "iVar19 = *piVar10;" (assignment_expression "iVar19 = *piVar10" identifier = (pointer_expression "*piVar10" * identifier)) ;) (expression_statement "bVar12 = *(byte *)(piVar10 + 1);" (assignment_expression "bVar12 = *(byte *)(piVar10 + 1)" identifier = (pointer_expression "*(byte *)(piVar10 + 1)" * (cast_expression "(byte *)(piVar10 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar10 + 1)" ( (binary_expression "piVar10 + 1" identifier + number_literal) ))))) ;) (if_statement "if (iVar19 != 0) goto LAB_000993d8;" if (parenthesized_expression "(iVar19 != 0)" ( (binary_expression "iVar19 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000993d8;" goto statement_identifier ;)) (if_statement "if (bVar12 != 2) goto LAB_00099394;" if (parenthesized_expression "(bVar12 != 2)" ( (binary_expression "bVar12 != 2" identifier != number_literal) )) (goto_statement "goto LAB_00099394;" goto statement_identifier ;)) (if_statement "if (iVar4 == 0) {\n        iVar19 = 0;\n      }\n      else {\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n        iVar19 = 0;\n      }" { (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" identifier = number_literal) ;) }) (else_clause "else {\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }" else (compound_statement "{\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }" { (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) (do_statement "do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);" do (compound_statement "{\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        }" { (expression_statement "iVar19 = iVar7 + 1;" (assignment_expression "iVar19 = iVar7 + 1" identifier = (binary_expression "iVar7 + 1" identifier + number_literal)) ;) (expression_statement "ppiVar14[4][iVar7 * 2] = 0;" (assignment_expression "ppiVar14[4][iVar7 * 2] = 0" (subscript_expression "ppiVar14[4][iVar7 * 2]" (subscript_expression "ppiVar14[4]" identifier [ number_literal ]) [ (binary_expression "iVar7 * 2" identifier * number_literal) ]) = number_literal) ;) (expression_statement "*(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;" (assignment_expression "*(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0" (pointer_expression "*(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1)" * (cast_expression "(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppiVar14[4] + iVar7 * 2 + 1)" ( (binary_expression "ppiVar14[4] + iVar7 * 2 + 1" (binary_expression "ppiVar14[4] + iVar7 * 2" (subscript_expression "ppiVar14[4]" identifier [ number_literal ]) + (binary_expression "iVar7 * 2" identifier * number_literal)) + number_literal) )))) = number_literal) ;) (expression_statement "iVar7 = iVar19;" (assignment_expression "iVar7 = iVar19" identifier = identifier) ;) }) while (parenthesized_expression "(iVar19 != iVar4)" ( (binary_expression "iVar19 != iVar4" identifier != identifier) )) ;) (expression_statement "iVar19 = iVar19 * 8;" (assignment_expression "iVar19 = iVar19 * 8" identifier = (binary_expression "iVar19 * 8" identifier * number_literal)) ;) }))) (expression_statement "piVar17 = (int *)0x1;" (assignment_expression "piVar17 = (int *)0x1" identifier = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar14[5] = (int *)0x1;" (assignment_expression "ppiVar14[5] = (int *)0x1" (subscript_expression "ppiVar14[5]" identifier [ number_literal ]) = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "piVar20 = *(int **)(pcVar11 + 0xc23f4);" (assignment_expression "piVar20 = *(int **)(pcVar11 + 0xc23f4)" identifier = (pointer_expression "*(int **)(pcVar11 + 0xc23f4)" * (cast_expression "(int **)(pcVar11 + 0xc23f4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0xc23f4)" ( (binary_expression "pcVar11 + 0xc23f4" identifier + number_literal) ))))) ;) (expression_statement "uVar30 = *(undefined8 *)(piVar20 + -0x1de2);" (assignment_expression "uVar30 = *(undefined8 *)(piVar20 + -0x1de2)" identifier = (pointer_expression "*(undefined8 *)(piVar20 + -0x1de2)" * (cast_expression "(undefined8 *)(piVar20 + -0x1de2)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar20 + -0x1de2)" ( (binary_expression "piVar20 + -0x1de2" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)((int)ppiVar14[4] + iVar19) = 1;" (assignment_expression "*(undefined4 *)((int)ppiVar14[4] + iVar19) = 1" (pointer_expression "*(undefined4 *)((int)ppiVar14[4] + iVar19)" * (cast_expression "(undefined4 *)((int)ppiVar14[4] + iVar19)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppiVar14[4] + iVar19)" ( (binary_expression "(int)ppiVar14[4] + iVar19" (cast_expression "(int)ppiVar14[4]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "ppiVar14[4]" identifier [ number_literal ])) + identifier) )))) = number_literal) ;) (expression_statement "pbVar16 = (byte *)0x0;" (assignment_expression "pbVar16 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "*(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1;" (assignment_expression "*(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1" (pointer_expression "*(undefined1 *)((int)ppiVar14[4] + iVar19 + 4)" * (cast_expression "(undefined1 *)((int)ppiVar14[4] + iVar19 + 4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppiVar14[4] + iVar19 + 4)" ( (binary_expression "(int)ppiVar14[4] + iVar19 + 4" (binary_expression "(int)ppiVar14[4] + iVar19" (cast_expression "(int)ppiVar14[4]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "ppiVar14[4]" identifier [ number_literal ])) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined8 *)(ppiVar14 + 10) = uVar30;" (assignment_expression "*(undefined8 *)(ppiVar14 + 10) = uVar30" (pointer_expression "*(undefined8 *)(ppiVar14 + 10)" * (cast_expression "(undefined8 *)(ppiVar14 + 10)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppiVar14 + 10)" ( (binary_expression "ppiVar14 + 10" identifier + number_literal) )))) = identifier) ;) (expression_statement "ppiVar14[0xd] = (int *)0x1;" (assignment_expression "ppiVar14[0xd] = (int *)0x1" (subscript_expression "ppiVar14[0xd]" identifier [ number_literal ]) = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar14[0xc] = (int *)0x0;" (assignment_expression "ppiVar14[0xc] = (int *)0x0" (subscript_expression "ppiVar14[0xc]" identifier [ number_literal ]) = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar14[0xe] = (int *)0x1;" (assignment_expression "ppiVar14[0xe] = (int *)0x1" (subscript_expression "ppiVar14[0xe]" identifier [ number_literal ]) = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppbVar5 = (byte **)0x0;" (assignment_expression "ppbVar5 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (goto_statement "goto LAB_000994e0;" goto statement_identifier ;) })) (if_statement "if (*(char *)((int)piVar10 + 5) == '\0') {\nLAB_0009939c:\n      uVar22 = uVar21;\n      if ((int)piVar24 <= iVar4 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\nLAB_000993d8:\n      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar24 = ppiVar14[4];\n      uVar22 = uVar21 + 2;\n      *(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;\n      *(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';\n      piVar24[iVar4 * 2] = (int)uVar22 >> 1;\n      *(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;\n      piVar24 = *ppiVar14;\n      uVar21 = uVar22;\n      if ((int)piVar24 <= iVar4 + 1) {\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }" if (parenthesized_expression "(*(char *)((int)piVar10 + 5) == '\0')" ( (binary_expression "*(char *)((int)piVar10 + 5) == '\0'" (pointer_expression "*(char *)((int)piVar10 + 5)" * (cast_expression "(char *)((int)piVar10 + 5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar10 + 5)" ( (binary_expression "(int)piVar10 + 5" (cast_expression "(int)piVar10" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_0009939c:\n      uVar22 = uVar21;\n      if ((int)piVar24 <= iVar4 + 1) goto LAB_00099470;\n    }" { (labeled_statement "LAB_0009939c:\n      uVar22 = uVar21;" statement_identifier : (expression_statement "uVar22 = uVar21;" (assignment_expression "uVar22 = uVar21" identifier = identifier) ;)) (if_statement "if ((int)piVar24 <= iVar4 + 1) goto LAB_00099470;" if (parenthesized_expression "((int)piVar24 <= iVar4 + 1)" ( (binary_expression "(int)piVar24 <= iVar4 + 1" (cast_expression "(int)piVar24" ( (type_descriptor "int" primitive_type) ) identifier) <= (binary_expression "iVar4 + 1" identifier + number_literal)) )) (goto_statement "goto LAB_00099470;" goto statement_identifier ;)) }) (else_clause "else {\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\nLAB_000993d8:\n      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar24 = ppiVar14[4];\n      uVar22 = uVar21 + 2;\n      *(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;\n      *(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';\n      piVar24[iVar4 * 2] = (int)uVar22 >> 1;\n      *(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;\n      piVar24 = *ppiVar14;\n      uVar21 = uVar22;\n      if ((int)piVar24 <= iVar4 + 1) {\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }" else (compound_statement "{\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\nLAB_000993d8:\n      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar24 = ppiVar14[4];\n      uVar22 = uVar21 + 2;\n      *(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;\n      *(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';\n      piVar24[iVar4 * 2] = (int)uVar22 >> 1;\n      *(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;\n      piVar24 = *ppiVar14;\n      uVar21 = uVar22;\n      if ((int)piVar24 <= iVar4 + 1) {\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }" { (expression_statement "iVar19 = *piVar10;" (assignment_expression "iVar19 = *piVar10" identifier = (pointer_expression "*piVar10" * identifier)) ;) (expression_statement "bVar12 = *(byte *)(piVar10 + 1);" (assignment_expression "bVar12 = *(byte *)(piVar10 + 1)" identifier = (pointer_expression "*(byte *)(piVar10 + 1)" * (cast_expression "(byte *)(piVar10 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar10 + 1)" ( (binary_expression "piVar10 + 1" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000993d8:\n      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }" statement_identifier : (if_statement "if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }" if (parenthesized_expression "((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19))" ( (binary_expression "(iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)" (parenthesized_expression "(iVar19 < 1)" ( (binary_expression "iVar19 < 1" identifier < number_literal) )) || (parenthesized_expression "((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)" ( (binary_expression "(int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19" (binary_expression "(int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15)" (cast_expression "(int)(uint)(byte)" ( (type_descriptor "int" primitive_type) ) (call_expression "(uint)(byte)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(byte)" ( identifier )))) * (cast_expression "(code *)((int)ppiVar2 + 0x15)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppiVar2 + 0x15)" ( (binary_expression "(int)ppiVar2 + 0x15" (cast_expression "(int)ppiVar2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) < identifier) ))) )) (compound_statement "{\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }" { (labeled_statement "LAB_00099394:\n        uVar18 = 0x46;" statement_identifier : (expression_statement "uVar18 = 0x46;" (assignment_expression "uVar18 = 0x46" identifier = number_literal) ;)) (if_statement "if (bVar12 != 0x40) goto LAB_0009939c;" if (parenthesized_expression "(bVar12 != 0x40)" ( (binary_expression "bVar12 != 0x40" identifier != number_literal) )) (goto_statement "goto LAB_0009939c;" goto statement_identifier ;)) }) (else_clause "else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }" else (if_statement "if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }" if (parenthesized_expression "(bVar12 == 8)" ( (binary_expression "bVar12 == 8" identifier == number_literal) )) (compound_statement "{\n        uVar18 = 0x42;\n      }" { (expression_statement "uVar18 = 0x42;" (assignment_expression "uVar18 = 0x42" identifier = number_literal) ;) }) (else_clause "else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }" else (if_statement "if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }" if (parenthesized_expression "(bVar12 < 9)" ( (binary_expression "bVar12 < 9" identifier < number_literal) )) (compound_statement "{\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }" { (expression_statement "uVar18 = 0x41;" (assignment_expression "uVar18 = 0x41" identifier = number_literal) ;) (if_statement "if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;" if (parenthesized_expression "((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4))" ( (binary_expression "(bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)" (parenthesized_expression "(bVar12 != 2)" ( (binary_expression "bVar12 != 2" identifier != number_literal) )) && (parenthesized_expression "(uVar18 = 0x45, bVar12 != 4)" ( (comma_expression "uVar18 = 0x45, bVar12 != 4" (assignment_expression "uVar18 = 0x45" identifier = number_literal) , (binary_expression "bVar12 != 4" identifier != number_literal)) ))) )) (goto_statement "goto LAB_0009939c;" goto statement_identifier ;)) }) (else_clause "else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }" else (compound_statement "{\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }" { (expression_statement "uVar18 = 0x44;" (assignment_expression "uVar18 = 0x44" identifier = number_literal) ;) (if_statement "if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;" if (parenthesized_expression "((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           )" ( (binary_expression "(bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))" (parenthesized_expression "(bVar12 != 0x20)" ( (binary_expression "bVar12 != 0x20" identifier != number_literal) )) && (parenthesized_expression "((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))" ( (parenthesized_expression "(uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10))" ( (comma_expression "uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)" (assignment_expression "uVar18 = 0x46" identifier = number_literal) , (binary_expression "bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)" (binary_expression "bVar12 != 0x40" identifier != number_literal) && (parenthesized_expression "(uVar18 = 0x43, bVar12 != 0x10)" ( (comma_expression "uVar18 = 0x43, bVar12 != 0x10" (assignment_expression "uVar18 = 0x43" identifier = number_literal) , (binary_expression "bVar12 != 0x10" identifier != number_literal)) )))) )) ))) )) (goto_statement "goto LAB_0009939c;" goto statement_identifier ;)) })))))))) (expression_statement "piVar24 = ppiVar14[4];" (assignment_expression "piVar24 = ppiVar14[4]" identifier = (subscript_expression "ppiVar14[4]" identifier [ number_literal ])) ;) (expression_statement "uVar22 = uVar21 + 2;" (assignment_expression "uVar22 = uVar21 + 2" identifier = (binary_expression "uVar21 + 2" identifier + number_literal)) ;) (expression_statement "*(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;" (assignment_expression "*(undefined1 *)((int)&uStack_120 + uVar21) = uVar18" (pointer_expression "*(undefined1 *)((int)&uStack_120 + uVar21)" * (cast_expression "(undefined1 *)((int)&uStack_120 + uVar21)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&uStack_120 + uVar21)" ( (binary_expression "(int)&uStack_120 + uVar21" (cast_expression "(int)&uStack_120" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&uStack_120" & identifier)) + identifier) )))) = identifier) ;) (expression_statement "*(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';" (assignment_expression "*(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/'" (pointer_expression "*(char *)((int)&uStack_120 + uVar21 + 1)" * (cast_expression "(char *)((int)&uStack_120 + uVar21 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&uStack_120 + uVar21 + 1)" ( (binary_expression "(int)&uStack_120 + uVar21 + 1" (binary_expression "(int)&uStack_120 + uVar21" (cast_expression "(int)&uStack_120" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&uStack_120" & identifier)) + identifier) + number_literal) )))) = (binary_expression "(char)*piVar10 + '/'" (cast_expression "(char)*piVar10" ( (type_descriptor "char" primitive_type) ) (pointer_expression "*piVar10" * identifier)) + (char_literal "'/'" ' character '))) ;) (expression_statement "piVar24[iVar4 * 2] = (int)uVar22 >> 1;" (assignment_expression "piVar24[iVar4 * 2] = (int)uVar22 >> 1" (subscript_expression "piVar24[iVar4 * 2]" identifier [ (binary_expression "iVar4 * 2" identifier * number_literal) ]) = (binary_expression "(int)uVar22 >> 1" (cast_expression "(int)uVar22" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (expression_statement "*(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;" (assignment_expression "*(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1" (pointer_expression "*(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1)" * (cast_expression "(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppiVar14[4] + iVar4 * 2 + 1)" ( (binary_expression "ppiVar14[4] + iVar4 * 2 + 1" (binary_expression "ppiVar14[4] + iVar4 * 2" (subscript_expression "ppiVar14[4]" identifier [ number_literal ]) + (binary_expression "iVar4 * 2" identifier * number_literal)) + number_literal) )))) = number_literal) ;) (expression_statement "piVar24 = *ppiVar14;" (assignment_expression "piVar24 = *ppiVar14" identifier = (pointer_expression "*ppiVar14" * identifier)) ;) (expression_statement "uVar21 = uVar22;" (assignment_expression "uVar21 = uVar22" identifier = identifier) ;) (if_statement "if ((int)piVar24 <= iVar4 + 1) {\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }" if (parenthesized_expression "((int)piVar24 <= iVar4 + 1)" ( (binary_expression "(int)piVar24 <= iVar4 + 1" (cast_expression "(int)piVar24" ( (type_descriptor "int" primitive_type) ) identifier) <= (binary_expression "iVar4 + 1" identifier + number_literal)) )) (compound_statement "{\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }" { (labeled_statement "LAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);" statement_identifier : (expression_statement "pbVar16 = (byte *)(iVar4 + 1);" (assignment_expression "pbVar16 = (byte *)(iVar4 + 1)" identifier = (cast_expression "(byte *)(iVar4 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 1)" ( (binary_expression "iVar4 + 1" identifier + number_literal) )))) ;)) (expression_statement "ppiVar14[5] = (int *)0x2;" (assignment_expression "ppiVar14[5] = (int *)0x2" (subscript_expression "ppiVar14[5]" identifier [ number_literal ]) = (cast_expression "(int *)0x2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar14[7] = (int *)0x1;" (assignment_expression "ppiVar14[7] = (int *)0x1" (subscript_expression "ppiVar14[7]" identifier [ number_literal ]) = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar21 = uVar22;" (assignment_expression "uVar21 = uVar22" identifier = identifier) ;) (if_statement "if (uVar22 == 0) goto LAB_00099480;" if (parenthesized_expression "(uVar22 == 0)" ( (binary_expression "uVar22 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00099480;" goto statement_identifier ;)) (goto_statement "goto LAB_00099544;" goto statement_identifier ;) })) }))) (expression_statement "piVar17 = piVar17 + 3;" (assignment_expression "piVar17 = piVar17 + 3" identifier = (binary_expression "piVar17 + 3" identifier + number_literal)) ;) (if_statement "if ((int)uVar21 < 0x28) goto code_r0x000993b8;" if (parenthesized_expression "((int)uVar21 < 0x28)" ( (binary_expression "(int)uVar21 < 0x28" (cast_expression "(int)uVar21" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (goto_statement "goto code_r0x000993b8;" goto statement_identifier ;)) (expression_statement "ppiVar14[5] = (int *)0x2;" (assignment_expression "ppiVar14[5] = (int *)0x2" (subscript_expression "ppiVar14[5]" identifier [ number_literal ]) = (cast_expression "(int *)0x2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppiVar14[7] = (int *)0x1;" (assignment_expression "ppiVar14[7] = (int *)0x1" (subscript_expression "ppiVar14[7]" identifier [ number_literal ]) = (cast_expression "(int *)0x1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_00099544:\n    pbVar16 = (byte *)(iVar4 + 1);" statement_identifier : (expression_statement "pbVar16 = (byte *)(iVar4 + 1);" (assignment_expression "pbVar16 = (byte *)(iVar4 + 1)" identifier = (cast_expression "(byte *)(iVar4 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 1)" ( (binary_expression "iVar4 + 1" identifier + number_literal) )))) ;)) (expression_statement "piVar24 = (int *)sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4);" (assignment_expression "piVar24 = (int *)sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4)" identifier = (cast_expression "(int *)sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4)" identifier (argument_list "(*(int *)(pcVar11 + 0xc2348) + 0x71f4)" ( (binary_expression "*(int *)(pcVar11 + 0xc2348) + 0x71f4" (pointer_expression "*(int *)(pcVar11 + 0xc2348)" * (cast_expression "(int *)(pcVar11 + 0xc2348)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0xc2348)" ( (binary_expression "pcVar11 + 0xc2348" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "ppiVar14[6] = piVar24;" (assignment_expression "ppiVar14[6] = piVar24" (subscript_expression "ppiVar14[6]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (piVar24 != (int *)0x0) {\n      uVar22 = (int)uVar21 >> 1;\n      goto LAB_00099480;\n    }" if (parenthesized_expression "(piVar24 != (int *)0x0)" ( (binary_expression "piVar24 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      uVar22 = (int)uVar21 >> 1;\n      goto LAB_00099480;\n    }" { (expression_statement "uVar22 = (int)uVar21 >> 1;" (assignment_expression "uVar22 = (int)uVar21 >> 1" identifier = (binary_expression "(int)uVar21 >> 1" (cast_expression "(int)uVar21" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (goto_statement "goto LAB_00099480;" goto statement_identifier ;) })) (expression_statement "ppbVar5 = (byte **)&DAT_00000007;" (assignment_expression "ppbVar5 = (byte **)&DAT_00000007" identifier = (cast_expression "(byte **)&DAT_00000007" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&DAT_00000007" & identifier))) ;) }))) (labeled_statement "LAB_000994e0:\n  if (iStack_f4 == *piVar26) {\n    return ppbVar5;\n  }" statement_identifier : (if_statement "if (iStack_f4 == *piVar26) {\n    return ppbVar5;\n  }" if (parenthesized_expression "(iStack_f4 == *piVar26)" ( (binary_expression "iStack_f4 == *piVar26" identifier == (pointer_expression "*piVar26" * identifier)) )) (compound_statement "{\n    return ppbVar5;\n  }" { (return_statement "return ppbVar5;" return identifier ;) }))) (expression_statement "pcVar11 = *(code **)(pcStack_128 + -0x7ba0);" (assignment_expression "pcVar11 = *(code **)(pcStack_128 + -0x7ba0)" identifier = (pointer_expression "*(code **)(pcStack_128 + -0x7ba0)" * (cast_expression "(code **)(pcStack_128 + -0x7ba0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_128 + -0x7ba0)" ( (binary_expression "pcStack_128 + -0x7ba0" identifier + number_literal) ))))) ;) (expression_statement "iVar4 = iStack_f4;" (assignment_expression "iVar4 = iStack_f4" identifier = identifier) ;) (expression_statement "(*pcVar11)();" (call_expression "(*pcVar11)()" (parenthesized_expression "(*pcVar11)" ( (pointer_expression "*pcVar11" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "ppbVar9 = &pbStack_130;" (assignment_expression "ppbVar9 = &pbStack_130" identifier = (pointer_expression "&pbStack_130" & identifier)) ;) (expression_statement "puVar25 = *(undefined4 **)(pcVar11 + 0xc2410);" (assignment_expression "puVar25 = *(undefined4 **)(pcVar11 + 0xc2410)" identifier = (pointer_expression "*(undefined4 **)(pcVar11 + 0xc2410)" * (cast_expression "(undefined4 **)(pcVar11 + 0xc2410)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0xc2410)" ( (binary_expression "pcVar11 + 0xc2410" identifier + number_literal) ))))) ;) (expression_statement "ppbVar15 = (byte **)*puVar25;" (assignment_expression "ppbVar15 = (byte **)*puVar25" identifier = (cast_expression "(byte **)*puVar25" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "*puVar25" * identifier))) ;) (expression_statement "ppbVar5 = ppbVar15;" (assignment_expression "ppbVar5 = ppbVar15" identifier = identifier) ;) (expression_statement "pbStack_130 = pbVar16;" (assignment_expression "pbStack_130 = pbVar16" identifier = identifier) ;) (expression_statement "piStack_12c = piVar17;" (assignment_expression "piStack_12c = piVar17" identifier = identifier) ;) (if_statement "if ((*(int *)(iVar4 + 0x28) != 0) || (99 < *(int *)(iVar4 + 0x30))) goto LAB_0009967c;" if (parenthesized_expression "((*(int *)(iVar4 + 0x28) != 0) || (99 < *(int *)(iVar4 + 0x30)))" ( (binary_expression "(*(int *)(iVar4 + 0x28) != 0) || (99 < *(int *)(iVar4 + 0x30))" (parenthesized_expression "(*(int *)(iVar4 + 0x28) != 0)" ( (binary_expression "*(int *)(iVar4 + 0x28) != 0" (pointer_expression "*(int *)(iVar4 + 0x28)" * (cast_expression "(int *)(iVar4 + 0x28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x28)" ( (binary_expression "iVar4 + 0x28" identifier + number_literal) )))) != number_literal) )) || (parenthesized_expression "(99 < *(int *)(iVar4 + 0x30))" ( (binary_expression "99 < *(int *)(iVar4 + 0x30)" number_literal < (pointer_expression "*(int *)(iVar4 + 0x30)" * (cast_expression "(int *)(iVar4 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x30)" ( (binary_expression "iVar4 + 0x30" identifier + number_literal) ))))) ))) )) (goto_statement "goto LAB_0009967c;" goto statement_identifier ;)) (expression_statement "piVar24 = (int *)sqlite3_vmprintf();" (assignment_expression "piVar24 = (int *)sqlite3_vmprintf()" identifier = (cast_expression "(int *)sqlite3_vmprintf()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "sqlite3_vmprintf()" identifier (argument_list "()" ( ))))) ;) (if_statement "if (piVar24 == (int *)0x0) {\nLAB_000996f0:\n    *(undefined4 *)(iVar4 + 0x28) = 7;\n  }\n  else {\n    ppbVar9 = *(byte ***)(iVar4 + 0x2c);\n    if (ppbVar9 == (byte **)0x0) {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);\n    }\n    piVar20 = (int *)(*(int *)(pcVar11 + 0xc1fe0) - 0x741c);\n    iVar19 = sqlite3_mprintf();\n    *(int *)(iVar4 + 0x2c) = iVar19;\n    piVar17 = piVar24;\n    if (iVar19 == 0) goto LAB_000996f0;\n  }" if (parenthesized_expression "(piVar24 == (int *)0x0)" ( (binary_expression "piVar24 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000996f0:\n    *(undefined4 *)(iVar4 + 0x28) = 7;\n  }" { (labeled_statement "LAB_000996f0:\n    *(undefined4 *)(iVar4 + 0x28) = 7;" statement_identifier : (expression_statement "*(undefined4 *)(iVar4 + 0x28) = 7;" (assignment_expression "*(undefined4 *)(iVar4 + 0x28) = 7" (pointer_expression "*(undefined4 *)(iVar4 + 0x28)" * (cast_expression "(undefined4 *)(iVar4 + 0x28)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x28)" ( (binary_expression "iVar4 + 0x28" identifier + number_literal) )))) = number_literal) ;)) }) (else_clause "else {\n    ppbVar9 = *(byte ***)(iVar4 + 0x2c);\n    if (ppbVar9 == (byte **)0x0) {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);\n    }\n    piVar20 = (int *)(*(int *)(pcVar11 + 0xc1fe0) - 0x741c);\n    iVar19 = sqlite3_mprintf();\n    *(int *)(iVar4 + 0x2c) = iVar19;\n    piVar17 = piVar24;\n    if (iVar19 == 0) goto LAB_000996f0;\n  }" else (compound_statement "{\n    ppbVar9 = *(byte ***)(iVar4 + 0x2c);\n    if (ppbVar9 == (byte **)0x0) {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);\n    }\n    piVar20 = (int *)(*(int *)(pcVar11 + 0xc1fe0) - 0x741c);\n    iVar19 = sqlite3_mprintf();\n    *(int *)(iVar4 + 0x2c) = iVar19;\n    piVar17 = piVar24;\n    if (iVar19 == 0) goto LAB_000996f0;\n  }" { (expression_statement "ppbVar9 = *(byte ***)(iVar4 + 0x2c);" (assignment_expression "ppbVar9 = *(byte ***)(iVar4 + 0x2c)" identifier = (pointer_expression "*(byte ***)(iVar4 + 0x2c)" * (cast_expression "(byte ***)(iVar4 + 0x2c)" ( (type_descriptor "byte ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "(iVar4 + 0x2c)" ( (binary_expression "iVar4 + 0x2c" identifier + number_literal) ))))) ;) (if_statement "if (ppbVar9 == (byte **)0x0) {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);\n    }" if (parenthesized_expression "(ppbVar9 == (byte **)0x0)" ( (binary_expression "ppbVar9 == (byte **)0x0" identifier == (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4);\n    }" { (expression_statement "pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4);" (assignment_expression "pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4)" identifier = (cast_expression "(byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4)" ( (binary_expression "*(int *)(pcVar11 + 0xc1fcc) + 0x53f4" (pointer_expression "*(int *)(pcVar11 + 0xc1fcc)" * (cast_expression "(int *)(pcVar11 + 0xc1fcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0xc1fcc)" ( (binary_expression "pcVar11 + 0xc1fcc" identifier + number_literal) )))) + number_literal) )))) ;) }) (else_clause "else {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);\n    }" else (compound_statement "{\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);\n    }" { (expression_statement "pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);" (assignment_expression "pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48)" identifier = (cast_expression "(byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48)" ( (binary_expression "*(int *)(pcVar11 + 0xc1fcc) + 0x5c48" (pointer_expression "*(int *)(pcVar11 + 0xc1fcc)" * (cast_expression "(int *)(pcVar11 + 0xc1fcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0xc1fcc)" ( (binary_expression "pcVar11 + 0xc1fcc" identifier + number_literal) )))) + number_literal) )))) ;) }))) (expression_statement "piVar20 = (int *)(*(int *)(pcVar11 + 0xc1fe0) - 0x741c);" (assignment_expression "piVar20 = (int *)(*(int *)(pcVar11 + 0xc1fe0) - 0x741c)" identifier = (cast_expression "(int *)(*(int *)(pcVar11 + 0xc1fe0) - 0x741c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar11 + 0xc1fe0) - 0x741c)" ( (binary_expression "*(int *)(pcVar11 + 0xc1fe0) - 0x741c" (pointer_expression "*(int *)(pcVar11 + 0xc1fe0)" * (cast_expression "(int *)(pcVar11 + 0xc1fe0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0xc1fe0)" ( (binary_expression "pcVar11 + 0xc1fe0" identifier + number_literal) )))) - number_literal) )))) ;) (expression_statement "iVar19 = sqlite3_mprintf();" (assignment_expression "iVar19 = sqlite3_mprintf()" identifier = (call_expression "sqlite3_mprintf()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(int *)(iVar4 + 0x2c) = iVar19;" (assignment_expression "*(int *)(iVar4 + 0x2c) = iVar19" (pointer_expression "*(int *)(iVar4 + 0x2c)" * (cast_expression "(int *)(iVar4 + 0x2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x2c)" ( (binary_expression "iVar4 + 0x2c" identifier + number_literal) )))) = identifier) ;) (expression_statement "piVar17 = piVar24;" (assignment_expression "piVar17 = piVar24" identifier = identifier) ;) (if_statement "if (iVar19 == 0) goto LAB_000996f0;" if (parenthesized_expression "(iVar19 == 0)" ( (binary_expression "iVar19 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000996f0;" goto statement_identifier ;)) }))) (expression_statement "*(int *)(iVar4 + 0x30) = *(int *)(iVar4 + 0x30) + 1;" (assignment_expression "*(int *)(iVar4 + 0x30) = *(int *)(iVar4 + 0x30) + 1" (pointer_expression "*(int *)(iVar4 + 0x30)" * (cast_expression "(int *)(iVar4 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x30)" ( (binary_expression "iVar4 + 0x30" identifier + number_literal) )))) = (binary_expression "*(int *)(iVar4 + 0x30) + 1" (pointer_expression "*(int *)(iVar4 + 0x30)" * (cast_expression "(int *)(iVar4 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + 0x30)" ( (binary_expression "iVar4 + 0x30" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "ppbVar5 = ppbVar9;" (assignment_expression "ppbVar5 = ppbVar9" identifier = identifier) ;) (labeled_statement "LAB_0009967c:\n  ppbVar9 = (byte **)*puVar25;" statement_identifier : (expression_statement "ppbVar9 = (byte **)*puVar25;" (assignment_expression "ppbVar9 = (byte **)*puVar25" identifier = (cast_expression "(byte **)*puVar25" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "*puVar25" * identifier))) ;)) (if_statement "if (ppbVar15 == ppbVar9) {\n    return ppbVar9;\n  }" if (parenthesized_expression "(ppbVar15 == ppbVar9)" ( (binary_expression "ppbVar15 == ppbVar9" identifier == identifier) )) (compound_statement "{\n    return ppbVar9;\n  }" { (return_statement "return ppbVar9;" return identifier ;) })) (expression_statement "pcVar11 = *(code **)(pcVar11 + 0xc23f4);" (assignment_expression "pcVar11 = *(code **)(pcVar11 + 0xc23f4)" identifier = (pointer_expression "*(code **)(pcVar11 + 0xc23f4)" * (cast_expression "(code **)(pcVar11 + 0xc23f4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0xc23f4)" ( (binary_expression "pcVar11 + 0xc23f4" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar11)();" (call_expression "(*pcVar11)()" (parenthesized_expression "(*pcVar11)" ( (pointer_expression "*pcVar11" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "piVar24 = *(int **)(pcVar11 + 0xc231c);" (assignment_expression "piVar24 = *(int **)(pcVar11 + 0xc231c)" identifier = (pointer_expression "*(int **)(pcVar11 + 0xc231c)" * (cast_expression "(int **)(pcVar11 + 0xc231c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0xc231c)" ( (binary_expression "pcVar11 + 0xc231c" identifier + number_literal) ))))) ;) (expression_statement "ppbStack_180 = (byte **)0x0;" (assignment_expression "ppbStack_180 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "iVar4 = *piVar24;" (assignment_expression "iVar4 = *piVar24" identifier = (pointer_expression "*piVar24" * identifier)) ;) (expression_statement "ppbVar9 = (byte **)0x0;" (assignment_expression "ppbVar9 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (if_statement "if (ppbVar5 != (byte **)0x0) {\n    if (*(char *)ppbVar5 == '$') {\n      pbVar16 = (byte *)((int)ppbVar5 + 1);\n      ppbVar9 = (byte **)FUN_0008b18c();\n      ppbVar5 = ppbStack_180;\n    }\n    else {\n      iVar19 = *(int *)(pcVar11 + 0xc1eec);\n      *(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01';\n      ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414);\n      if (ppbVar9 == (byte **)0x0) {\n        (**(code **)(pcVar11 + 0xc2074))(piVar17);\n        ppbVar9 = (byte **)0x0;\n      }\n      else {\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }\n    }\n  }" if (parenthesized_expression "(ppbVar5 != (byte **)0x0)" ( (binary_expression "ppbVar5 != (byte **)0x0" identifier != (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n    if (*(char *)ppbVar5 == '$') {\n      pbVar16 = (byte *)((int)ppbVar5 + 1);\n      ppbVar9 = (byte **)FUN_0008b18c();\n      ppbVar5 = ppbStack_180;\n    }\n    else {\n      iVar19 = *(int *)(pcVar11 + 0xc1eec);\n      *(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01';\n      ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414);\n      if (ppbVar9 == (byte **)0x0) {\n        (**(code **)(pcVar11 + 0xc2074))(piVar17);\n        ppbVar9 = (byte **)0x0;\n      }\n      else {\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }\n    }\n  }" { (if_statement "if (*(char *)ppbVar5 == '$') {\n      pbVar16 = (byte *)((int)ppbVar5 + 1);\n      ppbVar9 = (byte **)FUN_0008b18c();\n      ppbVar5 = ppbStack_180;\n    }\n    else {\n      iVar19 = *(int *)(pcVar11 + 0xc1eec);\n      *(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01';\n      ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414);\n      if (ppbVar9 == (byte **)0x0) {\n        (**(code **)(pcVar11 + 0xc2074))(piVar17);\n        ppbVar9 = (byte **)0x0;\n      }\n      else {\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }\n    }" if (parenthesized_expression "(*(char *)ppbVar5 == '$')" ( (binary_expression "*(char *)ppbVar5 == '$'" (pointer_expression "*(char *)ppbVar5" * (cast_expression "(char *)ppbVar5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) == (char_literal "'$'" ' character ')) )) (compound_statement "{\n      pbVar16 = (byte *)((int)ppbVar5 + 1);\n      ppbVar9 = (byte **)FUN_0008b18c();\n      ppbVar5 = ppbStack_180;\n    }" { (expression_statement "pbVar16 = (byte *)((int)ppbVar5 + 1);" (assignment_expression "pbVar16 = (byte *)((int)ppbVar5 + 1)" identifier = (cast_expression "(byte *)((int)ppbVar5 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppbVar5 + 1)" ( (binary_expression "(int)ppbVar5 + 1" (cast_expression "(int)ppbVar5" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "ppbVar9 = (byte **)FUN_0008b18c();" (assignment_expression "ppbVar9 = (byte **)FUN_0008b18c()" identifier = (cast_expression "(byte **)FUN_0008b18c()" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "FUN_0008b18c()" identifier (argument_list "()" ( ))))) ;) (expression_statement "ppbVar5 = ppbStack_180;" (assignment_expression "ppbVar5 = ppbStack_180" identifier = identifier) ;) }) (else_clause "else {\n      iVar19 = *(int *)(pcVar11 + 0xc1eec);\n      *(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01';\n      ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414);\n      if (ppbVar9 == (byte **)0x0) {\n        (**(code **)(pcVar11 + 0xc2074))(piVar17);\n        ppbVar9 = (byte **)0x0;\n      }\n      else {\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }\n    }" else (compound_statement "{\n      iVar19 = *(int *)(pcVar11 + 0xc1eec);\n      *(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01';\n      ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414);\n      if (ppbVar9 == (byte **)0x0) {\n        (**(code **)(pcVar11 + 0xc2074))(piVar17);\n        ppbVar9 = (byte **)0x0;\n      }\n      else {\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }\n    }" { (expression_statement "iVar19 = *(int *)(pcVar11 + 0xc1eec);" (assignment_expression "iVar19 = *(int *)(pcVar11 + 0xc1eec)" identifier = (pointer_expression "*(int *)(pcVar11 + 0xc1eec)" * (cast_expression "(int *)(pcVar11 + 0xc1eec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0xc1eec)" ( (binary_expression "pcVar11 + 0xc1eec" identifier + number_literal) ))))) ;) (expression_statement "*(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01';" (assignment_expression "*(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01'" (pointer_expression "*(char *)((int)piVar20 + 0x15)" * (cast_expression "(char *)((int)piVar20 + 0x15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar20 + 0x15)" ( (binary_expression "(int)piVar20 + 0x15" (cast_expression "(int)piVar20" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = (binary_expression "*(char *)((int)piVar20 + 0x15) + '\x01'" (pointer_expression "*(char *)((int)piVar20 + 0x15)" * (cast_expression "(char *)((int)piVar20 + 0x15)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)piVar20 + 0x15)" ( (binary_expression "(int)piVar20 + 0x15" (cast_expression "(int)piVar20" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + (char_literal "'\x01'" ' escape_sequence '))) ;) (expression_statement "ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414);" (assignment_expression "ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414)" identifier = (cast_expression "(byte **)sqlite3_mprintf(iVar19 + -0x7414)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "sqlite3_mprintf(iVar19 + -0x7414)" identifier (argument_list "(iVar19 + -0x7414)" ( (binary_expression "iVar19 + -0x7414" identifier + number_literal) ))))) ;) (if_statement "if (ppbVar9 == (byte **)0x0) {\n        (**(code **)(pcVar11 + 0xc2074))(piVar17);\n        ppbVar9 = (byte **)0x0;\n      }\n      else {\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }" if (parenthesized_expression "(ppbVar9 == (byte **)0x0)" ( (binary_expression "ppbVar9 == (byte **)0x0" identifier == (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n        (**(code **)(pcVar11 + 0xc2074))(piVar17);\n        ppbVar9 = (byte **)0x0;\n      }" { (expression_statement "(**(code **)(pcVar11 + 0xc2074))(piVar17);" (call_expression "(**(code **)(pcVar11 + 0xc2074))(piVar17)" (parenthesized_expression "(**(code **)(pcVar11 + 0xc2074))" ( (pointer_expression "**(code **)(pcVar11 + 0xc2074)" * (pointer_expression "*(code **)(pcVar11 + 0xc2074)" * (cast_expression "(code **)(pcVar11 + 0xc2074)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0xc2074)" ( (binary_expression "pcVar11 + 0xc2074" identifier + number_literal) ))))) )) (argument_list "(piVar17)" ( identifier ))) ;) (expression_statement "ppbVar9 = (byte **)0x0;" (assignment_expression "ppbVar9 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) }) (else_clause "else {\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }" else (compound_statement "{\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }" { (expression_statement "pbVar16 = (byte *)0xffffffff;" (assignment_expression "pbVar16 = (byte *)0xffffffff" identifier = (cast_expression "(byte *)0xffffffff" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ppbVar5 = ppbVar9;" (assignment_expression "ppbVar5 = ppbVar9" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar11 + 0xc2060))(piVar17);" (call_expression "(**(code **)(pcVar11 + 0xc2060))(piVar17)" (parenthesized_expression "(**(code **)(pcVar11 + 0xc2060))" ( (pointer_expression "**(code **)(pcVar11 + 0xc2060)" * (pointer_expression "*(code **)(pcVar11 + 0xc2060)" * (cast_expression "(code **)(pcVar11 + 0xc2060)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0xc2060)" ( (binary_expression "pcVar11 + 0xc2060" identifier + number_literal) ))))) )) (argument_list "(piVar17)" ( identifier ))) ;) (expression_statement "(**(code **)(pcVar11 + 0xc1f10))(ppbVar9);" (call_expression "(**(code **)(pcVar11 + 0xc1f10))(ppbVar9)" (parenthesized_expression "(**(code **)(pcVar11 + 0xc1f10))" ( (pointer_expression "**(code **)(pcVar11 + 0xc1f10)" * (pointer_expression "*(code **)(pcVar11 + 0xc1f10)" * (cast_expression "(code **)(pcVar11 + 0xc1f10)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0xc1f10)" ( (binary_expression "pcVar11 + 0xc1f10" identifier + number_literal) ))))) )) (argument_list "(ppbVar9)" ( identifier ))) ;) (expression_statement "ppbVar9 = (byte **)0x0;" (assignment_expression "ppbVar9 = (byte **)0x0" identifier = (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) }))) }))) })) (if_statement "if (iVar4 != *piVar24) {\n    pcVar11 = *(code **)(pcVar11 + 0xc2300);\n    (*pcVar11)();\n    ppbVar9 = (byte **)FUN_0008ad48();\n    if (ppbVar9 != (byte **)0x0) {\n      if (ppbVar5 == (byte **)&SUB_00000002) {\n        uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));\n        ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);\n      }\n      else {\n        ppbVar9 = (byte **)ppbVar9[2];\n      }\n      if (ppbVar9 != (byte **)0x0) {\n                    \n                    \n        ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n        return ppbVar5;\n      }\n    }\n    return ppbVar9;\n  }" if (parenthesized_expression "(iVar4 != *piVar24)" ( (binary_expression "iVar4 != *piVar24" identifier != (pointer_expression "*piVar24" * identifier)) )) (compound_statement "{\n    pcVar11 = *(code **)(pcVar11 + 0xc2300);\n    (*pcVar11)();\n    ppbVar9 = (byte **)FUN_0008ad48();\n    if (ppbVar9 != (byte **)0x0) {\n      if (ppbVar5 == (byte **)&SUB_00000002) {\n        uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));\n        ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);\n      }\n      else {\n        ppbVar9 = (byte **)ppbVar9[2];\n      }\n      if (ppbVar9 != (byte **)0x0) {\n                    \n                    \n        ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n        return ppbVar5;\n      }\n    }\n    return ppbVar9;\n  }" { (expression_statement "pcVar11 = *(code **)(pcVar11 + 0xc2300);" (assignment_expression "pcVar11 = *(code **)(pcVar11 + 0xc2300)" identifier = (pointer_expression "*(code **)(pcVar11 + 0xc2300)" * (cast_expression "(code **)(pcVar11 + 0xc2300)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0xc2300)" ( (binary_expression "pcVar11 + 0xc2300" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar11)();" (call_expression "(*pcVar11)()" (parenthesized_expression "(*pcVar11)" ( (pointer_expression "*pcVar11" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "ppbVar9 = (byte **)FUN_0008ad48();" (assignment_expression "ppbVar9 = (byte **)FUN_0008ad48()" identifier = (cast_expression "(byte **)FUN_0008ad48()" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "FUN_0008ad48()" identifier (argument_list "()" ( ))))) ;) (if_statement "if (ppbVar9 != (byte **)0x0) {\n      if (ppbVar5 == (byte **)&SUB_00000002) {\n        uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));\n        ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);\n      }\n      else {\n        ppbVar9 = (byte **)ppbVar9[2];\n      }\n      if (ppbVar9 != (byte **)0x0) {\n                    \n                    \n        ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n        return ppbVar5;\n      }\n    }" if (parenthesized_expression "(ppbVar9 != (byte **)0x0)" ( (binary_expression "ppbVar9 != (byte **)0x0" identifier != (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n      if (ppbVar5 == (byte **)&SUB_00000002) {\n        uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));\n        ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);\n      }\n      else {\n        ppbVar9 = (byte **)ppbVar9[2];\n      }\n      if (ppbVar9 != (byte **)0x0) {\n                    \n                    \n        ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n        return ppbVar5;\n      }\n    }" { (if_statement "if (ppbVar5 == (byte **)&SUB_00000002) {\n        uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));\n        ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);\n      }\n      else {\n        ppbVar9 = (byte **)ppbVar9[2];\n      }" if (parenthesized_expression "(ppbVar5 == (byte **)&SUB_00000002)" ( (binary_expression "ppbVar5 == (byte **)&SUB_00000002" identifier == (cast_expression "(byte **)&SUB_00000002" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&SUB_00000002" & identifier))) )) (compound_statement "{\n        uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));\n        ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);\n      }" { (expression_statement "uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));" (assignment_expression "uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4))" identifier = (call_expression "(**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4))" (parenthesized_expression "(**(code **)(pcVar11 + 0xc1dd4))" ( (pointer_expression "**(code **)(pcVar11 + 0xc1dd4)" * (pointer_expression "*(code **)(pcVar11 + 0xc1dd4)" * (cast_expression "(code **)(pcVar11 + 0xc1dd4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0xc1dd4)" ( (binary_expression "pcVar11 + 0xc1dd4" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(pbVar16 + 4))" ( (pointer_expression "*(undefined4 *)(pbVar16 + 4)" * (cast_expression "(undefined4 *)(pbVar16 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar16 + 4)" ( (binary_expression "pbVar16 + 4" identifier + number_literal) )))) )))) ;) (expression_statement "ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);" (assignment_expression "ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4)" identifier = (cast_expression "(byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "FUN_00099710(ppbVar9,uVar28,0,iVar4)" identifier (argument_list "(ppbVar9,uVar28,0,iVar4)" ( identifier , identifier , number_literal , identifier ))))) ;) }) (else_clause "else {\n        ppbVar9 = (byte **)ppbVar9[2];\n      }" else (compound_statement "{\n        ppbVar9 = (byte **)ppbVar9[2];\n      }" { (expression_statement "ppbVar9 = (byte **)ppbVar9[2];" (assignment_expression "ppbVar9 = (byte **)ppbVar9[2]" identifier = (cast_expression "(byte **)ppbVar9[2]" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (subscript_expression "ppbVar9[2]" identifier [ number_literal ]))) ;) }))) (if_statement "if (ppbVar9 != (byte **)0x0) {\n                    \n                    \n        ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n        return ppbVar5;\n      }" if (parenthesized_expression "(ppbVar9 != (byte **)0x0)" ( (binary_expression "ppbVar9 != (byte **)0x0" identifier != (cast_expression "(byte **)0x0" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n                    \n                    \n        ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n        return ppbVar5;\n      }" { (expression_statement "ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);" (assignment_expression "ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0)" identifier = (cast_expression "(byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (call_expression "(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0)" (parenthesized_expression "(**(code **)(pcVar11 + 0xc1e3c))" ( (pointer_expression "**(code **)(pcVar11 + 0xc1e3c)" * (pointer_expression "*(code **)(pcVar11 + 0xc1e3c)" * (cast_expression "(code **)(pcVar11 + 0xc1e3c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar11 + 0xc1e3c)" ( (binary_expression "pcVar11 + 0xc1e3c" identifier + number_literal) ))))) )) (argument_list "(iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0)" ( identifier , (pointer_expression "*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c)" * (cast_expression "(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c)" ( (binary_expression "(uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c" (binary_expression "(uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98)" (binary_expression "(uint)*(byte *)ppbVar9 * 4" (binary_expression "(uint)*(byte *)ppbVar9" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)ppbVar9" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) * number_literal) + (pointer_expression "*(int *)(pcVar11 + 0xc1d98)" * (cast_expression "(int *)(pcVar11 + 0xc1d98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar11 + 0xc1d98)" ( (binary_expression "pcVar11 + 0xc1d98" identifier + number_literal) ))))) + number_literal) )))) , number_literal , number_literal ))))) ;) (return_statement "return ppbVar5;" return identifier ;) })) })) (return_statement "return ppbVar9;" return identifier ;) })) (return_statement "return ppbVar9;" return identifier ;) (labeled_statement "code_r0x000993b8:\n  piVar10 = ppiVar14[1];" statement_identifier : (expression_statement "piVar10 = ppiVar14[1];" (assignment_expression "piVar10 = ppiVar14[1]" identifier = (subscript_expression "ppiVar14[1]" identifier [ number_literal ])) ;)) (expression_statement "iVar4 = iVar4 + 1;" (assignment_expression "iVar4 = iVar4 + 1" identifier = (binary_expression "iVar4 + 1" identifier + number_literal)) ;) (goto_statement "goto LAB_000993bc;" goto statement_identifier ;) })))
(translation_unit (function_definition TYPE (pointer_declarator * (pointer_declarator * (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * (pointer_declarator * IDENT))) , (parameter_declaration TYPE (pointer_declarator * (pointer_declarator * IDENT))) , (parameter_declaration TYPE (pointer_declarator * (pointer_declarator * IDENT))) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (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 IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression & IDENT))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (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 (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) = (cast_expression ( (type_descriptor TYPE) ) LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( IDENT , IDENT , (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression IDENT == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) ;) (while_statement while (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT < IDENT) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = IDENT) , (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))))) , (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)))) ))) )) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (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 * (abstract_pointer_declarator *))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression & IDENT))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (subscript_expression (parenthesized_expression ( (binary_expression 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) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) = LIT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (pointer_expression * IDENT)) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) }))) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) }))) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) IDENT))) )) (compound_statement { (return_statement return IDENT ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) ;)) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression * IDENT))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (call_expression IDENT (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = 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 IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression * 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 IDENT + LIT) ))))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression * IDENT))) )) (compound_statement { (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression * 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 = LIT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (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 = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * IDENT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression & IDENT))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = 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 IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , LIT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (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 (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , LIT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (subscript_expression IDENT [ LIT ]) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (subscript_expression IDENT [ LIT ]) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (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) )))) )) (argument_list ( IDENT , IDENT , (binary_expression IDENT + LIT) , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (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 IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT ))) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (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 (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , LIT ))) ;) }))) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (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 IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression & 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 IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , LIT ))) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (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) )))) )) (argument_list ( IDENT , IDENT , (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (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 ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = 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 IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = 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 IDENT + LIT) ))))) )) (argument_list ( ))) ;) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression * IDENT))) )) (compound_statement { (return_statement return (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression * 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 = LIT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 * IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (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 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 ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> (parenthesized_expression ( (binary_expression IDENT & LIT) ))) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) << LIT) )) << (parenthesized_expression ( (binary_expression (unary_expression ~ IDENT) & LIT) ))) | (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) >> (parenthesized_expression ( (binary_expression IDENT & LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) == (char_literal ' character ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = BOOL) ;) })) }) while (parenthesized_expression ( (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) != IDENT) )) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;)) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (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 IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (subscript_expression (subscript_expression IDENT [ LIT ]) [ (binary_expression IDENT * LIT) ]) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) + (binary_expression IDENT * LIT)) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * LIT)) ;) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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 (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) + IDENT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (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) ) (subscript_expression IDENT [ LIT ])) + 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 (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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 ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) ;) (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 (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) <= (binary_expression IDENT + LIT)) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < LIT) )) || (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) (call_expression (parenthesized_expression ( IDENT )) (argument_list ( IDENT )))) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) < IDENT) ))) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = LIT) , (binary_expression IDENT != LIT)) ))) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = LIT) , (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = LIT) , (binary_expression IDENT != LIT)) )))) )) ))) )) (goto_statement goto statement_identifier ;)) })))))))) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (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) )))) = 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) ) (pointer_expression & IDENT)) + IDENT) + LIT) )))) = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * IDENT)) + (char_literal ' character '))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (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 (binary_expression (subscript_expression IDENT [ LIT ]) + (binary_expression IDENT * LIT)) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) <= (binary_expression IDENT + LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (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 (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (goto_statement goto statement_identifier ;)) (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 ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (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 *)) ) (call_expression IDENT (argument_list ( (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 IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression & IDENT))) ;) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * IDENT)) )) (compound_statement { (return_statement return 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 = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & 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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = 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 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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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) )))) = LIT) ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator *))) ) LIT)) )) (compound_statement { (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) )))) ;) }) (else_clause else (compound_statement { (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 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 IDENT = (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) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression 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) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression * IDENT))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (return_statement return 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 (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) == (char_literal ' character ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) + (char_literal ' escape_sequence '))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) )) (compound_statement { (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 IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = 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 IDENT + LIT) ))))) )) (argument_list ( 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 IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) ;) }))) }))) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (pointer_expression * IDENT)) )) (compound_statement { (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 (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (call_expression IDENT (argument_list ( ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression & IDENT))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (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 * (abstract_pointer_declarator *))) ) (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (subscript_expression IDENT [ LIT ]))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) * LIT) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) + LIT) )))) , LIT , LIT ))))) ;) (return_statement return IDENT ;) })) })) (return_statement return IDENT ;) })) (return_statement return IDENT ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (goto_statement goto statement_identifier ;) })))
(function_definition "byte ** FUN_00098c58(int **param_1,int **param_2,int **param_3,int *param_4)\n\n{\n  bool bVar1;\n  int **ppiVar2;\n  int **ppiVar3;\n  int iVar4;\n  byte **ppbVar5;\n  undefined4 uVar6;\n  int iVar7;\n  int **ppiVar8;\n  byte **ppbVar9;\n  int *piVar10;\n  code *pcVar11;\n  byte bVar12;\n  int **ppiVar13;\n  int **ppiVar14;\n  byte **ppbVar15;\n  byte *pbVar16;\n  int *piVar17;\n  undefined1 uVar18;\n  int iVar19;\n  int *piVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  int *piVar24;\n  undefined4 *puVar25;\n  int **unaff_s2;\n  int **unaff_s3;\n  int *piVar26;\n  code *unaff_s4;\n  int **unaff_s5;\n  int **unaff_s6;\n  undefined *puVar27;\n  undefined4 uVar28;\n  double dVar29;\n  undefined8 uVar30;\n  byte **ppbStack_180;\n  byte *pbStack_130;\n  int *piStack_12c;\n  code *pcStack_128;\n  undefined4 uStack_120;\n  undefined4 uStack_11c;\n  undefined4 uStack_118;\n  undefined4 uStack_114;\n  undefined4 uStack_110;\n  undefined4 uStack_10c;\n  undefined4 uStack_108;\n  undefined4 uStack_104;\n  undefined4 uStack_100;\n  undefined4 uStack_fc;\n  undefined1 uStack_f8;\n  int iStack_f4;\n  int **ppiStack_f0;\n  int *piStack_ec;\n  int iStack_e8;\n  int **ppiStack_e4;\n  int **ppiStack_e0;\n  undefined4 uStack_dc;\n  code *pcStack_c8;\n  int *piStack_bc;\n  int iStack_b8;\n  byte **ppbStack_b4;\n  int *piStack_b0;\n  int **ppiStack_ac;\n  int **ppiStack_a8;\n  int **ppiStack_a4;\n  code *pcStack_a0;\n  int **ppiStack_9c;\n  int **ppiStack_98;\n  undefined4 uStack_94;\n  undefined *puStack_80;\n  int **ppiStack_78;\n  byte **ppbStack_74;\n  byte **ppbStack_6c;\n  int **ppiStack_68;\n  int **ppiStack_64;\n  int **ppiStack_60;\n  code *pcStack_5c;\n  int *piStack_4c;\n  int *local_30;\n  int **local_2c;\n  \n  puVar27 = PTR___stack_chk_guard_0015ba2c;\n  local_30 = (int *)0x0;\n  local_2c = *(int ***)PTR___stack_chk_guard_0015ba2c;\n  ppiVar8 = param_3;\n  piVar17 = param_4;\n  ppiVar2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x71f4);\n  if (ppiVar2 == (int **)0x0) {\n    ppbVar5 = (byte **)&DAT_00000007;\n  }\n  else {\n    unaff_s5 = &local_30;\n    unaff_s4 = (code *)(*(code *)PTR_strlen_0015b9c4)(ppiVar2);\n    unaff_s2 = (int **)(PTR_LAB_0015b65c + 0x273c);\n    ppiVar3 = (int **)(*(code *)unaff_s2)(ppiVar2,unaff_s5);\n    ppiVar8 = ppiVar2;\n    if (ppiVar3 != (int **)0x0) {\n      ppiVar8 = ppiVar3;\n    }\n    unaff_s3 = (int **)(PTR_LAB_0015b65c + 0x1120);\n    *(code *)((int)ppiVar8 + (int)local_30) = (code)0x0;\n    (*(code *)unaff_s3)(ppiVar8);\n    iVar4 = (*(code *)PTR_strlen_0015b9c4)();\n    iVar4 = (*(code *)(PTR_LAB_0015b6c0 + -0x2c24))(param_1,ppiVar8,iVar4 + 1);\n    unaff_s6 = ppiVar2;\n    if ((iVar4 == 0) || (iVar4 = *(int *)(iVar4 + 8), iVar4 == 0)) {\n      ppbVar5 = (byte **)0x1;\n      param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478);\n      FUN_00092618(param_4);\n    }\n    else {\n      unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);\n      pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);\n      iVar19 = 0;\n      param_1 = (int **)0x0;\n      while ((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }\n      param_2 = param_1;\n      ppiVar8 = param_3;\n      ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);\n      if (ppbVar5 == (byte **)0x0) {\n        **param_3 = iVar4;\n      }\n      else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }\n      (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n  }\nLAB_00098e8c:\n  if (local_2c == *(int ***)puVar27) {\n    return ppbVar5;\n  }\n  pcVar11 = FUN_00098f2c;\n  ppiVar2 = local_2c;\n  puVar27 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  puStack_80 = puVar27 + 0xca684;\n  piVar20 = *(int **)(puVar27 + 0xc2b00);\n  ppbStack_74 = (byte **)*piVar20;\n  ppiVar3 = ppiVar2;\n  ppiVar13 = param_2;\n  ppiStack_ac = param_1;\n  ppiStack_a4 = unaff_s3;\n  ppbStack_6c = ppbVar5;\n  ppiStack_68 = param_1;\n  ppiStack_64 = unaff_s2;\n  ppiStack_60 = unaff_s3;\n  pcStack_5c = pcVar11;\n  piStack_4c = piVar17;\n  if (*ppiVar2 == (int *)0x0) {\n    ppiVar13 = &piStack_4c;\n    ppiStack_78 = ppiVar13;\n    ppiVar14 = (int **)sqlite3_vmprintf(ppiVar8);\n    if (ppiVar14 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *ppiVar2 = (int *)0x7;\n      ppiVar3 = (int **)*param_2;\n    }\n    else {\n      ppiVar3 = (int **)*param_2;\n      unaff_s2 = ppiVar14;\n      if (ppiVar3 != (int **)0x0) {\n        ppiVar8 = ppiVar14;\n        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);\n        ppiVar13 = ppiVar3;\n        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar3 = (int **)*param_2;\n      }\n    }\n    (**(code **)(puStack_80 + -0x7f90))();\n    *param_2 = (int *)unaff_s2;\n    ppiStack_ac = ppiVar2;\n    ppiStack_a4 = param_2;\n  }\n  if (ppbStack_74 == (byte **)*piVar20) {\n    return (byte **)*piVar20;\n  }\n  pcVar11 = *(code **)(puStack_80 + -0x7ba0);\n  uVar28 = 0x99034;\n  (*pcVar11)();\n  pcStack_c8 = pcVar11 + 0xca57c;\n  piVar24 = *(int **)(pcVar11 + 0xc29f8);\n  piStack_bc = (int *)0x0;\n  ppbStack_b4 = (byte **)*piVar24;\n  piStack_b0 = piVar20;\n  ppiStack_a8 = unaff_s2;\n  pcStack_a0 = unaff_s4;\n  ppiStack_9c = unaff_s5;\n  ppiStack_98 = unaff_s6;\n  uStack_94 = uVar28;\n  uVar28 = (**(code **)(pcVar11 + 0xc2694))();\n  iVar4 = (**(code **)(pcStack_c8 + -0x7f9c))(*ppiVar8);\n  iVar19 = (**(code **)(pcStack_c8 + -0x7fac))(*ppiVar8);\n  ppiVar2 = ppiVar3;\n  if (ppiVar13 == (int **)&SUB_00000002) {\n    uVar6 = (**(code **)(pcStack_c8 + -0x7ed0))(ppiVar3);\n    piVar17 = &iStack_b8;\n    iStack_b8 = 0;\n    (**(code **)(pcStack_c8 + -0x7d60))(uVar6,0x3ec,0xffffffff);\n    if (iStack_b8 == 0) {\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n    else {\n      iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1]);\n      if ((iVar4 != 0) && (iVar7 == 4)) {\n        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);\n        piStack_bc = (int *)*piStack_bc;\n        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);\n        if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n  }\n  else {\n    if (iVar4 == 0) {\nLAB_000990f4:\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n      if (piStack_bc != (int *)0x0) {\nLAB_000990fc:\n        piVar17 = (int *)0xffffffff;\n        ppiVar14 = &piStack_bc;\n        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);\n      if (iVar19 != 0) {\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }\n      piStack_bc = (int *)0x0;\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n    }\n    ppiVar8 = (int **)sqlite3_mprintf(iVar19 + -0x7478,iVar4);\n    ppiVar14 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar8,0xffffffff);\n    ppiVar2 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7f90))();\n  }\nLAB_00099118:\n  if (ppbStack_b4 == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }\n  pcVar11 = *(code **)(pcStack_c8 + -0x7ba0);\n  uVar28 = 0x992a0;\n  (*pcVar11)();\n  ppiStack_e4 = ppiVar3;\n  piStack_ec = piVar24;\n  iStack_e8 = iVar4;\n  piVar20 = &uStack_120;\n  pcStack_128 = pcVar11 + 0xca310;\n  uStack_dc = uVar28;\n  ppiStack_e0 = ppiVar13;\n  ppiStack_f0 = ppiVar8;\n  piVar26 = *(int **)(pcVar11 + 0xc278c);\n  piVar24 = *ppiVar14;\n  uStack_120 = 0;\n  uStack_11c = 0;\n  uStack_118 = 0;\n  uStack_114 = 0;\n  uStack_110 = 0;\n  uStack_10c = 0;\n  uStack_108 = 0;\n  uStack_104 = 0;\n  uStack_100 = 0;\n  uStack_fc = 0;\n  uStack_f8 = 0;\n  iStack_f4 = *piVar26;\n  pbVar16 = (byte *)((int)piVar24 * 2);\n  if ((int)piVar24 < 1) {\n    uVar22 = 0;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099480:\n    piVar20 = ppiVar2[0xc];\n    piVar23 = (int *)((int)piVar20 >> (uVar22 & 0x1f));\n    piVar10 = piVar23;\n    piVar24 = (int *)(((int)piVar20 << 1) << (~uVar22 & 0x1f) |\n                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f));\n    if ((uVar22 & 0x20) != 0) {\n      piVar10 = (int *)((int)piVar20 >> 0x1f);\n      piVar24 = piVar23;\n    }\n    piVar20 = piVar24;\n    dVar29 = (double)(**(code **)(pcStack_128 + -0x7f18))(piVar10);\n    ppbVar5 = (byte **)0x0;\n    ppiVar14[0xc] = piVar10;\n    ppiVar14[0xd] = piVar24;\n    *(double *)(ppiVar14 + 10) = dVar29 * *(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780);\n  }\n  else {\n    piVar10 = ppiVar14[1];\n    bVar1 = false;\n    piVar17 = piVar10;\n    do {\n      piVar23 = piVar17 + 1;\n      piVar17 = piVar17 + 3;\n      if (*(char *)piVar23 == '@') {\n        bVar1 = true;\n      }\n    } while (piVar10 + (int)piVar24 * 3 != piVar17);\n    piVar17 = (int *)0x0;\n    uVar21 = 0;\n    iVar4 = 0;\nLAB_000993bc:\n    piVar10 = (int *)((int)piVar10 + (int)piVar17);\n    if (!bVar1) {\n      if (*(char *)((int)piVar10 + 5) == '\0') goto LAB_0009939c;\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\n      if (iVar19 != 0) goto LAB_000993d8;\n      if (bVar12 != 2) goto LAB_00099394;\n      if (iVar4 == 0) {\n        iVar19 = 0;\n      }\n      else {\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }\n      piVar17 = (int *)0x1;\n      ppiVar14[5] = (int *)0x1;\n      piVar20 = *(int **)(pcVar11 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar20 + -0x1de2);\n      *(undefined4 *)((int)ppiVar14[4] + iVar19) = 1;\n      pbVar16 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1;\n      *(undefined8 *)(ppiVar14 + 10) = uVar30;\n      ppiVar14[0xd] = (int *)0x1;\n      ppiVar14[0xc] = (int *)0x0;\n      ppiVar14[0xe] = (int *)0x1;\n      ppbVar5 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar10 + 5) == '\0') {\nLAB_0009939c:\n      uVar22 = uVar21;\n      if ((int)piVar24 <= iVar4 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\nLAB_000993d8:\n      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar24 = ppiVar14[4];\n      uVar22 = uVar21 + 2;\n      *(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;\n      *(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';\n      piVar24[iVar4 * 2] = (int)uVar22 >> 1;\n      *(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;\n      piVar24 = *ppiVar14;\n      uVar21 = uVar22;\n      if ((int)piVar24 <= iVar4 + 1) {\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }\n    piVar17 = piVar17 + 3;\n    if ((int)uVar21 < 0x28) goto code_r0x000993b8;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099544:\n    pbVar16 = (byte *)(iVar4 + 1);\n    piVar24 = (int *)sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4);\n    ppiVar14[6] = piVar24;\n    if (piVar24 != (int *)0x0) {\n      uVar22 = (int)uVar21 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar5 = (byte **)&DAT_00000007;\n  }\nLAB_000994e0:\n  if (iStack_f4 == *piVar26) {\n    return ppbVar5;\n  }\n  pcVar11 = *(code **)(pcStack_128 + -0x7ba0);\n  iVar4 = iStack_f4;\n  (*pcVar11)();\n  ppbVar9 = &pbStack_130;\n  puVar25 = *(undefined4 **)(pcVar11 + 0xc2410);\n  ppbVar15 = (byte **)*puVar25;\n  ppbVar5 = ppbVar15;\n  pbStack_130 = pbVar16;\n  piStack_12c = piVar17;\n  if ((*(int *)(iVar4 + 0x28) != 0) || (99 < *(int *)(iVar4 + 0x30))) goto LAB_0009967c;\n  piVar24 = (int *)sqlite3_vmprintf();\n  if (piVar24 == (int *)0x0) {\nLAB_000996f0:\n    *(undefined4 *)(iVar4 + 0x28) = 7;\n  }\n  else {\n    ppbVar9 = *(byte ***)(iVar4 + 0x2c);\n    if (ppbVar9 == (byte **)0x0) {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);\n    }\n    piVar20 = (int *)(*(int *)(pcVar11 + 0xc1fe0) - 0x741c);\n    iVar19 = sqlite3_mprintf();\n    *(int *)(iVar4 + 0x2c) = iVar19;\n    piVar17 = piVar24;\n    if (iVar19 == 0) goto LAB_000996f0;\n  }\n  *(int *)(iVar4 + 0x30) = *(int *)(iVar4 + 0x30) + 1;\n  ppbVar5 = ppbVar9;\nLAB_0009967c:\n  ppbVar9 = (byte **)*puVar25;\n  if (ppbVar15 == ppbVar9) {\n    return ppbVar9;\n  }\n  pcVar11 = *(code **)(pcVar11 + 0xc23f4);\n  (*pcVar11)();\n  piVar24 = *(int **)(pcVar11 + 0xc231c);\n  ppbStack_180 = (byte **)0x0;\n  iVar4 = *piVar24;\n  ppbVar9 = (byte **)0x0;\n  if (ppbVar5 != (byte **)0x0) {\n    if (*(char *)ppbVar5 == '$') {\n      pbVar16 = (byte *)((int)ppbVar5 + 1);\n      ppbVar9 = (byte **)FUN_0008b18c();\n      ppbVar5 = ppbStack_180;\n    }\n    else {\n      iVar19 = *(int *)(pcVar11 + 0xc1eec);\n      *(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01';\n      ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414);\n      if (ppbVar9 == (byte **)0x0) {\n        (**(code **)(pcVar11 + 0xc2074))(piVar17);\n        ppbVar9 = (byte **)0x0;\n      }\n      else {\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }\n    }\n  }\n  if (iVar4 != *piVar24) {\n    pcVar11 = *(code **)(pcVar11 + 0xc2300);\n    (*pcVar11)();\n    ppbVar9 = (byte **)FUN_0008ad48();\n    if (ppbVar9 != (byte **)0x0) {\n      if (ppbVar5 == (byte **)&SUB_00000002) {\n        uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));\n        ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);\n      }\n      else {\n        ppbVar9 = (byte **)ppbVar9[2];\n      }\n      if (ppbVar9 != (byte **)0x0) {\n                    \n                    \n        ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n        return ppbVar5;\n      }\n    }\n    return ppbVar9;\n  }\n  return ppbVar9;\ncode_r0x000993b8:\n  piVar10 = ppiVar14[1];\n  iVar4 = iVar4 + 1;\n  goto LAB_000993bc;\n}" (type_identifier "byte") (pointer_declarator "** FUN_00098c58(int **param_1,int **param_2,int **param_3,int *param_4)" (* "*") (pointer_declarator "* FUN_00098c58(int **param_1,int **param_2,int **param_3,int *param_4)" (* "*") (function_declarator "FUN_00098c58(int **param_1,int **param_2,int **param_3,int *param_4)" (identifier "FUN_00098c58") (parameter_list "(int **param_1,int **param_2,int **param_3,int *param_4)" (( "(") (parameter_declaration "int **param_1" (primitive_type "int") (pointer_declarator "**param_1" (* "*") (pointer_declarator "*param_1" (* "*") (identifier "param_1")))) (, ",") (parameter_declaration "int **param_2" (primitive_type "int") (pointer_declarator "**param_2" (* "*") (pointer_declarator "*param_2" (* "*") (identifier "param_2")))) (, ",") (parameter_declaration "int **param_3" (primitive_type "int") (pointer_declarator "**param_3" (* "*") (pointer_declarator "*param_3" (* "*") (identifier "param_3")))) (, ",") (parameter_declaration "int *param_4" (primitive_type "int") (pointer_declarator "*param_4" (* "*") (identifier "param_4"))) () ")"))))) (compound_statement "{\n  bool bVar1;\n  int **ppiVar2;\n  int **ppiVar3;\n  int iVar4;\n  byte **ppbVar5;\n  undefined4 uVar6;\n  int iVar7;\n  int **ppiVar8;\n  byte **ppbVar9;\n  int *piVar10;\n  code *pcVar11;\n  byte bVar12;\n  int **ppiVar13;\n  int **ppiVar14;\n  byte **ppbVar15;\n  byte *pbVar16;\n  int *piVar17;\n  undefined1 uVar18;\n  int iVar19;\n  int *piVar20;\n  uint uVar21;\n  uint uVar22;\n  int *piVar23;\n  int *piVar24;\n  undefined4 *puVar25;\n  int **unaff_s2;\n  int **unaff_s3;\n  int *piVar26;\n  code *unaff_s4;\n  int **unaff_s5;\n  int **unaff_s6;\n  undefined *puVar27;\n  undefined4 uVar28;\n  double dVar29;\n  undefined8 uVar30;\n  byte **ppbStack_180;\n  byte *pbStack_130;\n  int *piStack_12c;\n  code *pcStack_128;\n  undefined4 uStack_120;\n  undefined4 uStack_11c;\n  undefined4 uStack_118;\n  undefined4 uStack_114;\n  undefined4 uStack_110;\n  undefined4 uStack_10c;\n  undefined4 uStack_108;\n  undefined4 uStack_104;\n  undefined4 uStack_100;\n  undefined4 uStack_fc;\n  undefined1 uStack_f8;\n  int iStack_f4;\n  int **ppiStack_f0;\n  int *piStack_ec;\n  int iStack_e8;\n  int **ppiStack_e4;\n  int **ppiStack_e0;\n  undefined4 uStack_dc;\n  code *pcStack_c8;\n  int *piStack_bc;\n  int iStack_b8;\n  byte **ppbStack_b4;\n  int *piStack_b0;\n  int **ppiStack_ac;\n  int **ppiStack_a8;\n  int **ppiStack_a4;\n  code *pcStack_a0;\n  int **ppiStack_9c;\n  int **ppiStack_98;\n  undefined4 uStack_94;\n  undefined *puStack_80;\n  int **ppiStack_78;\n  byte **ppbStack_74;\n  byte **ppbStack_6c;\n  int **ppiStack_68;\n  int **ppiStack_64;\n  int **ppiStack_60;\n  code *pcStack_5c;\n  int *piStack_4c;\n  int *local_30;\n  int **local_2c;\n  \n  puVar27 = PTR___stack_chk_guard_0015ba2c;\n  local_30 = (int *)0x0;\n  local_2c = *(int ***)PTR___stack_chk_guard_0015ba2c;\n  ppiVar8 = param_3;\n  piVar17 = param_4;\n  ppiVar2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x71f4);\n  if (ppiVar2 == (int **)0x0) {\n    ppbVar5 = (byte **)&DAT_00000007;\n  }\n  else {\n    unaff_s5 = &local_30;\n    unaff_s4 = (code *)(*(code *)PTR_strlen_0015b9c4)(ppiVar2);\n    unaff_s2 = (int **)(PTR_LAB_0015b65c + 0x273c);\n    ppiVar3 = (int **)(*(code *)unaff_s2)(ppiVar2,unaff_s5);\n    ppiVar8 = ppiVar2;\n    if (ppiVar3 != (int **)0x0) {\n      ppiVar8 = ppiVar3;\n    }\n    unaff_s3 = (int **)(PTR_LAB_0015b65c + 0x1120);\n    *(code *)((int)ppiVar8 + (int)local_30) = (code)0x0;\n    (*(code *)unaff_s3)(ppiVar8);\n    iVar4 = (*(code *)PTR_strlen_0015b9c4)();\n    iVar4 = (*(code *)(PTR_LAB_0015b6c0 + -0x2c24))(param_1,ppiVar8,iVar4 + 1);\n    unaff_s6 = ppiVar2;\n    if ((iVar4 == 0) || (iVar4 = *(int *)(iVar4 + 8), iVar4 == 0)) {\n      ppbVar5 = (byte **)0x1;\n      param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478);\n      FUN_00092618(param_4);\n    }\n    else {\n      unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);\n      pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);\n      iVar19 = 0;\n      param_1 = (int **)0x0;\n      while ((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }\n      param_2 = param_1;\n      ppiVar8 = param_3;\n      ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);\n      if (ppbVar5 == (byte **)0x0) {\n        **param_3 = iVar4;\n      }\n      else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }\n      (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n  }\nLAB_00098e8c:\n  if (local_2c == *(int ***)puVar27) {\n    return ppbVar5;\n  }\n  pcVar11 = FUN_00098f2c;\n  ppiVar2 = local_2c;\n  puVar27 = PTR___stack_chk_fail_0015ba10;\n  (*(code *)PTR___stack_chk_fail_0015ba10)();\n  puStack_80 = puVar27 + 0xca684;\n  piVar20 = *(int **)(puVar27 + 0xc2b00);\n  ppbStack_74 = (byte **)*piVar20;\n  ppiVar3 = ppiVar2;\n  ppiVar13 = param_2;\n  ppiStack_ac = param_1;\n  ppiStack_a4 = unaff_s3;\n  ppbStack_6c = ppbVar5;\n  ppiStack_68 = param_1;\n  ppiStack_64 = unaff_s2;\n  ppiStack_60 = unaff_s3;\n  pcStack_5c = pcVar11;\n  piStack_4c = piVar17;\n  if (*ppiVar2 == (int *)0x0) {\n    ppiVar13 = &piStack_4c;\n    ppiStack_78 = ppiVar13;\n    ppiVar14 = (int **)sqlite3_vmprintf(ppiVar8);\n    if (ppiVar14 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *ppiVar2 = (int *)0x7;\n      ppiVar3 = (int **)*param_2;\n    }\n    else {\n      ppiVar3 = (int **)*param_2;\n      unaff_s2 = ppiVar14;\n      if (ppiVar3 != (int **)0x0) {\n        ppiVar8 = ppiVar14;\n        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);\n        ppiVar13 = ppiVar3;\n        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar3 = (int **)*param_2;\n      }\n    }\n    (**(code **)(puStack_80 + -0x7f90))();\n    *param_2 = (int *)unaff_s2;\n    ppiStack_ac = ppiVar2;\n    ppiStack_a4 = param_2;\n  }\n  if (ppbStack_74 == (byte **)*piVar20) {\n    return (byte **)*piVar20;\n  }\n  pcVar11 = *(code **)(puStack_80 + -0x7ba0);\n  uVar28 = 0x99034;\n  (*pcVar11)();\n  pcStack_c8 = pcVar11 + 0xca57c;\n  piVar24 = *(int **)(pcVar11 + 0xc29f8);\n  piStack_bc = (int *)0x0;\n  ppbStack_b4 = (byte **)*piVar24;\n  piStack_b0 = piVar20;\n  ppiStack_a8 = unaff_s2;\n  pcStack_a0 = unaff_s4;\n  ppiStack_9c = unaff_s5;\n  ppiStack_98 = unaff_s6;\n  uStack_94 = uVar28;\n  uVar28 = (**(code **)(pcVar11 + 0xc2694))();\n  iVar4 = (**(code **)(pcStack_c8 + -0x7f9c))(*ppiVar8);\n  iVar19 = (**(code **)(pcStack_c8 + -0x7fac))(*ppiVar8);\n  ppiVar2 = ppiVar3;\n  if (ppiVar13 == (int **)&SUB_00000002) {\n    uVar6 = (**(code **)(pcStack_c8 + -0x7ed0))(ppiVar3);\n    piVar17 = &iStack_b8;\n    iStack_b8 = 0;\n    (**(code **)(pcStack_c8 + -0x7d60))(uVar6,0x3ec,0xffffffff);\n    if (iStack_b8 == 0) {\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n    else {\n      iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1]);\n      if ((iVar4 != 0) && (iVar7 == 4)) {\n        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);\n        piStack_bc = (int *)*piStack_bc;\n        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);\n        if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n  }\n  else {\n    if (iVar4 == 0) {\nLAB_000990f4:\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n      if (piStack_bc != (int *)0x0) {\nLAB_000990fc:\n        piVar17 = (int *)0xffffffff;\n        ppiVar14 = &piStack_bc;\n        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);\n      if (iVar19 != 0) {\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }\n      piStack_bc = (int *)0x0;\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n    }\n    ppiVar8 = (int **)sqlite3_mprintf(iVar19 + -0x7478,iVar4);\n    ppiVar14 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar8,0xffffffff);\n    ppiVar2 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7f90))();\n  }\nLAB_00099118:\n  if (ppbStack_b4 == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }\n  pcVar11 = *(code **)(pcStack_c8 + -0x7ba0);\n  uVar28 = 0x992a0;\n  (*pcVar11)();\n  ppiStack_e4 = ppiVar3;\n  piStack_ec = piVar24;\n  iStack_e8 = iVar4;\n  piVar20 = &uStack_120;\n  pcStack_128 = pcVar11 + 0xca310;\n  uStack_dc = uVar28;\n  ppiStack_e0 = ppiVar13;\n  ppiStack_f0 = ppiVar8;\n  piVar26 = *(int **)(pcVar11 + 0xc278c);\n  piVar24 = *ppiVar14;\n  uStack_120 = 0;\n  uStack_11c = 0;\n  uStack_118 = 0;\n  uStack_114 = 0;\n  uStack_110 = 0;\n  uStack_10c = 0;\n  uStack_108 = 0;\n  uStack_104 = 0;\n  uStack_100 = 0;\n  uStack_fc = 0;\n  uStack_f8 = 0;\n  iStack_f4 = *piVar26;\n  pbVar16 = (byte *)((int)piVar24 * 2);\n  if ((int)piVar24 < 1) {\n    uVar22 = 0;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099480:\n    piVar20 = ppiVar2[0xc];\n    piVar23 = (int *)((int)piVar20 >> (uVar22 & 0x1f));\n    piVar10 = piVar23;\n    piVar24 = (int *)(((int)piVar20 << 1) << (~uVar22 & 0x1f) |\n                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f));\n    if ((uVar22 & 0x20) != 0) {\n      piVar10 = (int *)((int)piVar20 >> 0x1f);\n      piVar24 = piVar23;\n    }\n    piVar20 = piVar24;\n    dVar29 = (double)(**(code **)(pcStack_128 + -0x7f18))(piVar10);\n    ppbVar5 = (byte **)0x0;\n    ppiVar14[0xc] = piVar10;\n    ppiVar14[0xd] = piVar24;\n    *(double *)(ppiVar14 + 10) = dVar29 * *(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780);\n  }\n  else {\n    piVar10 = ppiVar14[1];\n    bVar1 = false;\n    piVar17 = piVar10;\n    do {\n      piVar23 = piVar17 + 1;\n      piVar17 = piVar17 + 3;\n      if (*(char *)piVar23 == '@') {\n        bVar1 = true;\n      }\n    } while (piVar10 + (int)piVar24 * 3 != piVar17);\n    piVar17 = (int *)0x0;\n    uVar21 = 0;\n    iVar4 = 0;\nLAB_000993bc:\n    piVar10 = (int *)((int)piVar10 + (int)piVar17);\n    if (!bVar1) {\n      if (*(char *)((int)piVar10 + 5) == '\0') goto LAB_0009939c;\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\n      if (iVar19 != 0) goto LAB_000993d8;\n      if (bVar12 != 2) goto LAB_00099394;\n      if (iVar4 == 0) {\n        iVar19 = 0;\n      }\n      else {\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }\n      piVar17 = (int *)0x1;\n      ppiVar14[5] = (int *)0x1;\n      piVar20 = *(int **)(pcVar11 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar20 + -0x1de2);\n      *(undefined4 *)((int)ppiVar14[4] + iVar19) = 1;\n      pbVar16 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1;\n      *(undefined8 *)(ppiVar14 + 10) = uVar30;\n      ppiVar14[0xd] = (int *)0x1;\n      ppiVar14[0xc] = (int *)0x0;\n      ppiVar14[0xe] = (int *)0x1;\n      ppbVar5 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar10 + 5) == '\0') {\nLAB_0009939c:\n      uVar22 = uVar21;\n      if ((int)piVar24 <= iVar4 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\nLAB_000993d8:\n      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar24 = ppiVar14[4];\n      uVar22 = uVar21 + 2;\n      *(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;\n      *(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';\n      piVar24[iVar4 * 2] = (int)uVar22 >> 1;\n      *(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;\n      piVar24 = *ppiVar14;\n      uVar21 = uVar22;\n      if ((int)piVar24 <= iVar4 + 1) {\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }\n    piVar17 = piVar17 + 3;\n    if ((int)uVar21 < 0x28) goto code_r0x000993b8;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099544:\n    pbVar16 = (byte *)(iVar4 + 1);\n    piVar24 = (int *)sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4);\n    ppiVar14[6] = piVar24;\n    if (piVar24 != (int *)0x0) {\n      uVar22 = (int)uVar21 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar5 = (byte **)&DAT_00000007;\n  }\nLAB_000994e0:\n  if (iStack_f4 == *piVar26) {\n    return ppbVar5;\n  }\n  pcVar11 = *(code **)(pcStack_128 + -0x7ba0);\n  iVar4 = iStack_f4;\n  (*pcVar11)();\n  ppbVar9 = &pbStack_130;\n  puVar25 = *(undefined4 **)(pcVar11 + 0xc2410);\n  ppbVar15 = (byte **)*puVar25;\n  ppbVar5 = ppbVar15;\n  pbStack_130 = pbVar16;\n  piStack_12c = piVar17;\n  if ((*(int *)(iVar4 + 0x28) != 0) || (99 < *(int *)(iVar4 + 0x30))) goto LAB_0009967c;\n  piVar24 = (int *)sqlite3_vmprintf();\n  if (piVar24 == (int *)0x0) {\nLAB_000996f0:\n    *(undefined4 *)(iVar4 + 0x28) = 7;\n  }\n  else {\n    ppbVar9 = *(byte ***)(iVar4 + 0x2c);\n    if (ppbVar9 == (byte **)0x0) {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);\n    }\n    piVar20 = (int *)(*(int *)(pcVar11 + 0xc1fe0) - 0x741c);\n    iVar19 = sqlite3_mprintf();\n    *(int *)(iVar4 + 0x2c) = iVar19;\n    piVar17 = piVar24;\n    if (iVar19 == 0) goto LAB_000996f0;\n  }\n  *(int *)(iVar4 + 0x30) = *(int *)(iVar4 + 0x30) + 1;\n  ppbVar5 = ppbVar9;\nLAB_0009967c:\n  ppbVar9 = (byte **)*puVar25;\n  if (ppbVar15 == ppbVar9) {\n    return ppbVar9;\n  }\n  pcVar11 = *(code **)(pcVar11 + 0xc23f4);\n  (*pcVar11)();\n  piVar24 = *(int **)(pcVar11 + 0xc231c);\n  ppbStack_180 = (byte **)0x0;\n  iVar4 = *piVar24;\n  ppbVar9 = (byte **)0x0;\n  if (ppbVar5 != (byte **)0x0) {\n    if (*(char *)ppbVar5 == '$') {\n      pbVar16 = (byte *)((int)ppbVar5 + 1);\n      ppbVar9 = (byte **)FUN_0008b18c();\n      ppbVar5 = ppbStack_180;\n    }\n    else {\n      iVar19 = *(int *)(pcVar11 + 0xc1eec);\n      *(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01';\n      ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414);\n      if (ppbVar9 == (byte **)0x0) {\n        (**(code **)(pcVar11 + 0xc2074))(piVar17);\n        ppbVar9 = (byte **)0x0;\n      }\n      else {\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }\n    }\n  }\n  if (iVar4 != *piVar24) {\n    pcVar11 = *(code **)(pcVar11 + 0xc2300);\n    (*pcVar11)();\n    ppbVar9 = (byte **)FUN_0008ad48();\n    if (ppbVar9 != (byte **)0x0) {\n      if (ppbVar5 == (byte **)&SUB_00000002) {\n        uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));\n        ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);\n      }\n      else {\n        ppbVar9 = (byte **)ppbVar9[2];\n      }\n      if (ppbVar9 != (byte **)0x0) {\n                    \n                    \n        ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n        return ppbVar5;\n      }\n    }\n    return ppbVar9;\n  }\n  return ppbVar9;\ncode_r0x000993b8:\n  piVar10 = ppiVar14[1];\n  iVar4 = iVar4 + 1;\n  goto LAB_000993bc;\n}" ({ "{") (declaration "bool bVar1;" (primitive_type "bool") (identifier "bVar1") (; ";")) (declaration "int **ppiVar2;" (primitive_type "int") (pointer_declarator "**ppiVar2" (* "*") (pointer_declarator "*ppiVar2" (* "*") (identifier "ppiVar2"))) (; ";")) (declaration "int **ppiVar3;" (primitive_type "int") (pointer_declarator "**ppiVar3" (* "*") (pointer_declarator "*ppiVar3" (* "*") (identifier "ppiVar3"))) (; ";")) (declaration "int iVar4;" (primitive_type "int") (identifier "iVar4") (; ";")) (declaration "byte **ppbVar5;" (type_identifier "byte") (pointer_declarator "**ppbVar5" (* "*") (pointer_declarator "*ppbVar5" (* "*") (identifier "ppbVar5"))) (; ";")) (declaration "undefined4 uVar6;" (type_identifier "undefined4") (identifier "uVar6") (; ";")) (declaration "int iVar7;" (primitive_type "int") (identifier "iVar7") (; ";")) (declaration "int **ppiVar8;" (primitive_type "int") (pointer_declarator "**ppiVar8" (* "*") (pointer_declarator "*ppiVar8" (* "*") (identifier "ppiVar8"))) (; ";")) (declaration "byte **ppbVar9;" (type_identifier "byte") (pointer_declarator "**ppbVar9" (* "*") (pointer_declarator "*ppbVar9" (* "*") (identifier "ppbVar9"))) (; ";")) (declaration "int *piVar10;" (primitive_type "int") (pointer_declarator "*piVar10" (* "*") (identifier "piVar10")) (; ";")) (declaration "code *pcVar11;" (type_identifier "code") (pointer_declarator "*pcVar11" (* "*") (identifier "pcVar11")) (; ";")) (declaration "byte bVar12;" (type_identifier "byte") (identifier "bVar12") (; ";")) (declaration "int **ppiVar13;" (primitive_type "int") (pointer_declarator "**ppiVar13" (* "*") (pointer_declarator "*ppiVar13" (* "*") (identifier "ppiVar13"))) (; ";")) (declaration "int **ppiVar14;" (primitive_type "int") (pointer_declarator "**ppiVar14" (* "*") (pointer_declarator "*ppiVar14" (* "*") (identifier "ppiVar14"))) (; ";")) (declaration "byte **ppbVar15;" (type_identifier "byte") (pointer_declarator "**ppbVar15" (* "*") (pointer_declarator "*ppbVar15" (* "*") (identifier "ppbVar15"))) (; ";")) (declaration "byte *pbVar16;" (type_identifier "byte") (pointer_declarator "*pbVar16" (* "*") (identifier "pbVar16")) (; ";")) (declaration "int *piVar17;" (primitive_type "int") (pointer_declarator "*piVar17" (* "*") (identifier "piVar17")) (; ";")) (declaration "undefined1 uVar18;" (type_identifier "undefined1") (identifier "uVar18") (; ";")) (declaration "int iVar19;" (primitive_type "int") (identifier "iVar19") (; ";")) (declaration "int *piVar20;" (primitive_type "int") (pointer_declarator "*piVar20" (* "*") (identifier "piVar20")) (; ";")) (declaration "uint uVar21;" (type_identifier "uint") (identifier "uVar21") (; ";")) (declaration "uint uVar22;" (type_identifier "uint") (identifier "uVar22") (; ";")) (declaration "int *piVar23;" (primitive_type "int") (pointer_declarator "*piVar23" (* "*") (identifier "piVar23")) (; ";")) (declaration "int *piVar24;" (primitive_type "int") (pointer_declarator "*piVar24" (* "*") (identifier "piVar24")) (; ";")) (declaration "undefined4 *puVar25;" (type_identifier "undefined4") (pointer_declarator "*puVar25" (* "*") (identifier "puVar25")) (; ";")) (declaration "int **unaff_s2;" (primitive_type "int") (pointer_declarator "**unaff_s2" (* "*") (pointer_declarator "*unaff_s2" (* "*") (identifier "unaff_s2"))) (; ";")) (declaration "int **unaff_s3;" (primitive_type "int") (pointer_declarator "**unaff_s3" (* "*") (pointer_declarator "*unaff_s3" (* "*") (identifier "unaff_s3"))) (; ";")) (declaration "int *piVar26;" (primitive_type "int") (pointer_declarator "*piVar26" (* "*") (identifier "piVar26")) (; ";")) (declaration "code *unaff_s4;" (type_identifier "code") (pointer_declarator "*unaff_s4" (* "*") (identifier "unaff_s4")) (; ";")) (declaration "int **unaff_s5;" (primitive_type "int") (pointer_declarator "**unaff_s5" (* "*") (pointer_declarator "*unaff_s5" (* "*") (identifier "unaff_s5"))) (; ";")) (declaration "int **unaff_s6;" (primitive_type "int") (pointer_declarator "**unaff_s6" (* "*") (pointer_declarator "*unaff_s6" (* "*") (identifier "unaff_s6"))) (; ";")) (declaration "undefined *puVar27;" (type_identifier "undefined") (pointer_declarator "*puVar27" (* "*") (identifier "puVar27")) (; ";")) (declaration "undefined4 uVar28;" (type_identifier "undefined4") (identifier "uVar28") (; ";")) (declaration "double dVar29;" (primitive_type "double") (identifier "dVar29") (; ";")) (declaration "undefined8 uVar30;" (type_identifier "undefined8") (identifier "uVar30") (; ";")) (declaration "byte **ppbStack_180;" (type_identifier "byte") (pointer_declarator "**ppbStack_180" (* "*") (pointer_declarator "*ppbStack_180" (* "*") (identifier "ppbStack_180"))) (; ";")) (declaration "byte *pbStack_130;" (type_identifier "byte") (pointer_declarator "*pbStack_130" (* "*") (identifier "pbStack_130")) (; ";")) (declaration "int *piStack_12c;" (primitive_type "int") (pointer_declarator "*piStack_12c" (* "*") (identifier "piStack_12c")) (; ";")) (declaration "code *pcStack_128;" (type_identifier "code") (pointer_declarator "*pcStack_128" (* "*") (identifier "pcStack_128")) (; ";")) (declaration "undefined4 uStack_120;" (type_identifier "undefined4") (identifier "uStack_120") (; ";")) (declaration "undefined4 uStack_11c;" (type_identifier "undefined4") (identifier "uStack_11c") (; ";")) (declaration "undefined4 uStack_118;" (type_identifier "undefined4") (identifier "uStack_118") (; ";")) (declaration "undefined4 uStack_114;" (type_identifier "undefined4") (identifier "uStack_114") (; ";")) (declaration "undefined4 uStack_110;" (type_identifier "undefined4") (identifier "uStack_110") (; ";")) (declaration "undefined4 uStack_10c;" (type_identifier "undefined4") (identifier "uStack_10c") (; ";")) (declaration "undefined4 uStack_108;" (type_identifier "undefined4") (identifier "uStack_108") (; ";")) (declaration "undefined4 uStack_104;" (type_identifier "undefined4") (identifier "uStack_104") (; ";")) (declaration "undefined4 uStack_100;" (type_identifier "undefined4") (identifier "uStack_100") (; ";")) (declaration "undefined4 uStack_fc;" (type_identifier "undefined4") (identifier "uStack_fc") (; ";")) (declaration "undefined1 uStack_f8;" (type_identifier "undefined1") (identifier "uStack_f8") (; ";")) (declaration "int iStack_f4;" (primitive_type "int") (identifier "iStack_f4") (; ";")) (declaration "int **ppiStack_f0;" (primitive_type "int") (pointer_declarator "**ppiStack_f0" (* "*") (pointer_declarator "*ppiStack_f0" (* "*") (identifier "ppiStack_f0"))) (; ";")) (declaration "int *piStack_ec;" (primitive_type "int") (pointer_declarator "*piStack_ec" (* "*") (identifier "piStack_ec")) (; ";")) (declaration "int iStack_e8;" (primitive_type "int") (identifier "iStack_e8") (; ";")) (declaration "int **ppiStack_e4;" (primitive_type "int") (pointer_declarator "**ppiStack_e4" (* "*") (pointer_declarator "*ppiStack_e4" (* "*") (identifier "ppiStack_e4"))) (; ";")) (declaration "int **ppiStack_e0;" (primitive_type "int") (pointer_declarator "**ppiStack_e0" (* "*") (pointer_declarator "*ppiStack_e0" (* "*") (identifier "ppiStack_e0"))) (; ";")) (declaration "undefined4 uStack_dc;" (type_identifier "undefined4") (identifier "uStack_dc") (; ";")) (declaration "code *pcStack_c8;" (type_identifier "code") (pointer_declarator "*pcStack_c8" (* "*") (identifier "pcStack_c8")) (; ";")) (declaration "int *piStack_bc;" (primitive_type "int") (pointer_declarator "*piStack_bc" (* "*") (identifier "piStack_bc")) (; ";")) (declaration "int iStack_b8;" (primitive_type "int") (identifier "iStack_b8") (; ";")) (declaration "byte **ppbStack_b4;" (type_identifier "byte") (pointer_declarator "**ppbStack_b4" (* "*") (pointer_declarator "*ppbStack_b4" (* "*") (identifier "ppbStack_b4"))) (; ";")) (declaration "int *piStack_b0;" (primitive_type "int") (pointer_declarator "*piStack_b0" (* "*") (identifier "piStack_b0")) (; ";")) (declaration "int **ppiStack_ac;" (primitive_type "int") (pointer_declarator "**ppiStack_ac" (* "*") (pointer_declarator "*ppiStack_ac" (* "*") (identifier "ppiStack_ac"))) (; ";")) (declaration "int **ppiStack_a8;" (primitive_type "int") (pointer_declarator "**ppiStack_a8" (* "*") (pointer_declarator "*ppiStack_a8" (* "*") (identifier "ppiStack_a8"))) (; ";")) (declaration "int **ppiStack_a4;" (primitive_type "int") (pointer_declarator "**ppiStack_a4" (* "*") (pointer_declarator "*ppiStack_a4" (* "*") (identifier "ppiStack_a4"))) (; ";")) (declaration "code *pcStack_a0;" (type_identifier "code") (pointer_declarator "*pcStack_a0" (* "*") (identifier "pcStack_a0")) (; ";")) (declaration "int **ppiStack_9c;" (primitive_type "int") (pointer_declarator "**ppiStack_9c" (* "*") (pointer_declarator "*ppiStack_9c" (* "*") (identifier "ppiStack_9c"))) (; ";")) (declaration "int **ppiStack_98;" (primitive_type "int") (pointer_declarator "**ppiStack_98" (* "*") (pointer_declarator "*ppiStack_98" (* "*") (identifier "ppiStack_98"))) (; ";")) (declaration "undefined4 uStack_94;" (type_identifier "undefined4") (identifier "uStack_94") (; ";")) (declaration "undefined *puStack_80;" (type_identifier "undefined") (pointer_declarator "*puStack_80" (* "*") (identifier "puStack_80")) (; ";")) (declaration "int **ppiStack_78;" (primitive_type "int") (pointer_declarator "**ppiStack_78" (* "*") (pointer_declarator "*ppiStack_78" (* "*") (identifier "ppiStack_78"))) (; ";")) (declaration "byte **ppbStack_74;" (type_identifier "byte") (pointer_declarator "**ppbStack_74" (* "*") (pointer_declarator "*ppbStack_74" (* "*") (identifier "ppbStack_74"))) (; ";")) (declaration "byte **ppbStack_6c;" (type_identifier "byte") (pointer_declarator "**ppbStack_6c" (* "*") (pointer_declarator "*ppbStack_6c" (* "*") (identifier "ppbStack_6c"))) (; ";")) (declaration "int **ppiStack_68;" (primitive_type "int") (pointer_declarator "**ppiStack_68" (* "*") (pointer_declarator "*ppiStack_68" (* "*") (identifier "ppiStack_68"))) (; ";")) (declaration "int **ppiStack_64;" (primitive_type "int") (pointer_declarator "**ppiStack_64" (* "*") (pointer_declarator "*ppiStack_64" (* "*") (identifier "ppiStack_64"))) (; ";")) (declaration "int **ppiStack_60;" (primitive_type "int") (pointer_declarator "**ppiStack_60" (* "*") (pointer_declarator "*ppiStack_60" (* "*") (identifier "ppiStack_60"))) (; ";")) (declaration "code *pcStack_5c;" (type_identifier "code") (pointer_declarator "*pcStack_5c" (* "*") (identifier "pcStack_5c")) (; ";")) (declaration "int *piStack_4c;" (primitive_type "int") (pointer_declarator "*piStack_4c" (* "*") (identifier "piStack_4c")) (; ";")) (declaration "int *local_30;" (primitive_type "int") (pointer_declarator "*local_30" (* "*") (identifier "local_30")) (; ";")) (declaration "int **local_2c;" (primitive_type "int") (pointer_declarator "**local_2c" (* "*") (pointer_declarator "*local_2c" (* "*") (identifier "local_2c"))) (; ";")) (expression_statement "puVar27 = PTR___stack_chk_guard_0015ba2c;" (assignment_expression "puVar27 = PTR___stack_chk_guard_0015ba2c" (identifier "puVar27") (= "=") (identifier "PTR___stack_chk_guard_0015ba2c")) (; ";")) (expression_statement "local_30 = (int *)0x0;" (assignment_expression "local_30 = (int *)0x0" (identifier "local_30") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_2c = *(int ***)PTR___stack_chk_guard_0015ba2c;" (assignment_expression "local_2c = *(int ***)PTR___stack_chk_guard_0015ba2c" (identifier "local_2c") (= "=") (pointer_expression "*(int ***)PTR___stack_chk_guard_0015ba2c" (* "*") (cast_expression "(int ***)PTR___stack_chk_guard_0015ba2c" (( "(") (type_descriptor "int ***" (primitive_type "int") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (identifier "PTR___stack_chk_guard_0015ba2c")))) (; ";")) (expression_statement "ppiVar8 = param_3;" (assignment_expression "ppiVar8 = param_3" (identifier "ppiVar8") (= "=") (identifier "param_3")) (; ";")) (expression_statement "piVar17 = param_4;" (assignment_expression "piVar17 = param_4" (identifier "piVar17") (= "=") (identifier "param_4")) (; ";")) (expression_statement "ppiVar2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x71f4);" (assignment_expression "ppiVar2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x71f4)" (identifier "ppiVar2") (= "=") (cast_expression "(int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x71f4)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x71f4)" (identifier "sqlite3_mprintf") (argument_list "(PTR_LAB_0015b5e8 + 0x71f4)" (( "(") (binary_expression "PTR_LAB_0015b5e8 + 0x71f4" (identifier "PTR_LAB_0015b5e8") (+ "+") (number_literal "0x71f4")) () ")"))))) (; ";")) (if_statement "if (ppiVar2 == (int **)0x0) {\n    ppbVar5 = (byte **)&DAT_00000007;\n  }\n  else {\n    unaff_s5 = &local_30;\n    unaff_s4 = (code *)(*(code *)PTR_strlen_0015b9c4)(ppiVar2);\n    unaff_s2 = (int **)(PTR_LAB_0015b65c + 0x273c);\n    ppiVar3 = (int **)(*(code *)unaff_s2)(ppiVar2,unaff_s5);\n    ppiVar8 = ppiVar2;\n    if (ppiVar3 != (int **)0x0) {\n      ppiVar8 = ppiVar3;\n    }\n    unaff_s3 = (int **)(PTR_LAB_0015b65c + 0x1120);\n    *(code *)((int)ppiVar8 + (int)local_30) = (code)0x0;\n    (*(code *)unaff_s3)(ppiVar8);\n    iVar4 = (*(code *)PTR_strlen_0015b9c4)();\n    iVar4 = (*(code *)(PTR_LAB_0015b6c0 + -0x2c24))(param_1,ppiVar8,iVar4 + 1);\n    unaff_s6 = ppiVar2;\n    if ((iVar4 == 0) || (iVar4 = *(int *)(iVar4 + 8), iVar4 == 0)) {\n      ppbVar5 = (byte **)0x1;\n      param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478);\n      FUN_00092618(param_4);\n    }\n    else {\n      unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);\n      pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);\n      iVar19 = 0;\n      param_1 = (int **)0x0;\n      while ((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }\n      param_2 = param_1;\n      ppiVar8 = param_3;\n      ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);\n      if (ppbVar5 == (byte **)0x0) {\n        **param_3 = iVar4;\n      }\n      else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }\n      (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n  }" (if "if") (parenthesized_expression "(ppiVar2 == (int **)0x0)" (( "(") (binary_expression "ppiVar2 == (int **)0x0" (identifier "ppiVar2") (== "==") (cast_expression "(int **)0x0" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    ppbVar5 = (byte **)&DAT_00000007;\n  }" ({ "{") (expression_statement "ppbVar5 = (byte **)&DAT_00000007;" (assignment_expression "ppbVar5 = (byte **)&DAT_00000007" (identifier "ppbVar5") (= "=") (cast_expression "(byte **)&DAT_00000007" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "&DAT_00000007" (& "&") (identifier "DAT_00000007")))) (; ";")) (} "}")) (else_clause "else {\n    unaff_s5 = &local_30;\n    unaff_s4 = (code *)(*(code *)PTR_strlen_0015b9c4)(ppiVar2);\n    unaff_s2 = (int **)(PTR_LAB_0015b65c + 0x273c);\n    ppiVar3 = (int **)(*(code *)unaff_s2)(ppiVar2,unaff_s5);\n    ppiVar8 = ppiVar2;\n    if (ppiVar3 != (int **)0x0) {\n      ppiVar8 = ppiVar3;\n    }\n    unaff_s3 = (int **)(PTR_LAB_0015b65c + 0x1120);\n    *(code *)((int)ppiVar8 + (int)local_30) = (code)0x0;\n    (*(code *)unaff_s3)(ppiVar8);\n    iVar4 = (*(code *)PTR_strlen_0015b9c4)();\n    iVar4 = (*(code *)(PTR_LAB_0015b6c0 + -0x2c24))(param_1,ppiVar8,iVar4 + 1);\n    unaff_s6 = ppiVar2;\n    if ((iVar4 == 0) || (iVar4 = *(int *)(iVar4 + 8), iVar4 == 0)) {\n      ppbVar5 = (byte **)0x1;\n      param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478);\n      FUN_00092618(param_4);\n    }\n    else {\n      unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);\n      pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);\n      iVar19 = 0;\n      param_1 = (int **)0x0;\n      while ((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }\n      param_2 = param_1;\n      ppiVar8 = param_3;\n      ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);\n      if (ppbVar5 == (byte **)0x0) {\n        **param_3 = iVar4;\n      }\n      else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }\n      (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n  }" (else "else") (compound_statement "{\n    unaff_s5 = &local_30;\n    unaff_s4 = (code *)(*(code *)PTR_strlen_0015b9c4)(ppiVar2);\n    unaff_s2 = (int **)(PTR_LAB_0015b65c + 0x273c);\n    ppiVar3 = (int **)(*(code *)unaff_s2)(ppiVar2,unaff_s5);\n    ppiVar8 = ppiVar2;\n    if (ppiVar3 != (int **)0x0) {\n      ppiVar8 = ppiVar3;\n    }\n    unaff_s3 = (int **)(PTR_LAB_0015b65c + 0x1120);\n    *(code *)((int)ppiVar8 + (int)local_30) = (code)0x0;\n    (*(code *)unaff_s3)(ppiVar8);\n    iVar4 = (*(code *)PTR_strlen_0015b9c4)();\n    iVar4 = (*(code *)(PTR_LAB_0015b6c0 + -0x2c24))(param_1,ppiVar8,iVar4 + 1);\n    unaff_s6 = ppiVar2;\n    if ((iVar4 == 0) || (iVar4 = *(int *)(iVar4 + 8), iVar4 == 0)) {\n      ppbVar5 = (byte **)0x1;\n      param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478);\n      FUN_00092618(param_4);\n    }\n    else {\n      unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);\n      pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);\n      iVar19 = 0;\n      param_1 = (int **)0x0;\n      while ((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }\n      param_2 = param_1;\n      ppiVar8 = param_3;\n      ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);\n      if (ppbVar5 == (byte **)0x0) {\n        **param_3 = iVar4;\n      }\n      else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }\n      (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n    }\n    (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n  }" ({ "{") (expression_statement "unaff_s5 = &local_30;" (assignment_expression "unaff_s5 = &local_30" (identifier "unaff_s5") (= "=") (pointer_expression "&local_30" (& "&") (identifier "local_30"))) (; ";")) (expression_statement "unaff_s4 = (code *)(*(code *)PTR_strlen_0015b9c4)(ppiVar2);" (assignment_expression "unaff_s4 = (code *)(*(code *)PTR_strlen_0015b9c4)(ppiVar2)" (identifier "unaff_s4") (= "=") (cast_expression "(code *)(*(code *)PTR_strlen_0015b9c4)(ppiVar2)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR_strlen_0015b9c4)(ppiVar2)" (parenthesized_expression "(*(code *)PTR_strlen_0015b9c4)" (( "(") (pointer_expression "*(code *)PTR_strlen_0015b9c4" (* "*") (cast_expression "(code *)PTR_strlen_0015b9c4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strlen_0015b9c4"))) () ")")) (argument_list "(ppiVar2)" (( "(") (identifier "ppiVar2") () ")"))))) (; ";")) (expression_statement "unaff_s2 = (int **)(PTR_LAB_0015b65c + 0x273c);" (assignment_expression "unaff_s2 = (int **)(PTR_LAB_0015b65c + 0x273c)" (identifier "unaff_s2") (= "=") (cast_expression "(int **)(PTR_LAB_0015b65c + 0x273c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(PTR_LAB_0015b65c + 0x273c)" (( "(") (binary_expression "PTR_LAB_0015b65c + 0x273c" (identifier "PTR_LAB_0015b65c") (+ "+") (number_literal "0x273c")) () ")")))) (; ";")) (expression_statement "ppiVar3 = (int **)(*(code *)unaff_s2)(ppiVar2,unaff_s5);" (assignment_expression "ppiVar3 = (int **)(*(code *)unaff_s2)(ppiVar2,unaff_s5)" (identifier "ppiVar3") (= "=") (cast_expression "(int **)(*(code *)unaff_s2)(ppiVar2,unaff_s5)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "(*(code *)unaff_s2)(ppiVar2,unaff_s5)" (parenthesized_expression "(*(code *)unaff_s2)" (( "(") (pointer_expression "*(code *)unaff_s2" (* "*") (cast_expression "(code *)unaff_s2" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "unaff_s2"))) () ")")) (argument_list "(ppiVar2,unaff_s5)" (( "(") (identifier "ppiVar2") (, ",") (identifier "unaff_s5") () ")"))))) (; ";")) (expression_statement "ppiVar8 = ppiVar2;" (assignment_expression "ppiVar8 = ppiVar2" (identifier "ppiVar8") (= "=") (identifier "ppiVar2")) (; ";")) (if_statement "if (ppiVar3 != (int **)0x0) {\n      ppiVar8 = ppiVar3;\n    }" (if "if") (parenthesized_expression "(ppiVar3 != (int **)0x0)" (( "(") (binary_expression "ppiVar3 != (int **)0x0" (identifier "ppiVar3") (!= "!=") (cast_expression "(int **)0x0" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      ppiVar8 = ppiVar3;\n    }" ({ "{") (expression_statement "ppiVar8 = ppiVar3;" (assignment_expression "ppiVar8 = ppiVar3" (identifier "ppiVar8") (= "=") (identifier "ppiVar3")) (; ";")) (} "}"))) (expression_statement "unaff_s3 = (int **)(PTR_LAB_0015b65c + 0x1120);" (assignment_expression "unaff_s3 = (int **)(PTR_LAB_0015b65c + 0x1120)" (identifier "unaff_s3") (= "=") (cast_expression "(int **)(PTR_LAB_0015b65c + 0x1120)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(PTR_LAB_0015b65c + 0x1120)" (( "(") (binary_expression "PTR_LAB_0015b65c + 0x1120" (identifier "PTR_LAB_0015b65c") (+ "+") (number_literal "0x1120")) () ")")))) (; ";")) (expression_statement "*(code *)((int)ppiVar8 + (int)local_30) = (code)0x0;" (assignment_expression "*(code *)((int)ppiVar8 + (int)local_30) = (code)0x0" (pointer_expression "*(code *)((int)ppiVar8 + (int)local_30)" (* "*") (cast_expression "(code *)((int)ppiVar8 + (int)local_30)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppiVar8 + (int)local_30)" (( "(") (binary_expression "(int)ppiVar8 + (int)local_30" (cast_expression "(int)ppiVar8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppiVar8")) (+ "+") (cast_expression "(int)local_30" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_30"))) () ")")))) (= "=") (cast_expression "(code)0x0" (( "(") (type_descriptor "code" (type_identifier "code")) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "(*(code *)unaff_s3)(ppiVar8);" (call_expression "(*(code *)unaff_s3)(ppiVar8)" (parenthesized_expression "(*(code *)unaff_s3)" (( "(") (pointer_expression "*(code *)unaff_s3" (* "*") (cast_expression "(code *)unaff_s3" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "unaff_s3"))) () ")")) (argument_list "(ppiVar8)" (( "(") (identifier "ppiVar8") () ")"))) (; ";")) (expression_statement "iVar4 = (*(code *)PTR_strlen_0015b9c4)();" (assignment_expression "iVar4 = (*(code *)PTR_strlen_0015b9c4)()" (identifier "iVar4") (= "=") (call_expression "(*(code *)PTR_strlen_0015b9c4)()" (parenthesized_expression "(*(code *)PTR_strlen_0015b9c4)" (( "(") (pointer_expression "*(code *)PTR_strlen_0015b9c4" (* "*") (cast_expression "(code *)PTR_strlen_0015b9c4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strlen_0015b9c4"))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar4 = (*(code *)(PTR_LAB_0015b6c0 + -0x2c24))(param_1,ppiVar8,iVar4 + 1);" (assignment_expression "iVar4 = (*(code *)(PTR_LAB_0015b6c0 + -0x2c24))(param_1,ppiVar8,iVar4 + 1)" (identifier "iVar4") (= "=") (call_expression "(*(code *)(PTR_LAB_0015b6c0 + -0x2c24))(param_1,ppiVar8,iVar4 + 1)" (parenthesized_expression "(*(code *)(PTR_LAB_0015b6c0 + -0x2c24))" (( "(") (pointer_expression "*(code *)(PTR_LAB_0015b6c0 + -0x2c24)" (* "*") (cast_expression "(code *)(PTR_LAB_0015b6c0 + -0x2c24)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0015b6c0 + -0x2c24)" (( "(") (binary_expression "PTR_LAB_0015b6c0 + -0x2c24" (identifier "PTR_LAB_0015b6c0") (+ "+") (number_literal "-0x2c24")) () ")")))) () ")")) (argument_list "(param_1,ppiVar8,iVar4 + 1)" (( "(") (identifier "param_1") (, ",") (identifier "ppiVar8") (, ",") (binary_expression "iVar4 + 1" (identifier "iVar4") (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "unaff_s6 = ppiVar2;" (assignment_expression "unaff_s6 = ppiVar2" (identifier "unaff_s6") (= "=") (identifier "ppiVar2")) (; ";")) (if_statement "if ((iVar4 == 0) || (iVar4 = *(int *)(iVar4 + 8), iVar4 == 0)) {\n      ppbVar5 = (byte **)0x1;\n      param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478);\n      FUN_00092618(param_4);\n    }\n    else {\n      unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);\n      pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);\n      iVar19 = 0;\n      param_1 = (int **)0x0;\n      while ((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }\n      param_2 = param_1;\n      ppiVar8 = param_3;\n      ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);\n      if (ppbVar5 == (byte **)0x0) {\n        **param_3 = iVar4;\n      }\n      else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }\n      (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n    }" (if "if") (parenthesized_expression "((iVar4 == 0) || (iVar4 = *(int *)(iVar4 + 8), iVar4 == 0))" (( "(") (binary_expression "(iVar4 == 0) || (iVar4 = *(int *)(iVar4 + 8), iVar4 == 0)" (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(iVar4 = *(int *)(iVar4 + 8), iVar4 == 0)" (( "(") (comma_expression "iVar4 = *(int *)(iVar4 + 8), iVar4 == 0" (assignment_expression "iVar4 = *(int *)(iVar4 + 8)" (identifier "iVar4") (= "=") (pointer_expression "*(int *)(iVar4 + 8)" (* "*") (cast_expression "(int *)(iVar4 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 8)" (( "(") (binary_expression "iVar4 + 8" (identifier "iVar4") (+ "+") (number_literal "8")) () ")"))))) (, ",") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n      ppbVar5 = (byte **)0x1;\n      param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478);\n      FUN_00092618(param_4);\n    }" ({ "{") (expression_statement "ppbVar5 = (byte **)0x1;" (assignment_expression "ppbVar5 = (byte **)0x1" (identifier "ppbVar5") (= "=") (cast_expression "(byte **)0x1" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478);" (assignment_expression "param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478)" (identifier "param_2") (= "=") (cast_expression "(int **)(PTR_UINT_0015b5fc + -0x7478)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(PTR_UINT_0015b5fc + -0x7478)" (( "(") (binary_expression "PTR_UINT_0015b5fc + -0x7478" (identifier "PTR_UINT_0015b5fc") (+ "+") (number_literal "-0x7478")) () ")")))) (; ";")) (expression_statement "FUN_00092618(param_4);" (call_expression "FUN_00092618(param_4)" (identifier "FUN_00092618") (argument_list "(param_4)" (( "(") (identifier "param_4") () ")"))) (; ";")) (} "}")) (else_clause "else {\n      unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);\n      pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);\n      iVar19 = 0;\n      param_1 = (int **)0x0;\n      while ((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }\n      param_2 = param_1;\n      ppiVar8 = param_3;\n      ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);\n      if (ppbVar5 == (byte **)0x0) {\n        **param_3 = iVar4;\n      }\n      else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }\n      (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n    }" (else "else") (compound_statement "{\n      unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);\n      pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);\n      iVar19 = 0;\n      param_1 = (int **)0x0;\n      while ((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }\n      param_2 = param_1;\n      ppiVar8 = param_3;\n      ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);\n      if (ppbVar5 == (byte **)0x0) {\n        **param_3 = iVar4;\n      }\n      else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }\n      (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n    }" ({ "{") (expression_statement "unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);" (assignment_expression "unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4)" (identifier "unaff_s4") (= "=") (cast_expression "(code *)((int)ppiVar2 + (int)unaff_s4)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppiVar2 + (int)unaff_s4)" (( "(") (binary_expression "(int)ppiVar2 + (int)unaff_s4" (cast_expression "(int)ppiVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppiVar2")) (+ "+") (cast_expression "(int)unaff_s4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s4"))) () ")")))) (; ";")) (expression_statement "pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);" (assignment_expression "pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1)" (identifier "pcVar11") (= "=") (cast_expression "(code *)((int)ppiVar8 + (int)local_30 + 1)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppiVar8 + (int)local_30 + 1)" (( "(") (binary_expression "(int)ppiVar8 + (int)local_30 + 1" (binary_expression "(int)ppiVar8 + (int)local_30" (cast_expression "(int)ppiVar8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppiVar8")) (+ "+") (cast_expression "(int)local_30" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_30"))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" (identifier "iVar19") (= "=") (number_literal "0")) (; ";")) (expression_statement "param_1 = (int **)0x0;" (assignment_expression "param_1 = (int **)0x0" (identifier "param_1") (= "=") (cast_expression "(int **)0x0" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (; ";")) (while_statement "while ((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }" (while "while") (parenthesized_expression "((pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0)))" (( "(") (parenthesized_expression "(pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))" (( "(") (binary_expression "pcVar11 < unaff_s4 &&\n             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0)" (binary_expression "pcVar11 < unaff_s4" (identifier "pcVar11") (< "<") (identifier "unaff_s4")) (&& "&&") (parenthesized_expression "(param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0)" (( "(") (comma_expression "param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0" (assignment_expression "param_2 = unaff_s5" (identifier "param_2") (= "=") (identifier "unaff_s5")) (, ",") (comma_expression "piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0" (assignment_expression "piVar20 = (int *)(*(code *)unaff_s2)()" (identifier "piVar20") (= "=") (cast_expression "(int *)(*(code *)unaff_s2)()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)unaff_s2)()" (parenthesized_expression "(*(code *)unaff_s2)" (( "(") (pointer_expression "*(code *)unaff_s2" (* "*") (cast_expression "(code *)unaff_s2" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "unaff_s2"))) () ")")) (argument_list "()" (( "(") () ")"))))) (, ",") (binary_expression "piVar20 != (int *)0x0" (identifier "piVar20") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))))) () ")"))) () ")")) () ")")) (compound_statement "{\n        iVar19 = iVar19 + 1;\n        ppiVar8 = (int **)0x0;\n        piVar17 = (int *)(iVar19 * 4);\n        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);\n        if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }\n        (ppiVar3 + iVar19)[-1] = piVar20;\n        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;\n        (*(code *)unaff_s3)(piVar20);\n        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);\n        param_1 = ppiVar3;\n      }" ({ "{") (expression_statement "iVar19 = iVar19 + 1;" (assignment_expression "iVar19 = iVar19 + 1" (identifier "iVar19") (= "=") (binary_expression "iVar19 + 1" (identifier "iVar19") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "ppiVar8 = (int **)0x0;" (assignment_expression "ppiVar8 = (int **)0x0" (identifier "ppiVar8") (= "=") (cast_expression "(int **)0x0" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "piVar17 = (int *)(iVar19 * 4);" (assignment_expression "piVar17 = (int *)(iVar19 * 4)" (identifier "piVar17") (= "=") (cast_expression "(int *)(iVar19 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar19 * 4)" (( "(") (binary_expression "iVar19 * 4" (identifier "iVar19") (* "*") (number_literal "4")) () ")")))) (; ";")) (expression_statement "ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);" (assignment_expression "ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1)" (identifier "ppiVar3") (= "=") (cast_expression "(int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1)" (parenthesized_expression "(*(code *)PTR_sqlite3_realloc64_0015b764)" (( "(") (pointer_expression "*(code *)PTR_sqlite3_realloc64_0015b764" (* "*") (cast_expression "(code *)PTR_sqlite3_realloc64_0015b764" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_sqlite3_realloc64_0015b764"))) () ")")) (argument_list "(param_1)" (( "(") (identifier "param_1") () ")"))))) (; ";")) (if_statement "if (ppiVar3 == (int **)0x0) {\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }" (if "if") (parenthesized_expression "(ppiVar3 == (int **)0x0)" (( "(") (binary_expression "ppiVar3 == (int **)0x0" (identifier "ppiVar3") (== "==") (cast_expression "(int **)0x0" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          ppbVar5 = (byte **)&DAT_00000007;\n          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);\n          (*(code *)PTR_sqlite3_free_0015b620)(param_1);\n          goto LAB_00098e8c;\n        }" ({ "{") (expression_statement "ppbVar5 = (byte **)&DAT_00000007;" (assignment_expression "ppbVar5 = (byte **)&DAT_00000007" (identifier "ppbVar5") (= "=") (cast_expression "(byte **)&DAT_00000007" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "&DAT_00000007" (& "&") (identifier "DAT_00000007")))) (; ";")) (expression_statement "(*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);" (call_expression "(*(code *)PTR_sqlite3_free_0015b620)(ppiVar2)" (parenthesized_expression "(*(code *)PTR_sqlite3_free_0015b620)" (( "(") (pointer_expression "*(code *)PTR_sqlite3_free_0015b620" (* "*") (cast_expression "(code *)PTR_sqlite3_free_0015b620" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_sqlite3_free_0015b620"))) () ")")) (argument_list "(ppiVar2)" (( "(") (identifier "ppiVar2") () ")"))) (; ";")) (expression_statement "(*(code *)PTR_sqlite3_free_0015b620)(param_1);" (call_expression "(*(code *)PTR_sqlite3_free_0015b620)(param_1)" (parenthesized_expression "(*(code *)PTR_sqlite3_free_0015b620)" (( "(") (pointer_expression "*(code *)PTR_sqlite3_free_0015b620" (* "*") (cast_expression "(code *)PTR_sqlite3_free_0015b620" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_sqlite3_free_0015b620"))) () ")")) (argument_list "(param_1)" (( "(") (identifier "param_1") () ")"))) (; ";")) (goto_statement "goto LAB_00098e8c;" (goto "goto") (statement_identifier "LAB_00098e8c") (; ";")) (} "}"))) (expression_statement "(ppiVar3 + iVar19)[-1] = piVar20;" (assignment_expression "(ppiVar3 + iVar19)[-1] = piVar20" (subscript_expression "(ppiVar3 + iVar19)[-1]" (parenthesized_expression "(ppiVar3 + iVar19)" (( "(") (binary_expression "ppiVar3 + iVar19" (identifier "ppiVar3") (+ "+") (identifier "iVar19")) () ")")) ([ "[") (number_literal "-1") (] "]")) (= "=") (identifier "piVar20")) (; ";")) (expression_statement "*(undefined1 *)((int)piVar20 + (int)local_30) = 0;" (assignment_expression "*(undefined1 *)((int)piVar20 + (int)local_30) = 0" (pointer_expression "*(undefined1 *)((int)piVar20 + (int)local_30)" (* "*") (cast_expression "(undefined1 *)((int)piVar20 + (int)local_30)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar20 + (int)local_30)" (( "(") (binary_expression "(int)piVar20 + (int)local_30" (cast_expression "(int)piVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar20")) (+ "+") (cast_expression "(int)local_30" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_30"))) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "(*(code *)unaff_s3)(piVar20);" (call_expression "(*(code *)unaff_s3)(piVar20)" (parenthesized_expression "(*(code *)unaff_s3)" (( "(") (pointer_expression "*(code *)unaff_s3" (* "*") (cast_expression "(code *)unaff_s3" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "unaff_s3"))) () ")")) (argument_list "(piVar20)" (( "(") (identifier "piVar20") () ")"))) (; ";")) (expression_statement "pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);" (assignment_expression "pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1)" (identifier "pcVar11") (= "=") (cast_expression "(code *)((int)local_30 + (int)piVar20 + 1)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_30 + (int)piVar20 + 1)" (( "(") (binary_expression "(int)local_30 + (int)piVar20 + 1" (binary_expression "(int)local_30 + (int)piVar20" (cast_expression "(int)local_30" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_30")) (+ "+") (cast_expression "(int)piVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar20"))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "param_1 = ppiVar3;" (assignment_expression "param_1 = ppiVar3" (identifier "param_1") (= "=") (identifier "ppiVar3")) (; ";")) (} "}"))) (expression_statement "param_2 = param_1;" (assignment_expression "param_2 = param_1" (identifier "param_2") (= "=") (identifier "param_1")) (; ";")) (expression_statement "ppiVar8 = param_3;" (assignment_expression "ppiVar8 = param_3" (identifier "ppiVar8") (= "=") (identifier "param_3")) (; ";")) (expression_statement "ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);" (assignment_expression "ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19)" (identifier "ppbVar5") (= "=") (cast_expression "(byte **)(**(code **)(iVar4 + 4))(iVar19)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "(**(code **)(iVar4 + 4))(iVar19)" (parenthesized_expression "(**(code **)(iVar4 + 4))" (( "(") (pointer_expression "**(code **)(iVar4 + 4)" (* "*") (pointer_expression "*(code **)(iVar4 + 4)" (* "*") (cast_expression "(code **)(iVar4 + 4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar4 + 4)" (( "(") (binary_expression "iVar4 + 4" (identifier "iVar4") (+ "+") (number_literal "4")) () ")"))))) () ")")) (argument_list "(iVar19)" (( "(") (identifier "iVar19") () ")"))))) (; ";")) (if_statement "if (ppbVar5 == (byte **)0x0) {\n        **param_3 = iVar4;\n      }\n      else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }" (if "if") (parenthesized_expression "(ppbVar5 == (byte **)0x0)" (( "(") (binary_expression "ppbVar5 == (byte **)0x0" (identifier "ppbVar5") (== "==") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        **param_3 = iVar4;\n      }" ({ "{") (expression_statement "**param_3 = iVar4;" (assignment_expression "**param_3 = iVar4" (pointer_expression "**param_3" (* "*") (pointer_expression "*param_3" (* "*") (identifier "param_3"))) (= "=") (identifier "iVar4")) (; ";")) (} "}")) (else_clause "else {\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }" (else "else") (compound_statement "{\n        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);\n        FUN_00092618(param_4);\n      }" ({ "{") (expression_statement "param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);" (assignment_expression "param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460)" (identifier "param_2") (= "=") (cast_expression "(int **)(PTR_UINT_0015b5fc + -0x7460)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(PTR_UINT_0015b5fc + -0x7460)" (( "(") (binary_expression "PTR_UINT_0015b5fc + -0x7460" (identifier "PTR_UINT_0015b5fc") (+ "+") (number_literal "-0x7460")) () ")")))) (; ";")) (expression_statement "FUN_00092618(param_4);" (call_expression "FUN_00092618(param_4)" (identifier "FUN_00092618") (argument_list "(param_4)" (( "(") (identifier "param_4") () ")"))) (; ";")) (} "}")))) (expression_statement "(*(code *)PTR_sqlite3_free_0015b620)(param_1);" (call_expression "(*(code *)PTR_sqlite3_free_0015b620)(param_1)" (parenthesized_expression "(*(code *)PTR_sqlite3_free_0015b620)" (( "(") (pointer_expression "*(code *)PTR_sqlite3_free_0015b620" (* "*") (cast_expression "(code *)PTR_sqlite3_free_0015b620" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_sqlite3_free_0015b620"))) () ")")) (argument_list "(param_1)" (( "(") (identifier "param_1") () ")"))) (; ";")) (} "}")))) (expression_statement "(*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);" (call_expression "(*(code *)PTR_sqlite3_free_0015b620)(ppiVar2)" (parenthesized_expression "(*(code *)PTR_sqlite3_free_0015b620)" (( "(") (pointer_expression "*(code *)PTR_sqlite3_free_0015b620" (* "*") (cast_expression "(code *)PTR_sqlite3_free_0015b620" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_sqlite3_free_0015b620"))) () ")")) (argument_list "(ppiVar2)" (( "(") (identifier "ppiVar2") () ")"))) (; ";")) (} "}")))) (labeled_statement "LAB_00098e8c:\n  if (local_2c == *(int ***)puVar27) {\n    return ppbVar5;\n  }" (statement_identifier "LAB_00098e8c") (: ":") (if_statement "if (local_2c == *(int ***)puVar27) {\n    return ppbVar5;\n  }" (if "if") (parenthesized_expression "(local_2c == *(int ***)puVar27)" (( "(") (binary_expression "local_2c == *(int ***)puVar27" (identifier "local_2c") (== "==") (pointer_expression "*(int ***)puVar27" (* "*") (cast_expression "(int ***)puVar27" (( "(") (type_descriptor "int ***" (primitive_type "int") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (identifier "puVar27")))) () ")")) (compound_statement "{\n    return ppbVar5;\n  }" ({ "{") (return_statement "return ppbVar5;" (return "return") (identifier "ppbVar5") (; ";")) (} "}")))) (expression_statement "pcVar11 = FUN_00098f2c;" (assignment_expression "pcVar11 = FUN_00098f2c" (identifier "pcVar11") (= "=") (identifier "FUN_00098f2c")) (; ";")) (expression_statement "ppiVar2 = local_2c;" (assignment_expression "ppiVar2 = local_2c" (identifier "ppiVar2") (= "=") (identifier "local_2c")) (; ";")) (expression_statement "puVar27 = PTR___stack_chk_fail_0015ba10;" (assignment_expression "puVar27 = PTR___stack_chk_fail_0015ba10" (identifier "puVar27") (= "=") (identifier "PTR___stack_chk_fail_0015ba10")) (; ";")) (expression_statement "(*(code *)PTR___stack_chk_fail_0015ba10)();" (call_expression "(*(code *)PTR___stack_chk_fail_0015ba10)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0015ba10)" (( "(") (pointer_expression "*(code *)PTR___stack_chk_fail_0015ba10" (* "*") (cast_expression "(code *)PTR___stack_chk_fail_0015ba10" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_fail_0015ba10"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puStack_80 = puVar27 + 0xca684;" (assignment_expression "puStack_80 = puVar27 + 0xca684" (identifier "puStack_80") (= "=") (binary_expression "puVar27 + 0xca684" (identifier "puVar27") (+ "+") (number_literal "0xca684"))) (; ";")) (expression_statement "piVar20 = *(int **)(puVar27 + 0xc2b00);" (assignment_expression "piVar20 = *(int **)(puVar27 + 0xc2b00)" (identifier "piVar20") (= "=") (pointer_expression "*(int **)(puVar27 + 0xc2b00)" (* "*") (cast_expression "(int **)(puVar27 + 0xc2b00)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar27 + 0xc2b00)" (( "(") (binary_expression "puVar27 + 0xc2b00" (identifier "puVar27") (+ "+") (number_literal "0xc2b00")) () ")"))))) (; ";")) (expression_statement "ppbStack_74 = (byte **)*piVar20;" (assignment_expression "ppbStack_74 = (byte **)*piVar20" (identifier "ppbStack_74") (= "=") (cast_expression "(byte **)*piVar20" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "*piVar20" (* "*") (identifier "piVar20")))) (; ";")) (expression_statement "ppiVar3 = ppiVar2;" (assignment_expression "ppiVar3 = ppiVar2" (identifier "ppiVar3") (= "=") (identifier "ppiVar2")) (; ";")) (expression_statement "ppiVar13 = param_2;" (assignment_expression "ppiVar13 = param_2" (identifier "ppiVar13") (= "=") (identifier "param_2")) (; ";")) (expression_statement "ppiStack_ac = param_1;" (assignment_expression "ppiStack_ac = param_1" (identifier "ppiStack_ac") (= "=") (identifier "param_1")) (; ";")) (expression_statement "ppiStack_a4 = unaff_s3;" (assignment_expression "ppiStack_a4 = unaff_s3" (identifier "ppiStack_a4") (= "=") (identifier "unaff_s3")) (; ";")) (expression_statement "ppbStack_6c = ppbVar5;" (assignment_expression "ppbStack_6c = ppbVar5" (identifier "ppbStack_6c") (= "=") (identifier "ppbVar5")) (; ";")) (expression_statement "ppiStack_68 = param_1;" (assignment_expression "ppiStack_68 = param_1" (identifier "ppiStack_68") (= "=") (identifier "param_1")) (; ";")) (expression_statement "ppiStack_64 = unaff_s2;" (assignment_expression "ppiStack_64 = unaff_s2" (identifier "ppiStack_64") (= "=") (identifier "unaff_s2")) (; ";")) (expression_statement "ppiStack_60 = unaff_s3;" (assignment_expression "ppiStack_60 = unaff_s3" (identifier "ppiStack_60") (= "=") (identifier "unaff_s3")) (; ";")) (expression_statement "pcStack_5c = pcVar11;" (assignment_expression "pcStack_5c = pcVar11" (identifier "pcStack_5c") (= "=") (identifier "pcVar11")) (; ";")) (expression_statement "piStack_4c = piVar17;" (assignment_expression "piStack_4c = piVar17" (identifier "piStack_4c") (= "=") (identifier "piVar17")) (; ";")) (if_statement "if (*ppiVar2 == (int *)0x0) {\n    ppiVar13 = &piStack_4c;\n    ppiStack_78 = ppiVar13;\n    ppiVar14 = (int **)sqlite3_vmprintf(ppiVar8);\n    if (ppiVar14 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *ppiVar2 = (int *)0x7;\n      ppiVar3 = (int **)*param_2;\n    }\n    else {\n      ppiVar3 = (int **)*param_2;\n      unaff_s2 = ppiVar14;\n      if (ppiVar3 != (int **)0x0) {\n        ppiVar8 = ppiVar14;\n        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);\n        ppiVar13 = ppiVar3;\n        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar3 = (int **)*param_2;\n      }\n    }\n    (**(code **)(puStack_80 + -0x7f90))();\n    *param_2 = (int *)unaff_s2;\n    ppiStack_ac = ppiVar2;\n    ppiStack_a4 = param_2;\n  }" (if "if") (parenthesized_expression "(*ppiVar2 == (int *)0x0)" (( "(") (binary_expression "*ppiVar2 == (int *)0x0" (pointer_expression "*ppiVar2" (* "*") (identifier "ppiVar2")) (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    ppiVar13 = &piStack_4c;\n    ppiStack_78 = ppiVar13;\n    ppiVar14 = (int **)sqlite3_vmprintf(ppiVar8);\n    if (ppiVar14 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *ppiVar2 = (int *)0x7;\n      ppiVar3 = (int **)*param_2;\n    }\n    else {\n      ppiVar3 = (int **)*param_2;\n      unaff_s2 = ppiVar14;\n      if (ppiVar3 != (int **)0x0) {\n        ppiVar8 = ppiVar14;\n        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);\n        ppiVar13 = ppiVar3;\n        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar3 = (int **)*param_2;\n      }\n    }\n    (**(code **)(puStack_80 + -0x7f90))();\n    *param_2 = (int *)unaff_s2;\n    ppiStack_ac = ppiVar2;\n    ppiStack_a4 = param_2;\n  }" ({ "{") (expression_statement "ppiVar13 = &piStack_4c;" (assignment_expression "ppiVar13 = &piStack_4c" (identifier "ppiVar13") (= "=") (pointer_expression "&piStack_4c" (& "&") (identifier "piStack_4c"))) (; ";")) (expression_statement "ppiStack_78 = ppiVar13;" (assignment_expression "ppiStack_78 = ppiVar13" (identifier "ppiStack_78") (= "=") (identifier "ppiVar13")) (; ";")) (expression_statement "ppiVar14 = (int **)sqlite3_vmprintf(ppiVar8);" (assignment_expression "ppiVar14 = (int **)sqlite3_vmprintf(ppiVar8)" (identifier "ppiVar14") (= "=") (cast_expression "(int **)sqlite3_vmprintf(ppiVar8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "sqlite3_vmprintf(ppiVar8)" (identifier "sqlite3_vmprintf") (argument_list "(ppiVar8)" (( "(") (identifier "ppiVar8") () ")"))))) (; ";")) (if_statement "if (ppiVar14 == (int **)0x0) {\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *ppiVar2 = (int *)0x7;\n      ppiVar3 = (int **)*param_2;\n    }\n    else {\n      ppiVar3 = (int **)*param_2;\n      unaff_s2 = ppiVar14;\n      if (ppiVar3 != (int **)0x0) {\n        ppiVar8 = ppiVar14;\n        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);\n        ppiVar13 = ppiVar3;\n        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar3 = (int **)*param_2;\n      }\n    }" (if "if") (parenthesized_expression "(ppiVar14 == (int **)0x0)" (( "(") (binary_expression "ppiVar14 == (int **)0x0" (identifier "ppiVar14") (== "==") (cast_expression "(int **)0x0" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_00099014:\n      unaff_s2 = (int **)0x0;\n      *ppiVar2 = (int *)0x7;\n      ppiVar3 = (int **)*param_2;\n    }" ({ "{") (labeled_statement "LAB_00099014:\n      unaff_s2 = (int **)0x0;" (statement_identifier "LAB_00099014") (: ":") (expression_statement "unaff_s2 = (int **)0x0;" (assignment_expression "unaff_s2 = (int **)0x0" (identifier "unaff_s2") (= "=") (cast_expression "(int **)0x0" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (; ";"))) (expression_statement "*ppiVar2 = (int *)0x7;" (assignment_expression "*ppiVar2 = (int *)0x7" (pointer_expression "*ppiVar2" (* "*") (identifier "ppiVar2")) (= "=") (cast_expression "(int *)0x7" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x7"))) (; ";")) (expression_statement "ppiVar3 = (int **)*param_2;" (assignment_expression "ppiVar3 = (int **)*param_2" (identifier "ppiVar3") (= "=") (cast_expression "(int **)*param_2" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "*param_2" (* "*") (identifier "param_2")))) (; ";")) (} "}")) (else_clause "else {\n      ppiVar3 = (int **)*param_2;\n      unaff_s2 = ppiVar14;\n      if (ppiVar3 != (int **)0x0) {\n        ppiVar8 = ppiVar14;\n        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);\n        ppiVar13 = ppiVar3;\n        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar3 = (int **)*param_2;\n      }\n    }" (else "else") (compound_statement "{\n      ppiVar3 = (int **)*param_2;\n      unaff_s2 = ppiVar14;\n      if (ppiVar3 != (int **)0x0) {\n        ppiVar8 = ppiVar14;\n        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);\n        ppiVar13 = ppiVar3;\n        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar3 = (int **)*param_2;\n      }\n    }" ({ "{") (expression_statement "ppiVar3 = (int **)*param_2;" (assignment_expression "ppiVar3 = (int **)*param_2" (identifier "ppiVar3") (= "=") (cast_expression "(int **)*param_2" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "*param_2" (* "*") (identifier "param_2")))) (; ";")) (expression_statement "unaff_s2 = ppiVar14;" (assignment_expression "unaff_s2 = ppiVar14" (identifier "unaff_s2") (= "=") (identifier "ppiVar14")) (; ";")) (if_statement "if (ppiVar3 != (int **)0x0) {\n        ppiVar8 = ppiVar14;\n        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);\n        ppiVar13 = ppiVar3;\n        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar3 = (int **)*param_2;\n      }" (if "if") (parenthesized_expression "(ppiVar3 != (int **)0x0)" (( "(") (binary_expression "ppiVar3 != (int **)0x0" (identifier "ppiVar3") (!= "!=") (cast_expression "(int **)0x0" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        ppiVar8 = ppiVar14;\n        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);\n        ppiVar13 = ppiVar3;\n        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);\n        if (unaff_s2 == (int **)0x0) goto LAB_00099014;\n        ppiVar3 = (int **)*param_2;\n      }" ({ "{") (expression_statement "ppiVar8 = ppiVar14;" (assignment_expression "ppiVar8 = ppiVar14" (identifier "ppiVar8") (= "=") (identifier "ppiVar14")) (; ";")) (expression_statement "unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);" (assignment_expression "unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624)" (identifier "unaff_s2") (= "=") (cast_expression "(int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624)" (identifier "sqlite3_mprintf") (argument_list "(*(int *)(puStack_80 + -0x7fc8) + 0x5624)" (( "(") (binary_expression "*(int *)(puStack_80 + -0x7fc8) + 0x5624" (pointer_expression "*(int *)(puStack_80 + -0x7fc8)" (* "*") (cast_expression "(int *)(puStack_80 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_80 + -0x7fc8)" (( "(") (binary_expression "puStack_80 + -0x7fc8" (identifier "puStack_80") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "0x5624")) () ")"))))) (; ";")) (expression_statement "ppiVar13 = ppiVar3;" (assignment_expression "ppiVar13 = ppiVar3" (identifier "ppiVar13") (= "=") (identifier "ppiVar3")) (; ";")) (expression_statement "(**(code **)(puStack_80 + -0x7f90))(ppiVar14);" (call_expression "(**(code **)(puStack_80 + -0x7f90))(ppiVar14)" (parenthesized_expression "(**(code **)(puStack_80 + -0x7f90))" (( "(") (pointer_expression "**(code **)(puStack_80 + -0x7f90)" (* "*") (pointer_expression "*(code **)(puStack_80 + -0x7f90)" (* "*") (cast_expression "(code **)(puStack_80 + -0x7f90)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_80 + -0x7f90)" (( "(") (binary_expression "puStack_80 + -0x7f90" (identifier "puStack_80") (+ "+") (number_literal "-0x7f90")) () ")"))))) () ")")) (argument_list "(ppiVar14)" (( "(") (identifier "ppiVar14") () ")"))) (; ";")) (if_statement "if (unaff_s2 == (int **)0x0) goto LAB_00099014;" (if "if") (parenthesized_expression "(unaff_s2 == (int **)0x0)" (( "(") (binary_expression "unaff_s2 == (int **)0x0" (identifier "unaff_s2") (== "==") (cast_expression "(int **)0x0" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00099014;" (goto "goto") (statement_identifier "LAB_00099014") (; ";"))) (expression_statement "ppiVar3 = (int **)*param_2;" (assignment_expression "ppiVar3 = (int **)*param_2" (identifier "ppiVar3") (= "=") (cast_expression "(int **)*param_2" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "*param_2" (* "*") (identifier "param_2")))) (; ";")) (} "}"))) (} "}")))) (expression_statement "(**(code **)(puStack_80 + -0x7f90))();" (call_expression "(**(code **)(puStack_80 + -0x7f90))()" (parenthesized_expression "(**(code **)(puStack_80 + -0x7f90))" (( "(") (pointer_expression "**(code **)(puStack_80 + -0x7f90)" (* "*") (pointer_expression "*(code **)(puStack_80 + -0x7f90)" (* "*") (cast_expression "(code **)(puStack_80 + -0x7f90)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_80 + -0x7f90)" (( "(") (binary_expression "puStack_80 + -0x7f90" (identifier "puStack_80") (+ "+") (number_literal "-0x7f90")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "*param_2 = (int *)unaff_s2;" (assignment_expression "*param_2 = (int *)unaff_s2" (pointer_expression "*param_2" (* "*") (identifier "param_2")) (= "=") (cast_expression "(int *)unaff_s2" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "unaff_s2"))) (; ";")) (expression_statement "ppiStack_ac = ppiVar2;" (assignment_expression "ppiStack_ac = ppiVar2" (identifier "ppiStack_ac") (= "=") (identifier "ppiVar2")) (; ";")) (expression_statement "ppiStack_a4 = param_2;" (assignment_expression "ppiStack_a4 = param_2" (identifier "ppiStack_a4") (= "=") (identifier "param_2")) (; ";")) (} "}"))) (if_statement "if (ppbStack_74 == (byte **)*piVar20) {\n    return (byte **)*piVar20;\n  }" (if "if") (parenthesized_expression "(ppbStack_74 == (byte **)*piVar20)" (( "(") (binary_expression "ppbStack_74 == (byte **)*piVar20" (identifier "ppbStack_74") (== "==") (cast_expression "(byte **)*piVar20" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "*piVar20" (* "*") (identifier "piVar20")))) () ")")) (compound_statement "{\n    return (byte **)*piVar20;\n  }" ({ "{") (return_statement "return (byte **)*piVar20;" (return "return") (cast_expression "(byte **)*piVar20" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "*piVar20" (* "*") (identifier "piVar20"))) (; ";")) (} "}"))) (expression_statement "pcVar11 = *(code **)(puStack_80 + -0x7ba0);" (assignment_expression "pcVar11 = *(code **)(puStack_80 + -0x7ba0)" (identifier "pcVar11") (= "=") (pointer_expression "*(code **)(puStack_80 + -0x7ba0)" (* "*") (cast_expression "(code **)(puStack_80 + -0x7ba0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_80 + -0x7ba0)" (( "(") (binary_expression "puStack_80 + -0x7ba0" (identifier "puStack_80") (+ "+") (number_literal "-0x7ba0")) () ")"))))) (; ";")) (expression_statement "uVar28 = 0x99034;" (assignment_expression "uVar28 = 0x99034" (identifier "uVar28") (= "=") (number_literal "0x99034")) (; ";")) (expression_statement "(*pcVar11)();" (call_expression "(*pcVar11)()" (parenthesized_expression "(*pcVar11)" (( "(") (pointer_expression "*pcVar11" (* "*") (identifier "pcVar11")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcStack_c8 = pcVar11 + 0xca57c;" (assignment_expression "pcStack_c8 = pcVar11 + 0xca57c" (identifier "pcStack_c8") (= "=") (binary_expression "pcVar11 + 0xca57c" (identifier "pcVar11") (+ "+") (number_literal "0xca57c"))) (; ";")) (expression_statement "piVar24 = *(int **)(pcVar11 + 0xc29f8);" (assignment_expression "piVar24 = *(int **)(pcVar11 + 0xc29f8)" (identifier "piVar24") (= "=") (pointer_expression "*(int **)(pcVar11 + 0xc29f8)" (* "*") (cast_expression "(int **)(pcVar11 + 0xc29f8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar11 + 0xc29f8)" (( "(") (binary_expression "pcVar11 + 0xc29f8" (identifier "pcVar11") (+ "+") (number_literal "0xc29f8")) () ")"))))) (; ";")) (expression_statement "piStack_bc = (int *)0x0;" (assignment_expression "piStack_bc = (int *)0x0" (identifier "piStack_bc") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "ppbStack_b4 = (byte **)*piVar24;" (assignment_expression "ppbStack_b4 = (byte **)*piVar24" (identifier "ppbStack_b4") (= "=") (cast_expression "(byte **)*piVar24" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "*piVar24" (* "*") (identifier "piVar24")))) (; ";")) (expression_statement "piStack_b0 = piVar20;" (assignment_expression "piStack_b0 = piVar20" (identifier "piStack_b0") (= "=") (identifier "piVar20")) (; ";")) (expression_statement "ppiStack_a8 = unaff_s2;" (assignment_expression "ppiStack_a8 = unaff_s2" (identifier "ppiStack_a8") (= "=") (identifier "unaff_s2")) (; ";")) (expression_statement "pcStack_a0 = unaff_s4;" (assignment_expression "pcStack_a0 = unaff_s4" (identifier "pcStack_a0") (= "=") (identifier "unaff_s4")) (; ";")) (expression_statement "ppiStack_9c = unaff_s5;" (assignment_expression "ppiStack_9c = unaff_s5" (identifier "ppiStack_9c") (= "=") (identifier "unaff_s5")) (; ";")) (expression_statement "ppiStack_98 = unaff_s6;" (assignment_expression "ppiStack_98 = unaff_s6" (identifier "ppiStack_98") (= "=") (identifier "unaff_s6")) (; ";")) (expression_statement "uStack_94 = uVar28;" (assignment_expression "uStack_94 = uVar28" (identifier "uStack_94") (= "=") (identifier "uVar28")) (; ";")) (expression_statement "uVar28 = (**(code **)(pcVar11 + 0xc2694))();" (assignment_expression "uVar28 = (**(code **)(pcVar11 + 0xc2694))()" (identifier "uVar28") (= "=") (call_expression "(**(code **)(pcVar11 + 0xc2694))()" (parenthesized_expression "(**(code **)(pcVar11 + 0xc2694))" (( "(") (pointer_expression "**(code **)(pcVar11 + 0xc2694)" (* "*") (pointer_expression "*(code **)(pcVar11 + 0xc2694)" (* "*") (cast_expression "(code **)(pcVar11 + 0xc2694)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar11 + 0xc2694)" (( "(") (binary_expression "pcVar11 + 0xc2694" (identifier "pcVar11") (+ "+") (number_literal "0xc2694")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar4 = (**(code **)(pcStack_c8 + -0x7f9c))(*ppiVar8);" (assignment_expression "iVar4 = (**(code **)(pcStack_c8 + -0x7f9c))(*ppiVar8)" (identifier "iVar4") (= "=") (call_expression "(**(code **)(pcStack_c8 + -0x7f9c))(*ppiVar8)" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7f9c))" (( "(") (pointer_expression "**(code **)(pcStack_c8 + -0x7f9c)" (* "*") (pointer_expression "*(code **)(pcStack_c8 + -0x7f9c)" (* "*") (cast_expression "(code **)(pcStack_c8 + -0x7f9c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7f9c)" (( "(") (binary_expression "pcStack_c8 + -0x7f9c" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7f9c")) () ")"))))) () ")")) (argument_list "(*ppiVar8)" (( "(") (pointer_expression "*ppiVar8" (* "*") (identifier "ppiVar8")) () ")")))) (; ";")) (expression_statement "iVar19 = (**(code **)(pcStack_c8 + -0x7fac))(*ppiVar8);" (assignment_expression "iVar19 = (**(code **)(pcStack_c8 + -0x7fac))(*ppiVar8)" (identifier "iVar19") (= "=") (call_expression "(**(code **)(pcStack_c8 + -0x7fac))(*ppiVar8)" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7fac))" (( "(") (pointer_expression "**(code **)(pcStack_c8 + -0x7fac)" (* "*") (pointer_expression "*(code **)(pcStack_c8 + -0x7fac)" (* "*") (cast_expression "(code **)(pcStack_c8 + -0x7fac)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7fac)" (( "(") (binary_expression "pcStack_c8 + -0x7fac" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7fac")) () ")"))))) () ")")) (argument_list "(*ppiVar8)" (( "(") (pointer_expression "*ppiVar8" (* "*") (identifier "ppiVar8")) () ")")))) (; ";")) (expression_statement "ppiVar2 = ppiVar3;" (assignment_expression "ppiVar2 = ppiVar3" (identifier "ppiVar2") (= "=") (identifier "ppiVar3")) (; ";")) (if_statement "if (ppiVar13 == (int **)&SUB_00000002) {\n    uVar6 = (**(code **)(pcStack_c8 + -0x7ed0))(ppiVar3);\n    piVar17 = &iStack_b8;\n    iStack_b8 = 0;\n    (**(code **)(pcStack_c8 + -0x7d60))(uVar6,0x3ec,0xffffffff);\n    if (iStack_b8 == 0) {\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n    else {\n      iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1]);\n      if ((iVar4 != 0) && (iVar7 == 4)) {\n        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);\n        piStack_bc = (int *)*piStack_bc;\n        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);\n        if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n  }\n  else {\n    if (iVar4 == 0) {\nLAB_000990f4:\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n      if (piStack_bc != (int *)0x0) {\nLAB_000990fc:\n        piVar17 = (int *)0xffffffff;\n        ppiVar14 = &piStack_bc;\n        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);\n      if (iVar19 != 0) {\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }\n      piStack_bc = (int *)0x0;\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n    }\n    ppiVar8 = (int **)sqlite3_mprintf(iVar19 + -0x7478,iVar4);\n    ppiVar14 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar8,0xffffffff);\n    ppiVar2 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7f90))();\n  }" (if "if") (parenthesized_expression "(ppiVar13 == (int **)&SUB_00000002)" (( "(") (binary_expression "ppiVar13 == (int **)&SUB_00000002" (identifier "ppiVar13") (== "==") (cast_expression "(int **)&SUB_00000002" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "&SUB_00000002" (& "&") (identifier "SUB_00000002")))) () ")")) (compound_statement "{\n    uVar6 = (**(code **)(pcStack_c8 + -0x7ed0))(ppiVar3);\n    piVar17 = &iStack_b8;\n    iStack_b8 = 0;\n    (**(code **)(pcStack_c8 + -0x7d60))(uVar6,0x3ec,0xffffffff);\n    if (iStack_b8 == 0) {\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n    else {\n      iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1]);\n      if ((iVar4 != 0) && (iVar7 == 4)) {\n        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);\n        piStack_bc = (int *)*piStack_bc;\n        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);\n        if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n  }" ({ "{") (expression_statement "uVar6 = (**(code **)(pcStack_c8 + -0x7ed0))(ppiVar3);" (assignment_expression "uVar6 = (**(code **)(pcStack_c8 + -0x7ed0))(ppiVar3)" (identifier "uVar6") (= "=") (call_expression "(**(code **)(pcStack_c8 + -0x7ed0))(ppiVar3)" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7ed0))" (( "(") (pointer_expression "**(code **)(pcStack_c8 + -0x7ed0)" (* "*") (pointer_expression "*(code **)(pcStack_c8 + -0x7ed0)" (* "*") (cast_expression "(code **)(pcStack_c8 + -0x7ed0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7ed0)" (( "(") (binary_expression "pcStack_c8 + -0x7ed0" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7ed0")) () ")"))))) () ")")) (argument_list "(ppiVar3)" (( "(") (identifier "ppiVar3") () ")")))) (; ";")) (expression_statement "piVar17 = &iStack_b8;" (assignment_expression "piVar17 = &iStack_b8" (identifier "piVar17") (= "=") (pointer_expression "&iStack_b8" (& "&") (identifier "iStack_b8"))) (; ";")) (expression_statement "iStack_b8 = 0;" (assignment_expression "iStack_b8 = 0" (identifier "iStack_b8") (= "=") (number_literal "0")) (; ";")) (expression_statement "(**(code **)(pcStack_c8 + -0x7d60))(uVar6,0x3ec,0xffffffff);" (call_expression "(**(code **)(pcStack_c8 + -0x7d60))(uVar6,0x3ec,0xffffffff)" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7d60))" (( "(") (pointer_expression "**(code **)(pcStack_c8 + -0x7d60)" (* "*") (pointer_expression "*(code **)(pcStack_c8 + -0x7d60)" (* "*") (cast_expression "(code **)(pcStack_c8 + -0x7d60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7d60)" (( "(") (binary_expression "pcStack_c8 + -0x7d60" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7d60")) () ")"))))) () ")")) (argument_list "(uVar6,0x3ec,0xffffffff)" (( "(") (identifier "uVar6") (, ",") (number_literal "0x3ec") (, ",") (number_literal "0xffffffff") () ")"))) (; ";")) (if_statement "if (iStack_b8 == 0) {\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }\n    else {\n      iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1]);\n      if ((iVar4 != 0) && (iVar7 == 4)) {\n        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);\n        piStack_bc = (int *)*piStack_bc;\n        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);\n        if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }" (if "if") (parenthesized_expression "(iStack_b8 == 0)" (( "(") (binary_expression "iStack_b8 == 0" (identifier "iStack_b8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }" ({ "{") (expression_statement "ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434);" (assignment_expression "ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434)" (identifier "ppiVar14") (= "=") (cast_expression "(int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434)" (( "(") (binary_expression "*(int *)(pcStack_c8 + -0x7fb4) + -0x7434" (pointer_expression "*(int *)(pcStack_c8 + -0x7fb4)" (* "*") (cast_expression "(int *)(pcStack_c8 + -0x7fb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7fb4)" (( "(") (binary_expression "pcStack_c8 + -0x7fb4" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7fb4")) () ")")))) (+ "+") (number_literal "-0x7434")) () ")")))) (; ";")) (expression_statement "(**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);" (call_expression "(**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff)" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7e40))" (( "(") (pointer_expression "**(code **)(pcStack_c8 + -0x7e40)" (* "*") (pointer_expression "*(code **)(pcStack_c8 + -0x7e40)" (* "*") (cast_expression "(code **)(pcStack_c8 + -0x7e40)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7e40)" (( "(") (binary_expression "pcStack_c8 + -0x7e40" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7e40")) () ")"))))) () ")")) (argument_list "(ppiVar3,ppiVar14,0xffffffff)" (( "(") (identifier "ppiVar3") (, ",") (identifier "ppiVar14") (, ",") (number_literal "0xffffffff") () ")"))) (; ";")) (} "}")) (else_clause "else {\n      iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1]);\n      if ((iVar4 != 0) && (iVar7 == 4)) {\n        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);\n        piStack_bc = (int *)*piStack_bc;\n        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);\n        if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }" (else "else") (compound_statement "{\n      iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1]);\n      if ((iVar4 != 0) && (iVar7 == 4)) {\n        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);\n        piStack_bc = (int *)*piStack_bc;\n        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);\n        if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }\n      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c);\n      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);\n    }" ({ "{") (expression_statement "iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1]);" (assignment_expression "iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1])" (identifier "iVar7") (= "=") (call_expression "(**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1])" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7fac))" (( "(") (pointer_expression "**(code **)(pcStack_c8 + -0x7fac)" (* "*") (pointer_expression "*(code **)(pcStack_c8 + -0x7fac)" (* "*") (cast_expression "(code **)(pcStack_c8 + -0x7fac)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7fac)" (( "(") (binary_expression "pcStack_c8 + -0x7fac" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7fac")) () ")"))))) () ")")) (argument_list "(ppiVar8[1])" (( "(") (subscript_expression "ppiVar8[1]" (identifier "ppiVar8") ([ "[") (number_literal "1") (] "]")) () ")")))) (; ";")) (if_statement "if ((iVar4 != 0) && (iVar7 == 4)) {\n        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);\n        piStack_bc = (int *)*piStack_bc;\n        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);\n        if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }" (if "if") (parenthesized_expression "((iVar4 != 0) && (iVar7 == 4))" (( "(") (binary_expression "(iVar4 != 0) && (iVar7 == 4)" (parenthesized_expression "(iVar4 != 0)" (( "(") (binary_expression "iVar4 != 0" (identifier "iVar4") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar7 == 4)" (( "(") (binary_expression "iVar7 == 4" (identifier "iVar7") (== "==") (number_literal "4")) () ")"))) () ")")) (compound_statement "{\n        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);\n        piStack_bc = (int *)*piStack_bc;\n        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);\n        if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }\n        goto LAB_000990fc;\n      }" ({ "{") (expression_statement "piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);" (assignment_expression "piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1])" (identifier "piStack_bc") (= "=") (cast_expression "(int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1])" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1])" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7fb0))" (( "(") (pointer_expression "**(code **)(pcStack_c8 + -0x7fb0)" (* "*") (pointer_expression "*(code **)(pcStack_c8 + -0x7fb0)" (* "*") (cast_expression "(code **)(pcStack_c8 + -0x7fb0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7fb0)" (( "(") (binary_expression "pcStack_c8 + -0x7fb0" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7fb0")) () ")"))))) () ")")) (argument_list "(ppiVar8[1])" (( "(") (subscript_expression "ppiVar8[1]" (identifier "ppiVar8") ([ "[") (number_literal "1") (] "]")) () ")"))))) (; ";")) (expression_statement "piStack_bc = (int *)*piStack_bc;" (assignment_expression "piStack_bc = (int *)*piStack_bc" (identifier "piStack_bc") (= "=") (cast_expression "(int *)*piStack_bc" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piStack_bc" (* "*") (identifier "piStack_bc")))) (; ";")) (expression_statement "piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);" (assignment_expression "piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc)" (identifier "piVar17") (= "=") (cast_expression "(int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))\n                                   (uVar28,iVar4,iVar19 + 1,piStack_bc)" (parenthesized_expression "(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))" (( "(") (pointer_expression "*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8)" (* "*") (cast_expression "(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8)" (( "(") (binary_expression "*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8" (pointer_expression "*(int *)(pcStack_c8 + -0x7eb0)" (* "*") (cast_expression "(int *)(pcStack_c8 + -0x7eb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7eb0)" (( "(") (binary_expression "pcStack_c8 + -0x7eb0" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7eb0")) () ")")))) (+ "+") (number_literal "0x43f8")) () ")")))) () ")")) (argument_list "(uVar28,iVar4,iVar19 + 1,piStack_bc)" (( "(") (identifier "uVar28") (, ",") (identifier "iVar4") (, ",") (binary_expression "iVar19 + 1" (identifier "iVar19") (+ "+") (number_literal "1")) (, ",") (identifier "piStack_bc") () ")"))))) (; ";")) (if_statement "if (piStack_bc == piVar17) {\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }" (if "if") (parenthesized_expression "(piStack_bc == piVar17)" (( "(") (binary_expression "piStack_bc == piVar17" (identifier "piStack_bc") (== "==") (identifier "piVar17")) () ")")) (compound_statement "{\n          (**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);\n        }" ({ "{") (expression_statement "(**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);" (call_expression "(**(code **)(pcStack_c8 + -0x7e40))\n                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff)" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7e40))" (( "(") (pointer_expression "**(code **)(pcStack_c8 + -0x7e40)" (* "*") (pointer_expression "*(code **)(pcStack_c8 + -0x7e40)" (* "*") (cast_expression "(code **)(pcStack_c8 + -0x7e40)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7e40)" (( "(") (binary_expression "pcStack_c8 + -0x7e40" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7e40")) () ")"))))) () ")")) (argument_list "(ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff)" (( "(") (identifier "ppiVar3") (, ",") (binary_expression "*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac" (pointer_expression "*(int *)(pcStack_c8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_c8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7fc8)" (( "(") (binary_expression "pcStack_c8 + -0x7fc8" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "0x52ac")) (, ",") (number_literal "0xffffffff") () ")"))) (; ";")) (} "}"))) (goto_statement "goto LAB_000990fc;" (goto "goto") (statement_identifier "LAB_000990fc") (; ";")) (} "}"))) (expression_statement "ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c);" (assignment_expression "ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c)" (identifier "ppiVar14") (= "=") (cast_expression "(int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c)" (( "(") (binary_expression "*(int *)(pcStack_c8 + -0x7fb4) + -0x744c" (pointer_expression "*(int *)(pcStack_c8 + -0x7fb4)" (* "*") (cast_expression "(int *)(pcStack_c8 + -0x7fb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7fb4)" (( "(") (binary_expression "pcStack_c8 + -0x7fb4" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7fb4")) () ")")))) (+ "+") (number_literal "-0x744c")) () ")")))) (; ";")) (expression_statement "(**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);" (call_expression "(**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff)" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7e40))" (( "(") (pointer_expression "**(code **)(pcStack_c8 + -0x7e40)" (* "*") (pointer_expression "*(code **)(pcStack_c8 + -0x7e40)" (* "*") (cast_expression "(code **)(pcStack_c8 + -0x7e40)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7e40)" (( "(") (binary_expression "pcStack_c8 + -0x7e40" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7e40")) () ")"))))) () ")")) (argument_list "(ppiVar3,ppiVar14,0xffffffff)" (( "(") (identifier "ppiVar3") (, ",") (identifier "ppiVar14") (, ",") (number_literal "0xffffffff") () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n    if (iVar4 == 0) {\nLAB_000990f4:\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n      if (piStack_bc != (int *)0x0) {\nLAB_000990fc:\n        piVar17 = (int *)0xffffffff;\n        ppiVar14 = &piStack_bc;\n        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);\n      if (iVar19 != 0) {\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }\n      piStack_bc = (int *)0x0;\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n    }\n    ppiVar8 = (int **)sqlite3_mprintf(iVar19 + -0x7478,iVar4);\n    ppiVar14 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar8,0xffffffff);\n    ppiVar2 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7f90))();\n  }" (else "else") (compound_statement "{\n    if (iVar4 == 0) {\nLAB_000990f4:\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n      if (piStack_bc != (int *)0x0) {\nLAB_000990fc:\n        piVar17 = (int *)0xffffffff;\n        ppiVar14 = &piStack_bc;\n        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);\n      if (iVar19 != 0) {\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }\n      piStack_bc = (int *)0x0;\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n    }\n    ppiVar8 = (int **)sqlite3_mprintf(iVar19 + -0x7478,iVar4);\n    ppiVar14 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar8,0xffffffff);\n    ppiVar2 = ppiVar8;\n    (**(code **)(pcStack_c8 + -0x7f90))();\n  }" ({ "{") (if_statement "if (iVar4 == 0) {\nLAB_000990f4:\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n      if (piStack_bc != (int *)0x0) {\nLAB_000990fc:\n        piVar17 = (int *)0xffffffff;\n        ppiVar14 = &piStack_bc;\n        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);\n        goto LAB_00099118;\n      }\n    }\n    else {\n      iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);\n      if (iVar19 != 0) {\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }\n      piStack_bc = (int *)0x0;\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n    }" (if "if") (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_000990f4:\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n      if (piStack_bc != (int *)0x0) {\nLAB_000990fc:\n        piVar17 = (int *)0xffffffff;\n        ppiVar14 = &piStack_bc;\n        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);\n        goto LAB_00099118;\n      }\n    }" ({ "{") (labeled_statement "LAB_000990f4:\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);" (statement_identifier "LAB_000990f4") (: ":") (expression_statement "iVar19 = *(int *)(pcStack_c8 + -0x7fb4);" (assignment_expression "iVar19 = *(int *)(pcStack_c8 + -0x7fb4)" (identifier "iVar19") (= "=") (pointer_expression "*(int *)(pcStack_c8 + -0x7fb4)" (* "*") (cast_expression "(int *)(pcStack_c8 + -0x7fb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7fb4)" (( "(") (binary_expression "pcStack_c8 + -0x7fb4" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7fb4")) () ")"))))) (; ";"))) (if_statement "if (piStack_bc != (int *)0x0) {\nLAB_000990fc:\n        piVar17 = (int *)0xffffffff;\n        ppiVar14 = &piStack_bc;\n        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);\n        goto LAB_00099118;\n      }" (if "if") (parenthesized_expression "(piStack_bc != (int *)0x0)" (( "(") (binary_expression "piStack_bc != (int *)0x0" (identifier "piStack_bc") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_000990fc:\n        piVar17 = (int *)0xffffffff;\n        ppiVar14 = &piStack_bc;\n        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);\n        goto LAB_00099118;\n      }" ({ "{") (labeled_statement "LAB_000990fc:\n        piVar17 = (int *)0xffffffff;" (statement_identifier "LAB_000990fc") (: ":") (expression_statement "piVar17 = (int *)0xffffffff;" (assignment_expression "piVar17 = (int *)0xffffffff" (identifier "piVar17") (= "=") (cast_expression "(int *)0xffffffff" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xffffffff"))) (; ";"))) (expression_statement "ppiVar14 = &piStack_bc;" (assignment_expression "ppiVar14 = &piStack_bc" (identifier "ppiVar14") (= "=") (pointer_expression "&piStack_bc" (& "&") (identifier "piStack_bc"))) (; ";")) (expression_statement "(**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);" (call_expression "(**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4)" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7e28))" (( "(") (pointer_expression "**(code **)(pcStack_c8 + -0x7e28)" (* "*") (pointer_expression "*(code **)(pcStack_c8 + -0x7e28)" (* "*") (cast_expression "(code **)(pcStack_c8 + -0x7e28)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7e28)" (( "(") (binary_expression "pcStack_c8 + -0x7e28" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7e28")) () ")"))))) () ")")) (argument_list "(ppiVar3,ppiVar14,4)" (( "(") (identifier "ppiVar3") (, ",") (identifier "ppiVar14") (, ",") (number_literal "4") () ")"))) (; ";")) (goto_statement "goto LAB_00099118;" (goto "goto") (statement_identifier "LAB_00099118") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);\n      if (iVar19 != 0) {\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }\n      piStack_bc = (int *)0x0;\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n    }" (else "else") (compound_statement "{\n      iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);\n      if (iVar19 != 0) {\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }\n      piStack_bc = (int *)0x0;\n      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);\n    }" ({ "{") (expression_statement "iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);" (assignment_expression "iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1)" (identifier "iVar19") (= "=") (call_expression "(*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1)" (parenthesized_expression "(*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))" (( "(") (pointer_expression "*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24)" (* "*") (cast_expression "(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24)" (( "(") (binary_expression "*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24" (pointer_expression "*(int *)(pcStack_c8 + -0x7ef0)" (* "*") (cast_expression "(int *)(pcStack_c8 + -0x7ef0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7ef0)" (( "(") (binary_expression "pcStack_c8 + -0x7ef0" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7ef0")) () ")")))) (+ "+") (number_literal "-0x2c24")) () ")")))) () ")")) (argument_list "(uVar28,iVar4,iVar19 + 1)" (( "(") (identifier "uVar28") (, ",") (identifier "iVar4") (, ",") (binary_expression "iVar19 + 1" (identifier "iVar19") (+ "+") (number_literal "1")) () ")")))) (; ";")) (if_statement "if (iVar19 != 0) {\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }" (if "if") (parenthesized_expression "(iVar19 != 0)" (( "(") (binary_expression "iVar19 != 0" (identifier "iVar19") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        piStack_bc = *(int **)(iVar19 + 8);\n        goto LAB_000990f4;\n      }" ({ "{") (expression_statement "piStack_bc = *(int **)(iVar19 + 8);" (assignment_expression "piStack_bc = *(int **)(iVar19 + 8)" (identifier "piStack_bc") (= "=") (pointer_expression "*(int **)(iVar19 + 8)" (* "*") (cast_expression "(int **)(iVar19 + 8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar19 + 8)" (( "(") (binary_expression "iVar19 + 8" (identifier "iVar19") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (goto_statement "goto LAB_000990f4;" (goto "goto") (statement_identifier "LAB_000990f4") (; ";")) (} "}"))) (expression_statement "piStack_bc = (int *)0x0;" (assignment_expression "piStack_bc = (int *)0x0" (identifier "piStack_bc") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "iVar19 = *(int *)(pcStack_c8 + -0x7fb4);" (assignment_expression "iVar19 = *(int *)(pcStack_c8 + -0x7fb4)" (identifier "iVar19") (= "=") (pointer_expression "*(int *)(pcStack_c8 + -0x7fb4)" (* "*") (cast_expression "(int *)(pcStack_c8 + -0x7fb4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7fb4)" (( "(") (binary_expression "pcStack_c8 + -0x7fb4" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7fb4")) () ")"))))) (; ";")) (} "}")))) (expression_statement "ppiVar8 = (int **)sqlite3_mprintf(iVar19 + -0x7478,iVar4);" (assignment_expression "ppiVar8 = (int **)sqlite3_mprintf(iVar19 + -0x7478,iVar4)" (identifier "ppiVar8") (= "=") (cast_expression "(int **)sqlite3_mprintf(iVar19 + -0x7478,iVar4)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "sqlite3_mprintf(iVar19 + -0x7478,iVar4)" (identifier "sqlite3_mprintf") (argument_list "(iVar19 + -0x7478,iVar4)" (( "(") (binary_expression "iVar19 + -0x7478" (identifier "iVar19") (+ "+") (number_literal "-0x7478")) (, ",") (identifier "iVar4") () ")"))))) (; ";")) (expression_statement "ppiVar14 = ppiVar8;" (assignment_expression "ppiVar14 = ppiVar8" (identifier "ppiVar14") (= "=") (identifier "ppiVar8")) (; ";")) (expression_statement "(**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar8,0xffffffff);" (call_expression "(**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar8,0xffffffff)" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7e40))" (( "(") (pointer_expression "**(code **)(pcStack_c8 + -0x7e40)" (* "*") (pointer_expression "*(code **)(pcStack_c8 + -0x7e40)" (* "*") (cast_expression "(code **)(pcStack_c8 + -0x7e40)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7e40)" (( "(") (binary_expression "pcStack_c8 + -0x7e40" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7e40")) () ")"))))) () ")")) (argument_list "(ppiVar3,ppiVar8,0xffffffff)" (( "(") (identifier "ppiVar3") (, ",") (identifier "ppiVar8") (, ",") (number_literal "0xffffffff") () ")"))) (; ";")) (expression_statement "ppiVar2 = ppiVar8;" (assignment_expression "ppiVar2 = ppiVar8" (identifier "ppiVar2") (= "=") (identifier "ppiVar8")) (; ";")) (expression_statement "(**(code **)(pcStack_c8 + -0x7f90))();" (call_expression "(**(code **)(pcStack_c8 + -0x7f90))()" (parenthesized_expression "(**(code **)(pcStack_c8 + -0x7f90))" (( "(") (pointer_expression "**(code **)(pcStack_c8 + -0x7f90)" (* "*") (pointer_expression "*(code **)(pcStack_c8 + -0x7f90)" (* "*") (cast_expression "(code **)(pcStack_c8 + -0x7f90)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7f90)" (( "(") (binary_expression "pcStack_c8 + -0x7f90" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7f90")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))) (labeled_statement "LAB_00099118:\n  if (ppbStack_b4 == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }" (statement_identifier "LAB_00099118") (: ":") (if_statement "if (ppbStack_b4 == (byte **)*piVar24) {\n    return (byte **)*piVar24;\n  }" (if "if") (parenthesized_expression "(ppbStack_b4 == (byte **)*piVar24)" (( "(") (binary_expression "ppbStack_b4 == (byte **)*piVar24" (identifier "ppbStack_b4") (== "==") (cast_expression "(byte **)*piVar24" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "*piVar24" (* "*") (identifier "piVar24")))) () ")")) (compound_statement "{\n    return (byte **)*piVar24;\n  }" ({ "{") (return_statement "return (byte **)*piVar24;" (return "return") (cast_expression "(byte **)*piVar24" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "*piVar24" (* "*") (identifier "piVar24"))) (; ";")) (} "}")))) (expression_statement "pcVar11 = *(code **)(pcStack_c8 + -0x7ba0);" (assignment_expression "pcVar11 = *(code **)(pcStack_c8 + -0x7ba0)" (identifier "pcVar11") (= "=") (pointer_expression "*(code **)(pcStack_c8 + -0x7ba0)" (* "*") (cast_expression "(code **)(pcStack_c8 + -0x7ba0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_c8 + -0x7ba0)" (( "(") (binary_expression "pcStack_c8 + -0x7ba0" (identifier "pcStack_c8") (+ "+") (number_literal "-0x7ba0")) () ")"))))) (; ";")) (expression_statement "uVar28 = 0x992a0;" (assignment_expression "uVar28 = 0x992a0" (identifier "uVar28") (= "=") (number_literal "0x992a0")) (; ";")) (expression_statement "(*pcVar11)();" (call_expression "(*pcVar11)()" (parenthesized_expression "(*pcVar11)" (( "(") (pointer_expression "*pcVar11" (* "*") (identifier "pcVar11")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "ppiStack_e4 = ppiVar3;" (assignment_expression "ppiStack_e4 = ppiVar3" (identifier "ppiStack_e4") (= "=") (identifier "ppiVar3")) (; ";")) (expression_statement "piStack_ec = piVar24;" (assignment_expression "piStack_ec = piVar24" (identifier "piStack_ec") (= "=") (identifier "piVar24")) (; ";")) (expression_statement "iStack_e8 = iVar4;" (assignment_expression "iStack_e8 = iVar4" (identifier "iStack_e8") (= "=") (identifier "iVar4")) (; ";")) (expression_statement "piVar20 = &uStack_120;" (assignment_expression "piVar20 = &uStack_120" (identifier "piVar20") (= "=") (pointer_expression "&uStack_120" (& "&") (identifier "uStack_120"))) (; ";")) (expression_statement "pcStack_128 = pcVar11 + 0xca310;" (assignment_expression "pcStack_128 = pcVar11 + 0xca310" (identifier "pcStack_128") (= "=") (binary_expression "pcVar11 + 0xca310" (identifier "pcVar11") (+ "+") (number_literal "0xca310"))) (; ";")) (expression_statement "uStack_dc = uVar28;" (assignment_expression "uStack_dc = uVar28" (identifier "uStack_dc") (= "=") (identifier "uVar28")) (; ";")) (expression_statement "ppiStack_e0 = ppiVar13;" (assignment_expression "ppiStack_e0 = ppiVar13" (identifier "ppiStack_e0") (= "=") (identifier "ppiVar13")) (; ";")) (expression_statement "ppiStack_f0 = ppiVar8;" (assignment_expression "ppiStack_f0 = ppiVar8" (identifier "ppiStack_f0") (= "=") (identifier "ppiVar8")) (; ";")) (expression_statement "piVar26 = *(int **)(pcVar11 + 0xc278c);" (assignment_expression "piVar26 = *(int **)(pcVar11 + 0xc278c)" (identifier "piVar26") (= "=") (pointer_expression "*(int **)(pcVar11 + 0xc278c)" (* "*") (cast_expression "(int **)(pcVar11 + 0xc278c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar11 + 0xc278c)" (( "(") (binary_expression "pcVar11 + 0xc278c" (identifier "pcVar11") (+ "+") (number_literal "0xc278c")) () ")"))))) (; ";")) (expression_statement "piVar24 = *ppiVar14;" (assignment_expression "piVar24 = *ppiVar14" (identifier "piVar24") (= "=") (pointer_expression "*ppiVar14" (* "*") (identifier "ppiVar14"))) (; ";")) (expression_statement "uStack_120 = 0;" (assignment_expression "uStack_120 = 0" (identifier "uStack_120") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_11c = 0;" (assignment_expression "uStack_11c = 0" (identifier "uStack_11c") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_118 = 0;" (assignment_expression "uStack_118 = 0" (identifier "uStack_118") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_114 = 0;" (assignment_expression "uStack_114 = 0" (identifier "uStack_114") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_110 = 0;" (assignment_expression "uStack_110 = 0" (identifier "uStack_110") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_10c = 0;" (assignment_expression "uStack_10c = 0" (identifier "uStack_10c") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_108 = 0;" (assignment_expression "uStack_108 = 0" (identifier "uStack_108") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_104 = 0;" (assignment_expression "uStack_104 = 0" (identifier "uStack_104") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_100 = 0;" (assignment_expression "uStack_100 = 0" (identifier "uStack_100") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_fc = 0;" (assignment_expression "uStack_fc = 0" (identifier "uStack_fc") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_f8 = 0;" (assignment_expression "uStack_f8 = 0" (identifier "uStack_f8") (= "=") (number_literal "0")) (; ";")) (expression_statement "iStack_f4 = *piVar26;" (assignment_expression "iStack_f4 = *piVar26" (identifier "iStack_f4") (= "=") (pointer_expression "*piVar26" (* "*") (identifier "piVar26"))) (; ";")) (expression_statement "pbVar16 = (byte *)((int)piVar24 * 2);" (assignment_expression "pbVar16 = (byte *)((int)piVar24 * 2)" (identifier "pbVar16") (= "=") (cast_expression "(byte *)((int)piVar24 * 2)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar24 * 2)" (( "(") (binary_expression "(int)piVar24 * 2" (cast_expression "(int)piVar24" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar24")) (* "*") (number_literal "2")) () ")")))) (; ";")) (if_statement "if ((int)piVar24 < 1) {\n    uVar22 = 0;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099480:\n    piVar20 = ppiVar2[0xc];\n    piVar23 = (int *)((int)piVar20 >> (uVar22 & 0x1f));\n    piVar10 = piVar23;\n    piVar24 = (int *)(((int)piVar20 << 1) << (~uVar22 & 0x1f) |\n                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f));\n    if ((uVar22 & 0x20) != 0) {\n      piVar10 = (int *)((int)piVar20 >> 0x1f);\n      piVar24 = piVar23;\n    }\n    piVar20 = piVar24;\n    dVar29 = (double)(**(code **)(pcStack_128 + -0x7f18))(piVar10);\n    ppbVar5 = (byte **)0x0;\n    ppiVar14[0xc] = piVar10;\n    ppiVar14[0xd] = piVar24;\n    *(double *)(ppiVar14 + 10) = dVar29 * *(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780);\n  }\n  else {\n    piVar10 = ppiVar14[1];\n    bVar1 = false;\n    piVar17 = piVar10;\n    do {\n      piVar23 = piVar17 + 1;\n      piVar17 = piVar17 + 3;\n      if (*(char *)piVar23 == '@') {\n        bVar1 = true;\n      }\n    } while (piVar10 + (int)piVar24 * 3 != piVar17);\n    piVar17 = (int *)0x0;\n    uVar21 = 0;\n    iVar4 = 0;\nLAB_000993bc:\n    piVar10 = (int *)((int)piVar10 + (int)piVar17);\n    if (!bVar1) {\n      if (*(char *)((int)piVar10 + 5) == '\0') goto LAB_0009939c;\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\n      if (iVar19 != 0) goto LAB_000993d8;\n      if (bVar12 != 2) goto LAB_00099394;\n      if (iVar4 == 0) {\n        iVar19 = 0;\n      }\n      else {\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }\n      piVar17 = (int *)0x1;\n      ppiVar14[5] = (int *)0x1;\n      piVar20 = *(int **)(pcVar11 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar20 + -0x1de2);\n      *(undefined4 *)((int)ppiVar14[4] + iVar19) = 1;\n      pbVar16 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1;\n      *(undefined8 *)(ppiVar14 + 10) = uVar30;\n      ppiVar14[0xd] = (int *)0x1;\n      ppiVar14[0xc] = (int *)0x0;\n      ppiVar14[0xe] = (int *)0x1;\n      ppbVar5 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar10 + 5) == '\0') {\nLAB_0009939c:\n      uVar22 = uVar21;\n      if ((int)piVar24 <= iVar4 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\nLAB_000993d8:\n      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar24 = ppiVar14[4];\n      uVar22 = uVar21 + 2;\n      *(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;\n      *(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';\n      piVar24[iVar4 * 2] = (int)uVar22 >> 1;\n      *(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;\n      piVar24 = *ppiVar14;\n      uVar21 = uVar22;\n      if ((int)piVar24 <= iVar4 + 1) {\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }\n    piVar17 = piVar17 + 3;\n    if ((int)uVar21 < 0x28) goto code_r0x000993b8;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099544:\n    pbVar16 = (byte *)(iVar4 + 1);\n    piVar24 = (int *)sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4);\n    ppiVar14[6] = piVar24;\n    if (piVar24 != (int *)0x0) {\n      uVar22 = (int)uVar21 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar5 = (byte **)&DAT_00000007;\n  }" (if "if") (parenthesized_expression "((int)piVar24 < 1)" (( "(") (binary_expression "(int)piVar24 < 1" (cast_expression "(int)piVar24" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar24")) (< "<") (number_literal "1")) () ")")) (compound_statement "{\n    uVar22 = 0;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099480:\n    piVar20 = ppiVar2[0xc];\n    piVar23 = (int *)((int)piVar20 >> (uVar22 & 0x1f));\n    piVar10 = piVar23;\n    piVar24 = (int *)(((int)piVar20 << 1) << (~uVar22 & 0x1f) |\n                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f));\n    if ((uVar22 & 0x20) != 0) {\n      piVar10 = (int *)((int)piVar20 >> 0x1f);\n      piVar24 = piVar23;\n    }\n    piVar20 = piVar24;\n    dVar29 = (double)(**(code **)(pcStack_128 + -0x7f18))(piVar10);\n    ppbVar5 = (byte **)0x0;\n    ppiVar14[0xc] = piVar10;\n    ppiVar14[0xd] = piVar24;\n    *(double *)(ppiVar14 + 10) = dVar29 * *(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780);\n  }" ({ "{") (expression_statement "uVar22 = 0;" (assignment_expression "uVar22 = 0" (identifier "uVar22") (= "=") (number_literal "0")) (; ";")) (expression_statement "ppiVar14[5] = (int *)0x2;" (assignment_expression "ppiVar14[5] = (int *)0x2" (subscript_expression "ppiVar14[5]" (identifier "ppiVar14") ([ "[") (number_literal "5") (] "]")) (= "=") (cast_expression "(int *)0x2" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x2"))) (; ";")) (expression_statement "ppiVar14[7] = (int *)0x1;" (assignment_expression "ppiVar14[7] = (int *)0x1" (subscript_expression "ppiVar14[7]" (identifier "ppiVar14") ([ "[") (number_literal "7") (] "]")) (= "=") (cast_expression "(int *)0x1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (labeled_statement "LAB_00099480:\n    piVar20 = ppiVar2[0xc];" (statement_identifier "LAB_00099480") (: ":") (expression_statement "piVar20 = ppiVar2[0xc];" (assignment_expression "piVar20 = ppiVar2[0xc]" (identifier "piVar20") (= "=") (subscript_expression "ppiVar2[0xc]" (identifier "ppiVar2") ([ "[") (number_literal "0xc") (] "]"))) (; ";"))) (expression_statement "piVar23 = (int *)((int)piVar20 >> (uVar22 & 0x1f));" (assignment_expression "piVar23 = (int *)((int)piVar20 >> (uVar22 & 0x1f))" (identifier "piVar23") (= "=") (cast_expression "(int *)((int)piVar20 >> (uVar22 & 0x1f))" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar20 >> (uVar22 & 0x1f))" (( "(") (binary_expression "(int)piVar20 >> (uVar22 & 0x1f)" (cast_expression "(int)piVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar20")) (>> ">>") (parenthesized_expression "(uVar22 & 0x1f)" (( "(") (binary_expression "uVar22 & 0x1f" (identifier "uVar22") (& "&") (number_literal "0x1f")) () ")"))) () ")")))) (; ";")) (expression_statement "piVar10 = piVar23;" (assignment_expression "piVar10 = piVar23" (identifier "piVar10") (= "=") (identifier "piVar23")) (; ";")) (expression_statement "piVar24 = (int *)(((int)piVar20 << 1) << (~uVar22 & 0x1f) |\n                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f));" (assignment_expression "piVar24 = (int *)(((int)piVar20 << 1) << (~uVar22 & 0x1f) |\n                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f))" (identifier "piVar24") (= "=") (cast_expression "(int *)(((int)piVar20 << 1) << (~uVar22 & 0x1f) |\n                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f))" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(((int)piVar20 << 1) << (~uVar22 & 0x1f) |\n                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f))" (( "(") (binary_expression "((int)piVar20 << 1) << (~uVar22 & 0x1f) |\n                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f)" (binary_expression "((int)piVar20 << 1) << (~uVar22 & 0x1f)" (parenthesized_expression "((int)piVar20 << 1)" (( "(") (binary_expression "(int)piVar20 << 1" (cast_expression "(int)piVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar20")) (<< "<<") (number_literal "1")) () ")")) (<< "<<") (parenthesized_expression "(~uVar22 & 0x1f)" (( "(") (binary_expression "~uVar22 & 0x1f" (unary_expression "~uVar22" (~ "~") (identifier "uVar22")) (& "&") (number_literal "0x1f")) () ")"))) (| "|") (binary_expression "(uint)ppiVar2[0xd] >> (uVar22 & 0x1f)" (cast_expression "(uint)ppiVar2[0xd]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "ppiVar2[0xd]" (identifier "ppiVar2") ([ "[") (number_literal "0xd") (] "]"))) (>> ">>") (parenthesized_expression "(uVar22 & 0x1f)" (( "(") (binary_expression "uVar22 & 0x1f" (identifier "uVar22") (& "&") (number_literal "0x1f")) () ")")))) () ")")))) (; ";")) (if_statement "if ((uVar22 & 0x20) != 0) {\n      piVar10 = (int *)((int)piVar20 >> 0x1f);\n      piVar24 = piVar23;\n    }" (if "if") (parenthesized_expression "((uVar22 & 0x20) != 0)" (( "(") (binary_expression "(uVar22 & 0x20) != 0" (parenthesized_expression "(uVar22 & 0x20)" (( "(") (binary_expression "uVar22 & 0x20" (identifier "uVar22") (& "&") (number_literal "0x20")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      piVar10 = (int *)((int)piVar20 >> 0x1f);\n      piVar24 = piVar23;\n    }" ({ "{") (expression_statement "piVar10 = (int *)((int)piVar20 >> 0x1f);" (assignment_expression "piVar10 = (int *)((int)piVar20 >> 0x1f)" (identifier "piVar10") (= "=") (cast_expression "(int *)((int)piVar20 >> 0x1f)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar20 >> 0x1f)" (( "(") (binary_expression "(int)piVar20 >> 0x1f" (cast_expression "(int)piVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar20")) (>> ">>") (number_literal "0x1f")) () ")")))) (; ";")) (expression_statement "piVar24 = piVar23;" (assignment_expression "piVar24 = piVar23" (identifier "piVar24") (= "=") (identifier "piVar23")) (; ";")) (} "}"))) (expression_statement "piVar20 = piVar24;" (assignment_expression "piVar20 = piVar24" (identifier "piVar20") (= "=") (identifier "piVar24")) (; ";")) (expression_statement "dVar29 = (double)(**(code **)(pcStack_128 + -0x7f18))(piVar10);" (assignment_expression "dVar29 = (double)(**(code **)(pcStack_128 + -0x7f18))(piVar10)" (identifier "dVar29") (= "=") (cast_expression "(double)(**(code **)(pcStack_128 + -0x7f18))(piVar10)" (( "(") (type_descriptor "double" (primitive_type "double")) () ")") (call_expression "(**(code **)(pcStack_128 + -0x7f18))(piVar10)" (parenthesized_expression "(**(code **)(pcStack_128 + -0x7f18))" (( "(") (pointer_expression "**(code **)(pcStack_128 + -0x7f18)" (* "*") (pointer_expression "*(code **)(pcStack_128 + -0x7f18)" (* "*") (cast_expression "(code **)(pcStack_128 + -0x7f18)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_128 + -0x7f18)" (( "(") (binary_expression "pcStack_128 + -0x7f18" (identifier "pcStack_128") (+ "+") (number_literal "-0x7f18")) () ")"))))) () ")")) (argument_list "(piVar10)" (( "(") (identifier "piVar10") () ")"))))) (; ";")) (expression_statement "ppbVar5 = (byte **)0x0;" (assignment_expression "ppbVar5 = (byte **)0x0" (identifier "ppbVar5") (= "=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "ppiVar14[0xc] = piVar10;" (assignment_expression "ppiVar14[0xc] = piVar10" (subscript_expression "ppiVar14[0xc]" (identifier "ppiVar14") ([ "[") (number_literal "0xc") (] "]")) (= "=") (identifier "piVar10")) (; ";")) (expression_statement "ppiVar14[0xd] = piVar24;" (assignment_expression "ppiVar14[0xd] = piVar24" (subscript_expression "ppiVar14[0xd]" (identifier "ppiVar14") ([ "[") (number_literal "0xd") (] "]")) (= "=") (identifier "piVar24")) (; ";")) (expression_statement "*(double *)(ppiVar14 + 10) = dVar29 * *(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780);" (assignment_expression "*(double *)(ppiVar14 + 10) = dVar29 * *(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780)" (pointer_expression "*(double *)(ppiVar14 + 10)" (* "*") (cast_expression "(double *)(ppiVar14 + 10)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(ppiVar14 + 10)" (( "(") (binary_expression "ppiVar14 + 10" (identifier "ppiVar14") (+ "+") (number_literal "10")) () ")")))) (= "=") (binary_expression "dVar29 * *(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780)" (identifier "dVar29") (* "*") (pointer_expression "*(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780)" (* "*") (cast_expression "(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_128 + -0x7f1c) + -0x7780)" (( "(") (binary_expression "*(int *)(pcStack_128 + -0x7f1c) + -0x7780" (pointer_expression "*(int *)(pcStack_128 + -0x7f1c)" (* "*") (cast_expression "(int *)(pcStack_128 + -0x7f1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_128 + -0x7f1c)" (( "(") (binary_expression "pcStack_128 + -0x7f1c" (identifier "pcStack_128") (+ "+") (number_literal "-0x7f1c")) () ")")))) (+ "+") (number_literal "-0x7780")) () ")")))))) (; ";")) (} "}")) (else_clause "else {\n    piVar10 = ppiVar14[1];\n    bVar1 = false;\n    piVar17 = piVar10;\n    do {\n      piVar23 = piVar17 + 1;\n      piVar17 = piVar17 + 3;\n      if (*(char *)piVar23 == '@') {\n        bVar1 = true;\n      }\n    } while (piVar10 + (int)piVar24 * 3 != piVar17);\n    piVar17 = (int *)0x0;\n    uVar21 = 0;\n    iVar4 = 0;\nLAB_000993bc:\n    piVar10 = (int *)((int)piVar10 + (int)piVar17);\n    if (!bVar1) {\n      if (*(char *)((int)piVar10 + 5) == '\0') goto LAB_0009939c;\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\n      if (iVar19 != 0) goto LAB_000993d8;\n      if (bVar12 != 2) goto LAB_00099394;\n      if (iVar4 == 0) {\n        iVar19 = 0;\n      }\n      else {\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }\n      piVar17 = (int *)0x1;\n      ppiVar14[5] = (int *)0x1;\n      piVar20 = *(int **)(pcVar11 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar20 + -0x1de2);\n      *(undefined4 *)((int)ppiVar14[4] + iVar19) = 1;\n      pbVar16 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1;\n      *(undefined8 *)(ppiVar14 + 10) = uVar30;\n      ppiVar14[0xd] = (int *)0x1;\n      ppiVar14[0xc] = (int *)0x0;\n      ppiVar14[0xe] = (int *)0x1;\n      ppbVar5 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar10 + 5) == '\0') {\nLAB_0009939c:\n      uVar22 = uVar21;\n      if ((int)piVar24 <= iVar4 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\nLAB_000993d8:\n      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar24 = ppiVar14[4];\n      uVar22 = uVar21 + 2;\n      *(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;\n      *(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';\n      piVar24[iVar4 * 2] = (int)uVar22 >> 1;\n      *(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;\n      piVar24 = *ppiVar14;\n      uVar21 = uVar22;\n      if ((int)piVar24 <= iVar4 + 1) {\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }\n    piVar17 = piVar17 + 3;\n    if ((int)uVar21 < 0x28) goto code_r0x000993b8;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099544:\n    pbVar16 = (byte *)(iVar4 + 1);\n    piVar24 = (int *)sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4);\n    ppiVar14[6] = piVar24;\n    if (piVar24 != (int *)0x0) {\n      uVar22 = (int)uVar21 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar5 = (byte **)&DAT_00000007;\n  }" (else "else") (compound_statement "{\n    piVar10 = ppiVar14[1];\n    bVar1 = false;\n    piVar17 = piVar10;\n    do {\n      piVar23 = piVar17 + 1;\n      piVar17 = piVar17 + 3;\n      if (*(char *)piVar23 == '@') {\n        bVar1 = true;\n      }\n    } while (piVar10 + (int)piVar24 * 3 != piVar17);\n    piVar17 = (int *)0x0;\n    uVar21 = 0;\n    iVar4 = 0;\nLAB_000993bc:\n    piVar10 = (int *)((int)piVar10 + (int)piVar17);\n    if (!bVar1) {\n      if (*(char *)((int)piVar10 + 5) == '\0') goto LAB_0009939c;\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\n      if (iVar19 != 0) goto LAB_000993d8;\n      if (bVar12 != 2) goto LAB_00099394;\n      if (iVar4 == 0) {\n        iVar19 = 0;\n      }\n      else {\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }\n      piVar17 = (int *)0x1;\n      ppiVar14[5] = (int *)0x1;\n      piVar20 = *(int **)(pcVar11 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar20 + -0x1de2);\n      *(undefined4 *)((int)ppiVar14[4] + iVar19) = 1;\n      pbVar16 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1;\n      *(undefined8 *)(ppiVar14 + 10) = uVar30;\n      ppiVar14[0xd] = (int *)0x1;\n      ppiVar14[0xc] = (int *)0x0;\n      ppiVar14[0xe] = (int *)0x1;\n      ppbVar5 = (byte **)0x0;\n      goto LAB_000994e0;\n    }\n    if (*(char *)((int)piVar10 + 5) == '\0') {\nLAB_0009939c:\n      uVar22 = uVar21;\n      if ((int)piVar24 <= iVar4 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\nLAB_000993d8:\n      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar24 = ppiVar14[4];\n      uVar22 = uVar21 + 2;\n      *(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;\n      *(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';\n      piVar24[iVar4 * 2] = (int)uVar22 >> 1;\n      *(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;\n      piVar24 = *ppiVar14;\n      uVar21 = uVar22;\n      if ((int)piVar24 <= iVar4 + 1) {\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }\n    piVar17 = piVar17 + 3;\n    if ((int)uVar21 < 0x28) goto code_r0x000993b8;\n    ppiVar14[5] = (int *)0x2;\n    ppiVar14[7] = (int *)0x1;\nLAB_00099544:\n    pbVar16 = (byte *)(iVar4 + 1);\n    piVar24 = (int *)sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4);\n    ppiVar14[6] = piVar24;\n    if (piVar24 != (int *)0x0) {\n      uVar22 = (int)uVar21 >> 1;\n      goto LAB_00099480;\n    }\n    ppbVar5 = (byte **)&DAT_00000007;\n  }" ({ "{") (expression_statement "piVar10 = ppiVar14[1];" (assignment_expression "piVar10 = ppiVar14[1]" (identifier "piVar10") (= "=") (subscript_expression "ppiVar14[1]" (identifier "ppiVar14") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "bVar1 = false;" (assignment_expression "bVar1 = false" (identifier "bVar1") (= "=") (false "false")) (; ";")) (expression_statement "piVar17 = piVar10;" (assignment_expression "piVar17 = piVar10" (identifier "piVar17") (= "=") (identifier "piVar10")) (; ";")) (do_statement "do {\n      piVar23 = piVar17 + 1;\n      piVar17 = piVar17 + 3;\n      if (*(char *)piVar23 == '@') {\n        bVar1 = true;\n      }\n    } while (piVar10 + (int)piVar24 * 3 != piVar17);" (do "do") (compound_statement "{\n      piVar23 = piVar17 + 1;\n      piVar17 = piVar17 + 3;\n      if (*(char *)piVar23 == '@') {\n        bVar1 = true;\n      }\n    }" ({ "{") (expression_statement "piVar23 = piVar17 + 1;" (assignment_expression "piVar23 = piVar17 + 1" (identifier "piVar23") (= "=") (binary_expression "piVar17 + 1" (identifier "piVar17") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "piVar17 = piVar17 + 3;" (assignment_expression "piVar17 = piVar17 + 3" (identifier "piVar17") (= "=") (binary_expression "piVar17 + 3" (identifier "piVar17") (+ "+") (number_literal "3"))) (; ";")) (if_statement "if (*(char *)piVar23 == '@') {\n        bVar1 = true;\n      }" (if "if") (parenthesized_expression "(*(char *)piVar23 == '@')" (( "(") (binary_expression "*(char *)piVar23 == '@'" (pointer_expression "*(char *)piVar23" (* "*") (cast_expression "(char *)piVar23" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "piVar23"))) (== "==") (char_literal "'@'" (' "'") (character "@") (' "'"))) () ")")) (compound_statement "{\n        bVar1 = true;\n      }" ({ "{") (expression_statement "bVar1 = true;" (assignment_expression "bVar1 = true" (identifier "bVar1") (= "=") (true "true")) (; ";")) (} "}"))) (} "}")) (while "while") (parenthesized_expression "(piVar10 + (int)piVar24 * 3 != piVar17)" (( "(") (binary_expression "piVar10 + (int)piVar24 * 3 != piVar17" (binary_expression "piVar10 + (int)piVar24 * 3" (identifier "piVar10") (+ "+") (binary_expression "(int)piVar24 * 3" (cast_expression "(int)piVar24" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar24")) (* "*") (number_literal "3"))) (!= "!=") (identifier "piVar17")) () ")")) (; ";")) (expression_statement "piVar17 = (int *)0x0;" (assignment_expression "piVar17 = (int *)0x0" (identifier "piVar17") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "uVar21 = 0;" (assignment_expression "uVar21 = 0" (identifier "uVar21") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar4 = 0;" (assignment_expression "iVar4 = 0" (identifier "iVar4") (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_000993bc:\n    piVar10 = (int *)((int)piVar10 + (int)piVar17);" (statement_identifier "LAB_000993bc") (: ":") (expression_statement "piVar10 = (int *)((int)piVar10 + (int)piVar17);" (assignment_expression "piVar10 = (int *)((int)piVar10 + (int)piVar17)" (identifier "piVar10") (= "=") (cast_expression "(int *)((int)piVar10 + (int)piVar17)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar10 + (int)piVar17)" (( "(") (binary_expression "(int)piVar10 + (int)piVar17" (cast_expression "(int)piVar10" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar10")) (+ "+") (cast_expression "(int)piVar17" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar17"))) () ")")))) (; ";"))) (if_statement "if (!bVar1) {\n      if (*(char *)((int)piVar10 + 5) == '\0') goto LAB_0009939c;\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\n      if (iVar19 != 0) goto LAB_000993d8;\n      if (bVar12 != 2) goto LAB_00099394;\n      if (iVar4 == 0) {\n        iVar19 = 0;\n      }\n      else {\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }\n      piVar17 = (int *)0x1;\n      ppiVar14[5] = (int *)0x1;\n      piVar20 = *(int **)(pcVar11 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar20 + -0x1de2);\n      *(undefined4 *)((int)ppiVar14[4] + iVar19) = 1;\n      pbVar16 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1;\n      *(undefined8 *)(ppiVar14 + 10) = uVar30;\n      ppiVar14[0xd] = (int *)0x1;\n      ppiVar14[0xc] = (int *)0x0;\n      ppiVar14[0xe] = (int *)0x1;\n      ppbVar5 = (byte **)0x0;\n      goto LAB_000994e0;\n    }" (if "if") (parenthesized_expression "(!bVar1)" (( "(") (unary_expression "!bVar1" (! "!") (identifier "bVar1")) () ")")) (compound_statement "{\n      if (*(char *)((int)piVar10 + 5) == '\0') goto LAB_0009939c;\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\n      if (iVar19 != 0) goto LAB_000993d8;\n      if (bVar12 != 2) goto LAB_00099394;\n      if (iVar4 == 0) {\n        iVar19 = 0;\n      }\n      else {\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }\n      piVar17 = (int *)0x1;\n      ppiVar14[5] = (int *)0x1;\n      piVar20 = *(int **)(pcVar11 + 0xc23f4);\n      uVar30 = *(undefined8 *)(piVar20 + -0x1de2);\n      *(undefined4 *)((int)ppiVar14[4] + iVar19) = 1;\n      pbVar16 = (byte *)0x0;\n      *(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1;\n      *(undefined8 *)(ppiVar14 + 10) = uVar30;\n      ppiVar14[0xd] = (int *)0x1;\n      ppiVar14[0xc] = (int *)0x0;\n      ppiVar14[0xe] = (int *)0x1;\n      ppbVar5 = (byte **)0x0;\n      goto LAB_000994e0;\n    }" ({ "{") (if_statement "if (*(char *)((int)piVar10 + 5) == '\0') goto LAB_0009939c;" (if "if") (parenthesized_expression "(*(char *)((int)piVar10 + 5) == '\0')" (( "(") (binary_expression "*(char *)((int)piVar10 + 5) == '\0'" (pointer_expression "*(char *)((int)piVar10 + 5)" (* "*") (cast_expression "(char *)((int)piVar10 + 5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar10 + 5)" (( "(") (binary_expression "(int)piVar10 + 5" (cast_expression "(int)piVar10" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar10")) (+ "+") (number_literal "5")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (goto_statement "goto LAB_0009939c;" (goto "goto") (statement_identifier "LAB_0009939c") (; ";"))) (expression_statement "iVar19 = *piVar10;" (assignment_expression "iVar19 = *piVar10" (identifier "iVar19") (= "=") (pointer_expression "*piVar10" (* "*") (identifier "piVar10"))) (; ";")) (expression_statement "bVar12 = *(byte *)(piVar10 + 1);" (assignment_expression "bVar12 = *(byte *)(piVar10 + 1)" (identifier "bVar12") (= "=") (pointer_expression "*(byte *)(piVar10 + 1)" (* "*") (cast_expression "(byte *)(piVar10 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar10 + 1)" (( "(") (binary_expression "piVar10 + 1" (identifier "piVar10") (+ "+") (number_literal "1")) () ")"))))) (; ";")) (if_statement "if (iVar19 != 0) goto LAB_000993d8;" (if "if") (parenthesized_expression "(iVar19 != 0)" (( "(") (binary_expression "iVar19 != 0" (identifier "iVar19") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000993d8;" (goto "goto") (statement_identifier "LAB_000993d8") (; ";"))) (if_statement "if (bVar12 != 2) goto LAB_00099394;" (if "if") (parenthesized_expression "(bVar12 != 2)" (( "(") (binary_expression "bVar12 != 2" (identifier "bVar12") (!= "!=") (number_literal "2")) () ")")) (goto_statement "goto LAB_00099394;" (goto "goto") (statement_identifier "LAB_00099394") (; ";"))) (if_statement "if (iVar4 == 0) {\n        iVar19 = 0;\n      }\n      else {\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }" (if "if") (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        iVar19 = 0;\n      }" ({ "{") (expression_statement "iVar19 = 0;" (assignment_expression "iVar19 = 0" (identifier "iVar19") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }" (else "else") (compound_statement "{\n        iVar7 = 0;\n        do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);\n        iVar19 = iVar19 * 8;\n      }" ({ "{") (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" (identifier "iVar7") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        } while (iVar19 != iVar4);" (do "do") (compound_statement "{\n          iVar19 = iVar7 + 1;\n          ppiVar14[4][iVar7 * 2] = 0;\n          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;\n          iVar7 = iVar19;\n        }" ({ "{") (expression_statement "iVar19 = iVar7 + 1;" (assignment_expression "iVar19 = iVar7 + 1" (identifier "iVar19") (= "=") (binary_expression "iVar7 + 1" (identifier "iVar7") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "ppiVar14[4][iVar7 * 2] = 0;" (assignment_expression "ppiVar14[4][iVar7 * 2] = 0" (subscript_expression "ppiVar14[4][iVar7 * 2]" (subscript_expression "ppiVar14[4]" (identifier "ppiVar14") ([ "[") (number_literal "4") (] "]")) ([ "[") (binary_expression "iVar7 * 2" (identifier "iVar7") (* "*") (number_literal "2")) (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;" (assignment_expression "*(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0" (pointer_expression "*(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1)" (* "*") (cast_expression "(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(ppiVar14[4] + iVar7 * 2 + 1)" (( "(") (binary_expression "ppiVar14[4] + iVar7 * 2 + 1" (binary_expression "ppiVar14[4] + iVar7 * 2" (subscript_expression "ppiVar14[4]" (identifier "ppiVar14") ([ "[") (number_literal "4") (] "]")) (+ "+") (binary_expression "iVar7 * 2" (identifier "iVar7") (* "*") (number_literal "2"))) (+ "+") (number_literal "1")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar7 = iVar19;" (assignment_expression "iVar7 = iVar19" (identifier "iVar7") (= "=") (identifier "iVar19")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar19 != iVar4)" (( "(") (binary_expression "iVar19 != iVar4" (identifier "iVar19") (!= "!=") (identifier "iVar4")) () ")")) (; ";")) (expression_statement "iVar19 = iVar19 * 8;" (assignment_expression "iVar19 = iVar19 * 8" (identifier "iVar19") (= "=") (binary_expression "iVar19 * 8" (identifier "iVar19") (* "*") (number_literal "8"))) (; ";")) (} "}")))) (expression_statement "piVar17 = (int *)0x1;" (assignment_expression "piVar17 = (int *)0x1" (identifier "piVar17") (= "=") (cast_expression "(int *)0x1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "ppiVar14[5] = (int *)0x1;" (assignment_expression "ppiVar14[5] = (int *)0x1" (subscript_expression "ppiVar14[5]" (identifier "ppiVar14") ([ "[") (number_literal "5") (] "]")) (= "=") (cast_expression "(int *)0x1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "piVar20 = *(int **)(pcVar11 + 0xc23f4);" (assignment_expression "piVar20 = *(int **)(pcVar11 + 0xc23f4)" (identifier "piVar20") (= "=") (pointer_expression "*(int **)(pcVar11 + 0xc23f4)" (* "*") (cast_expression "(int **)(pcVar11 + 0xc23f4)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar11 + 0xc23f4)" (( "(") (binary_expression "pcVar11 + 0xc23f4" (identifier "pcVar11") (+ "+") (number_literal "0xc23f4")) () ")"))))) (; ";")) (expression_statement "uVar30 = *(undefined8 *)(piVar20 + -0x1de2);" (assignment_expression "uVar30 = *(undefined8 *)(piVar20 + -0x1de2)" (identifier "uVar30") (= "=") (pointer_expression "*(undefined8 *)(piVar20 + -0x1de2)" (* "*") (cast_expression "(undefined8 *)(piVar20 + -0x1de2)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar20 + -0x1de2)" (( "(") (binary_expression "piVar20 + -0x1de2" (identifier "piVar20") (+ "+") (number_literal "-0x1de2")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)((int)ppiVar14[4] + iVar19) = 1;" (assignment_expression "*(undefined4 *)((int)ppiVar14[4] + iVar19) = 1" (pointer_expression "*(undefined4 *)((int)ppiVar14[4] + iVar19)" (* "*") (cast_expression "(undefined4 *)((int)ppiVar14[4] + iVar19)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppiVar14[4] + iVar19)" (( "(") (binary_expression "(int)ppiVar14[4] + iVar19" (cast_expression "(int)ppiVar14[4]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "ppiVar14[4]" (identifier "ppiVar14") ([ "[") (number_literal "4") (] "]"))) (+ "+") (identifier "iVar19")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "pbVar16 = (byte *)0x0;" (assignment_expression "pbVar16 = (byte *)0x0" (identifier "pbVar16") (= "=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "*(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1;" (assignment_expression "*(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1" (pointer_expression "*(undefined1 *)((int)ppiVar14[4] + iVar19 + 4)" (* "*") (cast_expression "(undefined1 *)((int)ppiVar14[4] + iVar19 + 4)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppiVar14[4] + iVar19 + 4)" (( "(") (binary_expression "(int)ppiVar14[4] + iVar19 + 4" (binary_expression "(int)ppiVar14[4] + iVar19" (cast_expression "(int)ppiVar14[4]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "ppiVar14[4]" (identifier "ppiVar14") ([ "[") (number_literal "4") (] "]"))) (+ "+") (identifier "iVar19")) (+ "+") (number_literal "4")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined8 *)(ppiVar14 + 10) = uVar30;" (assignment_expression "*(undefined8 *)(ppiVar14 + 10) = uVar30" (pointer_expression "*(undefined8 *)(ppiVar14 + 10)" (* "*") (cast_expression "(undefined8 *)(ppiVar14 + 10)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(ppiVar14 + 10)" (( "(") (binary_expression "ppiVar14 + 10" (identifier "ppiVar14") (+ "+") (number_literal "10")) () ")")))) (= "=") (identifier "uVar30")) (; ";")) (expression_statement "ppiVar14[0xd] = (int *)0x1;" (assignment_expression "ppiVar14[0xd] = (int *)0x1" (subscript_expression "ppiVar14[0xd]" (identifier "ppiVar14") ([ "[") (number_literal "0xd") (] "]")) (= "=") (cast_expression "(int *)0x1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "ppiVar14[0xc] = (int *)0x0;" (assignment_expression "ppiVar14[0xc] = (int *)0x0" (subscript_expression "ppiVar14[0xc]" (identifier "ppiVar14") ([ "[") (number_literal "0xc") (] "]")) (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "ppiVar14[0xe] = (int *)0x1;" (assignment_expression "ppiVar14[0xe] = (int *)0x1" (subscript_expression "ppiVar14[0xe]" (identifier "ppiVar14") ([ "[") (number_literal "0xe") (] "]")) (= "=") (cast_expression "(int *)0x1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "ppbVar5 = (byte **)0x0;" (assignment_expression "ppbVar5 = (byte **)0x0" (identifier "ppbVar5") (= "=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_000994e0;" (goto "goto") (statement_identifier "LAB_000994e0") (; ";")) (} "}"))) (if_statement "if (*(char *)((int)piVar10 + 5) == '\0') {\nLAB_0009939c:\n      uVar22 = uVar21;\n      if ((int)piVar24 <= iVar4 + 1) goto LAB_00099470;\n    }\n    else {\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\nLAB_000993d8:\n      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar24 = ppiVar14[4];\n      uVar22 = uVar21 + 2;\n      *(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;\n      *(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';\n      piVar24[iVar4 * 2] = (int)uVar22 >> 1;\n      *(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;\n      piVar24 = *ppiVar14;\n      uVar21 = uVar22;\n      if ((int)piVar24 <= iVar4 + 1) {\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }" (if "if") (parenthesized_expression "(*(char *)((int)piVar10 + 5) == '\0')" (( "(") (binary_expression "*(char *)((int)piVar10 + 5) == '\0'" (pointer_expression "*(char *)((int)piVar10 + 5)" (* "*") (cast_expression "(char *)((int)piVar10 + 5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar10 + 5)" (( "(") (binary_expression "(int)piVar10 + 5" (cast_expression "(int)piVar10" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar10")) (+ "+") (number_literal "5")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\nLAB_0009939c:\n      uVar22 = uVar21;\n      if ((int)piVar24 <= iVar4 + 1) goto LAB_00099470;\n    }" ({ "{") (labeled_statement "LAB_0009939c:\n      uVar22 = uVar21;" (statement_identifier "LAB_0009939c") (: ":") (expression_statement "uVar22 = uVar21;" (assignment_expression "uVar22 = uVar21" (identifier "uVar22") (= "=") (identifier "uVar21")) (; ";"))) (if_statement "if ((int)piVar24 <= iVar4 + 1) goto LAB_00099470;" (if "if") (parenthesized_expression "((int)piVar24 <= iVar4 + 1)" (( "(") (binary_expression "(int)piVar24 <= iVar4 + 1" (cast_expression "(int)piVar24" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar24")) (<= "<=") (binary_expression "iVar4 + 1" (identifier "iVar4") (+ "+") (number_literal "1"))) () ")")) (goto_statement "goto LAB_00099470;" (goto "goto") (statement_identifier "LAB_00099470") (; ";"))) (} "}")) (else_clause "else {\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\nLAB_000993d8:\n      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar24 = ppiVar14[4];\n      uVar22 = uVar21 + 2;\n      *(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;\n      *(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';\n      piVar24[iVar4 * 2] = (int)uVar22 >> 1;\n      *(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;\n      piVar24 = *ppiVar14;\n      uVar21 = uVar22;\n      if ((int)piVar24 <= iVar4 + 1) {\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }" (else "else") (compound_statement "{\n      iVar19 = *piVar10;\n      bVar12 = *(byte *)(piVar10 + 1);\nLAB_000993d8:\n      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }\n      piVar24 = ppiVar14[4];\n      uVar22 = uVar21 + 2;\n      *(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;\n      *(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';\n      piVar24[iVar4 * 2] = (int)uVar22 >> 1;\n      *(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;\n      piVar24 = *ppiVar14;\n      uVar21 = uVar22;\n      if ((int)piVar24 <= iVar4 + 1) {\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }\n    }" ({ "{") (expression_statement "iVar19 = *piVar10;" (assignment_expression "iVar19 = *piVar10" (identifier "iVar19") (= "=") (pointer_expression "*piVar10" (* "*") (identifier "piVar10"))) (; ";")) (expression_statement "bVar12 = *(byte *)(piVar10 + 1);" (assignment_expression "bVar12 = *(byte *)(piVar10 + 1)" (identifier "bVar12") (= "=") (pointer_expression "*(byte *)(piVar10 + 1)" (* "*") (cast_expression "(byte *)(piVar10 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar10 + 1)" (( "(") (binary_expression "piVar10 + 1" (identifier "piVar10") (+ "+") (number_literal "1")) () ")"))))) (; ";")) (labeled_statement "LAB_000993d8:\n      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }" (statement_identifier "LAB_000993d8") (: ":") (if_statement "if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }\n      else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }" (if "if") (parenthesized_expression "((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19))" (( "(") (binary_expression "(iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)" (parenthesized_expression "(iVar19 < 1)" (( "(") (binary_expression "iVar19 < 1" (identifier "iVar19") (< "<") (number_literal "1")) () ")")) (|| "||") (parenthesized_expression "((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)" (( "(") (binary_expression "(int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19" (binary_expression "(int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15)" (cast_expression "(int)(uint)(byte)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (call_expression "(uint)(byte)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(byte)" (( "(") (identifier "byte") () ")")))) (* "*") (cast_expression "(code *)((int)ppiVar2 + 0x15)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppiVar2 + 0x15)" (( "(") (binary_expression "(int)ppiVar2 + 0x15" (cast_expression "(int)ppiVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppiVar2")) (+ "+") (number_literal "0x15")) () ")")))) (< "<") (identifier "iVar19")) () ")"))) () ")")) (compound_statement "{\nLAB_00099394:\n        uVar18 = 0x46;\n        if (bVar12 != 0x40) goto LAB_0009939c;\n      }" ({ "{") (labeled_statement "LAB_00099394:\n        uVar18 = 0x46;" (statement_identifier "LAB_00099394") (: ":") (expression_statement "uVar18 = 0x46;" (assignment_expression "uVar18 = 0x46" (identifier "uVar18") (= "=") (number_literal "0x46")) (; ";"))) (if_statement "if (bVar12 != 0x40) goto LAB_0009939c;" (if "if") (parenthesized_expression "(bVar12 != 0x40)" (( "(") (binary_expression "bVar12 != 0x40" (identifier "bVar12") (!= "!=") (number_literal "0x40")) () ")")) (goto_statement "goto LAB_0009939c;" (goto "goto") (statement_identifier "LAB_0009939c") (; ";"))) (} "}")) (else_clause "else if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }" (else "else") (if_statement "if (bVar12 == 8) {\n        uVar18 = 0x42;\n      }\n      else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }" (if "if") (parenthesized_expression "(bVar12 == 8)" (( "(") (binary_expression "bVar12 == 8" (identifier "bVar12") (== "==") (number_literal "8")) () ")")) (compound_statement "{\n        uVar18 = 0x42;\n      }" ({ "{") (expression_statement "uVar18 = 0x42;" (assignment_expression "uVar18 = 0x42" (identifier "uVar18") (= "=") (number_literal "0x42")) (; ";")) (} "}")) (else_clause "else if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }" (else "else") (if_statement "if (bVar12 < 9) {\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }\n      else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }" (if "if") (parenthesized_expression "(bVar12 < 9)" (( "(") (binary_expression "bVar12 < 9" (identifier "bVar12") (< "<") (number_literal "9")) () ")")) (compound_statement "{\n        uVar18 = 0x41;\n        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;\n      }" ({ "{") (expression_statement "uVar18 = 0x41;" (assignment_expression "uVar18 = 0x41" (identifier "uVar18") (= "=") (number_literal "0x41")) (; ";")) (if_statement "if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;" (if "if") (parenthesized_expression "((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4))" (( "(") (binary_expression "(bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)" (parenthesized_expression "(bVar12 != 2)" (( "(") (binary_expression "bVar12 != 2" (identifier "bVar12") (!= "!=") (number_literal "2")) () ")")) (&& "&&") (parenthesized_expression "(uVar18 = 0x45, bVar12 != 4)" (( "(") (comma_expression "uVar18 = 0x45, bVar12 != 4" (assignment_expression "uVar18 = 0x45" (identifier "uVar18") (= "=") (number_literal "0x45")) (, ",") (binary_expression "bVar12 != 4" (identifier "bVar12") (!= "!=") (number_literal "4"))) () ")"))) () ")")) (goto_statement "goto LAB_0009939c;" (goto "goto") (statement_identifier "LAB_0009939c") (; ";"))) (} "}")) (else_clause "else {\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }" (else "else") (compound_statement "{\n        uVar18 = 0x44;\n        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;\n      }" ({ "{") (expression_statement "uVar18 = 0x44;" (assignment_expression "uVar18 = 0x44" (identifier "uVar18") (= "=") (number_literal "0x44")) (; ";")) (if_statement "if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           ) goto LAB_0009939c;" (if "if") (parenthesized_expression "((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))\n           )" (( "(") (binary_expression "(bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))" (parenthesized_expression "(bVar12 != 0x20)" (( "(") (binary_expression "bVar12 != 0x20" (identifier "bVar12") (!= "!=") (number_literal "0x20")) () ")")) (&& "&&") (parenthesized_expression "((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))" (( "(") (parenthesized_expression "(uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10))" (( "(") (comma_expression "uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)" (assignment_expression "uVar18 = 0x46" (identifier "uVar18") (= "=") (number_literal "0x46")) (, ",") (binary_expression "bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)" (binary_expression "bVar12 != 0x40" (identifier "bVar12") (!= "!=") (number_literal "0x40")) (&& "&&") (parenthesized_expression "(uVar18 = 0x43, bVar12 != 0x10)" (( "(") (comma_expression "uVar18 = 0x43, bVar12 != 0x10" (assignment_expression "uVar18 = 0x43" (identifier "uVar18") (= "=") (number_literal "0x43")) (, ",") (binary_expression "bVar12 != 0x10" (identifier "bVar12") (!= "!=") (number_literal "0x10"))) () ")")))) () ")")) () ")"))) () ")")) (goto_statement "goto LAB_0009939c;" (goto "goto") (statement_identifier "LAB_0009939c") (; ";"))) (} "}"))))))))) (expression_statement "piVar24 = ppiVar14[4];" (assignment_expression "piVar24 = ppiVar14[4]" (identifier "piVar24") (= "=") (subscript_expression "ppiVar14[4]" (identifier "ppiVar14") ([ "[") (number_literal "4") (] "]"))) (; ";")) (expression_statement "uVar22 = uVar21 + 2;" (assignment_expression "uVar22 = uVar21 + 2" (identifier "uVar22") (= "=") (binary_expression "uVar21 + 2" (identifier "uVar21") (+ "+") (number_literal "2"))) (; ";")) (expression_statement "*(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;" (assignment_expression "*(undefined1 *)((int)&uStack_120 + uVar21) = uVar18" (pointer_expression "*(undefined1 *)((int)&uStack_120 + uVar21)" (* "*") (cast_expression "(undefined1 *)((int)&uStack_120 + uVar21)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&uStack_120 + uVar21)" (( "(") (binary_expression "(int)&uStack_120 + uVar21" (cast_expression "(int)&uStack_120" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&uStack_120" (& "&") (identifier "uStack_120"))) (+ "+") (identifier "uVar21")) () ")")))) (= "=") (identifier "uVar18")) (; ";")) (expression_statement "*(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';" (assignment_expression "*(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/'" (pointer_expression "*(char *)((int)&uStack_120 + uVar21 + 1)" (* "*") (cast_expression "(char *)((int)&uStack_120 + uVar21 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&uStack_120 + uVar21 + 1)" (( "(") (binary_expression "(int)&uStack_120 + uVar21 + 1" (binary_expression "(int)&uStack_120 + uVar21" (cast_expression "(int)&uStack_120" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&uStack_120" (& "&") (identifier "uStack_120"))) (+ "+") (identifier "uVar21")) (+ "+") (number_literal "1")) () ")")))) (= "=") (binary_expression "(char)*piVar10 + '/'" (cast_expression "(char)*piVar10" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (pointer_expression "*piVar10" (* "*") (identifier "piVar10"))) (+ "+") (char_literal "'/'" (' "'") (character "/") (' "'")))) (; ";")) (expression_statement "piVar24[iVar4 * 2] = (int)uVar22 >> 1;" (assignment_expression "piVar24[iVar4 * 2] = (int)uVar22 >> 1" (subscript_expression "piVar24[iVar4 * 2]" (identifier "piVar24") ([ "[") (binary_expression "iVar4 * 2" (identifier "iVar4") (* "*") (number_literal "2")) (] "]")) (= "=") (binary_expression "(int)uVar22 >> 1" (cast_expression "(int)uVar22" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar22")) (>> ">>") (number_literal "1"))) (; ";")) (expression_statement "*(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;" (assignment_expression "*(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1" (pointer_expression "*(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1)" (* "*") (cast_expression "(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(ppiVar14[4] + iVar4 * 2 + 1)" (( "(") (binary_expression "ppiVar14[4] + iVar4 * 2 + 1" (binary_expression "ppiVar14[4] + iVar4 * 2" (subscript_expression "ppiVar14[4]" (identifier "ppiVar14") ([ "[") (number_literal "4") (] "]")) (+ "+") (binary_expression "iVar4 * 2" (identifier "iVar4") (* "*") (number_literal "2"))) (+ "+") (number_literal "1")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "piVar24 = *ppiVar14;" (assignment_expression "piVar24 = *ppiVar14" (identifier "piVar24") (= "=") (pointer_expression "*ppiVar14" (* "*") (identifier "ppiVar14"))) (; ";")) (expression_statement "uVar21 = uVar22;" (assignment_expression "uVar21 = uVar22" (identifier "uVar21") (= "=") (identifier "uVar22")) (; ";")) (if_statement "if ((int)piVar24 <= iVar4 + 1) {\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }" (if "if") (parenthesized_expression "((int)piVar24 <= iVar4 + 1)" (( "(") (binary_expression "(int)piVar24 <= iVar4 + 1" (cast_expression "(int)piVar24" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar24")) (<= "<=") (binary_expression "iVar4 + 1" (identifier "iVar4") (+ "+") (number_literal "1"))) () ")")) (compound_statement "{\nLAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);\n        ppiVar14[5] = (int *)0x2;\n        ppiVar14[7] = (int *)0x1;\n        uVar21 = uVar22;\n        if (uVar22 == 0) goto LAB_00099480;\n        goto LAB_00099544;\n      }" ({ "{") (labeled_statement "LAB_00099470:\n        pbVar16 = (byte *)(iVar4 + 1);" (statement_identifier "LAB_00099470") (: ":") (expression_statement "pbVar16 = (byte *)(iVar4 + 1);" (assignment_expression "pbVar16 = (byte *)(iVar4 + 1)" (identifier "pbVar16") (= "=") (cast_expression "(byte *)(iVar4 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 1)" (( "(") (binary_expression "iVar4 + 1" (identifier "iVar4") (+ "+") (number_literal "1")) () ")")))) (; ";"))) (expression_statement "ppiVar14[5] = (int *)0x2;" (assignment_expression "ppiVar14[5] = (int *)0x2" (subscript_expression "ppiVar14[5]" (identifier "ppiVar14") ([ "[") (number_literal "5") (] "]")) (= "=") (cast_expression "(int *)0x2" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x2"))) (; ";")) (expression_statement "ppiVar14[7] = (int *)0x1;" (assignment_expression "ppiVar14[7] = (int *)0x1" (subscript_expression "ppiVar14[7]" (identifier "ppiVar14") ([ "[") (number_literal "7") (] "]")) (= "=") (cast_expression "(int *)0x1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "uVar21 = uVar22;" (assignment_expression "uVar21 = uVar22" (identifier "uVar21") (= "=") (identifier "uVar22")) (; ";")) (if_statement "if (uVar22 == 0) goto LAB_00099480;" (if "if") (parenthesized_expression "(uVar22 == 0)" (( "(") (binary_expression "uVar22 == 0" (identifier "uVar22") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00099480;" (goto "goto") (statement_identifier "LAB_00099480") (; ";"))) (goto_statement "goto LAB_00099544;" (goto "goto") (statement_identifier "LAB_00099544") (; ";")) (} "}"))) (} "}")))) (expression_statement "piVar17 = piVar17 + 3;" (assignment_expression "piVar17 = piVar17 + 3" (identifier "piVar17") (= "=") (binary_expression "piVar17 + 3" (identifier "piVar17") (+ "+") (number_literal "3"))) (; ";")) (if_statement "if ((int)uVar21 < 0x28) goto code_r0x000993b8;" (if "if") (parenthesized_expression "((int)uVar21 < 0x28)" (( "(") (binary_expression "(int)uVar21 < 0x28" (cast_expression "(int)uVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar21")) (< "<") (number_literal "0x28")) () ")")) (goto_statement "goto code_r0x000993b8;" (goto "goto") (statement_identifier "code_r0x000993b8") (; ";"))) (expression_statement "ppiVar14[5] = (int *)0x2;" (assignment_expression "ppiVar14[5] = (int *)0x2" (subscript_expression "ppiVar14[5]" (identifier "ppiVar14") ([ "[") (number_literal "5") (] "]")) (= "=") (cast_expression "(int *)0x2" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x2"))) (; ";")) (expression_statement "ppiVar14[7] = (int *)0x1;" (assignment_expression "ppiVar14[7] = (int *)0x1" (subscript_expression "ppiVar14[7]" (identifier "ppiVar14") ([ "[") (number_literal "7") (] "]")) (= "=") (cast_expression "(int *)0x1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (labeled_statement "LAB_00099544:\n    pbVar16 = (byte *)(iVar4 + 1);" (statement_identifier "LAB_00099544") (: ":") (expression_statement "pbVar16 = (byte *)(iVar4 + 1);" (assignment_expression "pbVar16 = (byte *)(iVar4 + 1)" (identifier "pbVar16") (= "=") (cast_expression "(byte *)(iVar4 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 1)" (( "(") (binary_expression "iVar4 + 1" (identifier "iVar4") (+ "+") (number_literal "1")) () ")")))) (; ";"))) (expression_statement "piVar24 = (int *)sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4);" (assignment_expression "piVar24 = (int *)sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4)" (identifier "piVar24") (= "=") (cast_expression "(int *)sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4)" (identifier "sqlite3_mprintf") (argument_list "(*(int *)(pcVar11 + 0xc2348) + 0x71f4)" (( "(") (binary_expression "*(int *)(pcVar11 + 0xc2348) + 0x71f4" (pointer_expression "*(int *)(pcVar11 + 0xc2348)" (* "*") (cast_expression "(int *)(pcVar11 + 0xc2348)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar11 + 0xc2348)" (( "(") (binary_expression "pcVar11 + 0xc2348" (identifier "pcVar11") (+ "+") (number_literal "0xc2348")) () ")")))) (+ "+") (number_literal "0x71f4")) () ")"))))) (; ";")) (expression_statement "ppiVar14[6] = piVar24;" (assignment_expression "ppiVar14[6] = piVar24" (subscript_expression "ppiVar14[6]" (identifier "ppiVar14") ([ "[") (number_literal "6") (] "]")) (= "=") (identifier "piVar24")) (; ";")) (if_statement "if (piVar24 != (int *)0x0) {\n      uVar22 = (int)uVar21 >> 1;\n      goto LAB_00099480;\n    }" (if "if") (parenthesized_expression "(piVar24 != (int *)0x0)" (( "(") (binary_expression "piVar24 != (int *)0x0" (identifier "piVar24") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      uVar22 = (int)uVar21 >> 1;\n      goto LAB_00099480;\n    }" ({ "{") (expression_statement "uVar22 = (int)uVar21 >> 1;" (assignment_expression "uVar22 = (int)uVar21 >> 1" (identifier "uVar22") (= "=") (binary_expression "(int)uVar21 >> 1" (cast_expression "(int)uVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar21")) (>> ">>") (number_literal "1"))) (; ";")) (goto_statement "goto LAB_00099480;" (goto "goto") (statement_identifier "LAB_00099480") (; ";")) (} "}"))) (expression_statement "ppbVar5 = (byte **)&DAT_00000007;" (assignment_expression "ppbVar5 = (byte **)&DAT_00000007" (identifier "ppbVar5") (= "=") (cast_expression "(byte **)&DAT_00000007" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "&DAT_00000007" (& "&") (identifier "DAT_00000007")))) (; ";")) (} "}")))) (labeled_statement "LAB_000994e0:\n  if (iStack_f4 == *piVar26) {\n    return ppbVar5;\n  }" (statement_identifier "LAB_000994e0") (: ":") (if_statement "if (iStack_f4 == *piVar26) {\n    return ppbVar5;\n  }" (if "if") (parenthesized_expression "(iStack_f4 == *piVar26)" (( "(") (binary_expression "iStack_f4 == *piVar26" (identifier "iStack_f4") (== "==") (pointer_expression "*piVar26" (* "*") (identifier "piVar26"))) () ")")) (compound_statement "{\n    return ppbVar5;\n  }" ({ "{") (return_statement "return ppbVar5;" (return "return") (identifier "ppbVar5") (; ";")) (} "}")))) (expression_statement "pcVar11 = *(code **)(pcStack_128 + -0x7ba0);" (assignment_expression "pcVar11 = *(code **)(pcStack_128 + -0x7ba0)" (identifier "pcVar11") (= "=") (pointer_expression "*(code **)(pcStack_128 + -0x7ba0)" (* "*") (cast_expression "(code **)(pcStack_128 + -0x7ba0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_128 + -0x7ba0)" (( "(") (binary_expression "pcStack_128 + -0x7ba0" (identifier "pcStack_128") (+ "+") (number_literal "-0x7ba0")) () ")"))))) (; ";")) (expression_statement "iVar4 = iStack_f4;" (assignment_expression "iVar4 = iStack_f4" (identifier "iVar4") (= "=") (identifier "iStack_f4")) (; ";")) (expression_statement "(*pcVar11)();" (call_expression "(*pcVar11)()" (parenthesized_expression "(*pcVar11)" (( "(") (pointer_expression "*pcVar11" (* "*") (identifier "pcVar11")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "ppbVar9 = &pbStack_130;" (assignment_expression "ppbVar9 = &pbStack_130" (identifier "ppbVar9") (= "=") (pointer_expression "&pbStack_130" (& "&") (identifier "pbStack_130"))) (; ";")) (expression_statement "puVar25 = *(undefined4 **)(pcVar11 + 0xc2410);" (assignment_expression "puVar25 = *(undefined4 **)(pcVar11 + 0xc2410)" (identifier "puVar25") (= "=") (pointer_expression "*(undefined4 **)(pcVar11 + 0xc2410)" (* "*") (cast_expression "(undefined4 **)(pcVar11 + 0xc2410)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar11 + 0xc2410)" (( "(") (binary_expression "pcVar11 + 0xc2410" (identifier "pcVar11") (+ "+") (number_literal "0xc2410")) () ")"))))) (; ";")) (expression_statement "ppbVar15 = (byte **)*puVar25;" (assignment_expression "ppbVar15 = (byte **)*puVar25" (identifier "ppbVar15") (= "=") (cast_expression "(byte **)*puVar25" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "*puVar25" (* "*") (identifier "puVar25")))) (; ";")) (expression_statement "ppbVar5 = ppbVar15;" (assignment_expression "ppbVar5 = ppbVar15" (identifier "ppbVar5") (= "=") (identifier "ppbVar15")) (; ";")) (expression_statement "pbStack_130 = pbVar16;" (assignment_expression "pbStack_130 = pbVar16" (identifier "pbStack_130") (= "=") (identifier "pbVar16")) (; ";")) (expression_statement "piStack_12c = piVar17;" (assignment_expression "piStack_12c = piVar17" (identifier "piStack_12c") (= "=") (identifier "piVar17")) (; ";")) (if_statement "if ((*(int *)(iVar4 + 0x28) != 0) || (99 < *(int *)(iVar4 + 0x30))) goto LAB_0009967c;" (if "if") (parenthesized_expression "((*(int *)(iVar4 + 0x28) != 0) || (99 < *(int *)(iVar4 + 0x30)))" (( "(") (binary_expression "(*(int *)(iVar4 + 0x28) != 0) || (99 < *(int *)(iVar4 + 0x30))" (parenthesized_expression "(*(int *)(iVar4 + 0x28) != 0)" (( "(") (binary_expression "*(int *)(iVar4 + 0x28) != 0" (pointer_expression "*(int *)(iVar4 + 0x28)" (* "*") (cast_expression "(int *)(iVar4 + 0x28)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x28)" (( "(") (binary_expression "iVar4 + 0x28" (identifier "iVar4") (+ "+") (number_literal "0x28")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(99 < *(int *)(iVar4 + 0x30))" (( "(") (binary_expression "99 < *(int *)(iVar4 + 0x30)" (number_literal "99") (< "<") (pointer_expression "*(int *)(iVar4 + 0x30)" (* "*") (cast_expression "(int *)(iVar4 + 0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x30)" (( "(") (binary_expression "iVar4 + 0x30" (identifier "iVar4") (+ "+") (number_literal "0x30")) () ")"))))) () ")"))) () ")")) (goto_statement "goto LAB_0009967c;" (goto "goto") (statement_identifier "LAB_0009967c") (; ";"))) (expression_statement "piVar24 = (int *)sqlite3_vmprintf();" (assignment_expression "piVar24 = (int *)sqlite3_vmprintf()" (identifier "piVar24") (= "=") (cast_expression "(int *)sqlite3_vmprintf()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "sqlite3_vmprintf()" (identifier "sqlite3_vmprintf") (argument_list "()" (( "(") () ")"))))) (; ";")) (if_statement "if (piVar24 == (int *)0x0) {\nLAB_000996f0:\n    *(undefined4 *)(iVar4 + 0x28) = 7;\n  }\n  else {\n    ppbVar9 = *(byte ***)(iVar4 + 0x2c);\n    if (ppbVar9 == (byte **)0x0) {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);\n    }\n    piVar20 = (int *)(*(int *)(pcVar11 + 0xc1fe0) - 0x741c);\n    iVar19 = sqlite3_mprintf();\n    *(int *)(iVar4 + 0x2c) = iVar19;\n    piVar17 = piVar24;\n    if (iVar19 == 0) goto LAB_000996f0;\n  }" (if "if") (parenthesized_expression "(piVar24 == (int *)0x0)" (( "(") (binary_expression "piVar24 == (int *)0x0" (identifier "piVar24") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_000996f0:\n    *(undefined4 *)(iVar4 + 0x28) = 7;\n  }" ({ "{") (labeled_statement "LAB_000996f0:\n    *(undefined4 *)(iVar4 + 0x28) = 7;" (statement_identifier "LAB_000996f0") (: ":") (expression_statement "*(undefined4 *)(iVar4 + 0x28) = 7;" (assignment_expression "*(undefined4 *)(iVar4 + 0x28) = 7" (pointer_expression "*(undefined4 *)(iVar4 + 0x28)" (* "*") (cast_expression "(undefined4 *)(iVar4 + 0x28)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x28)" (( "(") (binary_expression "iVar4 + 0x28" (identifier "iVar4") (+ "+") (number_literal "0x28")) () ")")))) (= "=") (number_literal "7")) (; ";"))) (} "}")) (else_clause "else {\n    ppbVar9 = *(byte ***)(iVar4 + 0x2c);\n    if (ppbVar9 == (byte **)0x0) {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);\n    }\n    piVar20 = (int *)(*(int *)(pcVar11 + 0xc1fe0) - 0x741c);\n    iVar19 = sqlite3_mprintf();\n    *(int *)(iVar4 + 0x2c) = iVar19;\n    piVar17 = piVar24;\n    if (iVar19 == 0) goto LAB_000996f0;\n  }" (else "else") (compound_statement "{\n    ppbVar9 = *(byte ***)(iVar4 + 0x2c);\n    if (ppbVar9 == (byte **)0x0) {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);\n    }\n    piVar20 = (int *)(*(int *)(pcVar11 + 0xc1fe0) - 0x741c);\n    iVar19 = sqlite3_mprintf();\n    *(int *)(iVar4 + 0x2c) = iVar19;\n    piVar17 = piVar24;\n    if (iVar19 == 0) goto LAB_000996f0;\n  }" ({ "{") (expression_statement "ppbVar9 = *(byte ***)(iVar4 + 0x2c);" (assignment_expression "ppbVar9 = *(byte ***)(iVar4 + 0x2c)" (identifier "ppbVar9") (= "=") (pointer_expression "*(byte ***)(iVar4 + 0x2c)" (* "*") (cast_expression "(byte ***)(iVar4 + 0x2c)" (( "(") (type_descriptor "byte ***" (type_identifier "byte") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "(iVar4 + 0x2c)" (( "(") (binary_expression "iVar4 + 0x2c" (identifier "iVar4") (+ "+") (number_literal "0x2c")) () ")"))))) (; ";")) (if_statement "if (ppbVar9 == (byte **)0x0) {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4);\n    }\n    else {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);\n    }" (if "if") (parenthesized_expression "(ppbVar9 == (byte **)0x0)" (( "(") (binary_expression "ppbVar9 == (byte **)0x0" (identifier "ppbVar9") (== "==") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4);\n    }" ({ "{") (expression_statement "pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4);" (assignment_expression "pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4)" (identifier "pbVar16") (= "=") (cast_expression "(byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4)" (( "(") (binary_expression "*(int *)(pcVar11 + 0xc1fcc) + 0x53f4" (pointer_expression "*(int *)(pcVar11 + 0xc1fcc)" (* "*") (cast_expression "(int *)(pcVar11 + 0xc1fcc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar11 + 0xc1fcc)" (( "(") (binary_expression "pcVar11 + 0xc1fcc" (identifier "pcVar11") (+ "+") (number_literal "0xc1fcc")) () ")")))) (+ "+") (number_literal "0x53f4")) () ")")))) (; ";")) (} "}")) (else_clause "else {\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);\n    }" (else "else") (compound_statement "{\n      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);\n    }" ({ "{") (expression_statement "pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);" (assignment_expression "pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48)" (identifier "pbVar16") (= "=") (cast_expression "(byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48)" (( "(") (binary_expression "*(int *)(pcVar11 + 0xc1fcc) + 0x5c48" (pointer_expression "*(int *)(pcVar11 + 0xc1fcc)" (* "*") (cast_expression "(int *)(pcVar11 + 0xc1fcc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar11 + 0xc1fcc)" (( "(") (binary_expression "pcVar11 + 0xc1fcc" (identifier "pcVar11") (+ "+") (number_literal "0xc1fcc")) () ")")))) (+ "+") (number_literal "0x5c48")) () ")")))) (; ";")) (} "}")))) (expression_statement "piVar20 = (int *)(*(int *)(pcVar11 + 0xc1fe0) - 0x741c);" (assignment_expression "piVar20 = (int *)(*(int *)(pcVar11 + 0xc1fe0) - 0x741c)" (identifier "piVar20") (= "=") (cast_expression "(int *)(*(int *)(pcVar11 + 0xc1fe0) - 0x741c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar11 + 0xc1fe0) - 0x741c)" (( "(") (binary_expression "*(int *)(pcVar11 + 0xc1fe0) - 0x741c" (pointer_expression "*(int *)(pcVar11 + 0xc1fe0)" (* "*") (cast_expression "(int *)(pcVar11 + 0xc1fe0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar11 + 0xc1fe0)" (( "(") (binary_expression "pcVar11 + 0xc1fe0" (identifier "pcVar11") (+ "+") (number_literal "0xc1fe0")) () ")")))) (- "-") (number_literal "0x741c")) () ")")))) (; ";")) (expression_statement "iVar19 = sqlite3_mprintf();" (assignment_expression "iVar19 = sqlite3_mprintf()" (identifier "iVar19") (= "=") (call_expression "sqlite3_mprintf()" (identifier "sqlite3_mprintf") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(int *)(iVar4 + 0x2c) = iVar19;" (assignment_expression "*(int *)(iVar4 + 0x2c) = iVar19" (pointer_expression "*(int *)(iVar4 + 0x2c)" (* "*") (cast_expression "(int *)(iVar4 + 0x2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x2c)" (( "(") (binary_expression "iVar4 + 0x2c" (identifier "iVar4") (+ "+") (number_literal "0x2c")) () ")")))) (= "=") (identifier "iVar19")) (; ";")) (expression_statement "piVar17 = piVar24;" (assignment_expression "piVar17 = piVar24" (identifier "piVar17") (= "=") (identifier "piVar24")) (; ";")) (if_statement "if (iVar19 == 0) goto LAB_000996f0;" (if "if") (parenthesized_expression "(iVar19 == 0)" (( "(") (binary_expression "iVar19 == 0" (identifier "iVar19") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000996f0;" (goto "goto") (statement_identifier "LAB_000996f0") (; ";"))) (} "}")))) (expression_statement "*(int *)(iVar4 + 0x30) = *(int *)(iVar4 + 0x30) + 1;" (assignment_expression "*(int *)(iVar4 + 0x30) = *(int *)(iVar4 + 0x30) + 1" (pointer_expression "*(int *)(iVar4 + 0x30)" (* "*") (cast_expression "(int *)(iVar4 + 0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x30)" (( "(") (binary_expression "iVar4 + 0x30" (identifier "iVar4") (+ "+") (number_literal "0x30")) () ")")))) (= "=") (binary_expression "*(int *)(iVar4 + 0x30) + 1" (pointer_expression "*(int *)(iVar4 + 0x30)" (* "*") (cast_expression "(int *)(iVar4 + 0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + 0x30)" (( "(") (binary_expression "iVar4 + 0x30" (identifier "iVar4") (+ "+") (number_literal "0x30")) () ")")))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "ppbVar5 = ppbVar9;" (assignment_expression "ppbVar5 = ppbVar9" (identifier "ppbVar5") (= "=") (identifier "ppbVar9")) (; ";")) (labeled_statement "LAB_0009967c:\n  ppbVar9 = (byte **)*puVar25;" (statement_identifier "LAB_0009967c") (: ":") (expression_statement "ppbVar9 = (byte **)*puVar25;" (assignment_expression "ppbVar9 = (byte **)*puVar25" (identifier "ppbVar9") (= "=") (cast_expression "(byte **)*puVar25" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "*puVar25" (* "*") (identifier "puVar25")))) (; ";"))) (if_statement "if (ppbVar15 == ppbVar9) {\n    return ppbVar9;\n  }" (if "if") (parenthesized_expression "(ppbVar15 == ppbVar9)" (( "(") (binary_expression "ppbVar15 == ppbVar9" (identifier "ppbVar15") (== "==") (identifier "ppbVar9")) () ")")) (compound_statement "{\n    return ppbVar9;\n  }" ({ "{") (return_statement "return ppbVar9;" (return "return") (identifier "ppbVar9") (; ";")) (} "}"))) (expression_statement "pcVar11 = *(code **)(pcVar11 + 0xc23f4);" (assignment_expression "pcVar11 = *(code **)(pcVar11 + 0xc23f4)" (identifier "pcVar11") (= "=") (pointer_expression "*(code **)(pcVar11 + 0xc23f4)" (* "*") (cast_expression "(code **)(pcVar11 + 0xc23f4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar11 + 0xc23f4)" (( "(") (binary_expression "pcVar11 + 0xc23f4" (identifier "pcVar11") (+ "+") (number_literal "0xc23f4")) () ")"))))) (; ";")) (expression_statement "(*pcVar11)();" (call_expression "(*pcVar11)()" (parenthesized_expression "(*pcVar11)" (( "(") (pointer_expression "*pcVar11" (* "*") (identifier "pcVar11")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "piVar24 = *(int **)(pcVar11 + 0xc231c);" (assignment_expression "piVar24 = *(int **)(pcVar11 + 0xc231c)" (identifier "piVar24") (= "=") (pointer_expression "*(int **)(pcVar11 + 0xc231c)" (* "*") (cast_expression "(int **)(pcVar11 + 0xc231c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar11 + 0xc231c)" (( "(") (binary_expression "pcVar11 + 0xc231c" (identifier "pcVar11") (+ "+") (number_literal "0xc231c")) () ")"))))) (; ";")) (expression_statement "ppbStack_180 = (byte **)0x0;" (assignment_expression "ppbStack_180 = (byte **)0x0" (identifier "ppbStack_180") (= "=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "iVar4 = *piVar24;" (assignment_expression "iVar4 = *piVar24" (identifier "iVar4") (= "=") (pointer_expression "*piVar24" (* "*") (identifier "piVar24"))) (; ";")) (expression_statement "ppbVar9 = (byte **)0x0;" (assignment_expression "ppbVar9 = (byte **)0x0" (identifier "ppbVar9") (= "=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if (ppbVar5 != (byte **)0x0) {\n    if (*(char *)ppbVar5 == '$') {\n      pbVar16 = (byte *)((int)ppbVar5 + 1);\n      ppbVar9 = (byte **)FUN_0008b18c();\n      ppbVar5 = ppbStack_180;\n    }\n    else {\n      iVar19 = *(int *)(pcVar11 + 0xc1eec);\n      *(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01';\n      ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414);\n      if (ppbVar9 == (byte **)0x0) {\n        (**(code **)(pcVar11 + 0xc2074))(piVar17);\n        ppbVar9 = (byte **)0x0;\n      }\n      else {\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }\n    }\n  }" (if "if") (parenthesized_expression "(ppbVar5 != (byte **)0x0)" (( "(") (binary_expression "ppbVar5 != (byte **)0x0" (identifier "ppbVar5") (!= "!=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    if (*(char *)ppbVar5 == '$') {\n      pbVar16 = (byte *)((int)ppbVar5 + 1);\n      ppbVar9 = (byte **)FUN_0008b18c();\n      ppbVar5 = ppbStack_180;\n    }\n    else {\n      iVar19 = *(int *)(pcVar11 + 0xc1eec);\n      *(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01';\n      ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414);\n      if (ppbVar9 == (byte **)0x0) {\n        (**(code **)(pcVar11 + 0xc2074))(piVar17);\n        ppbVar9 = (byte **)0x0;\n      }\n      else {\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }\n    }\n  }" ({ "{") (if_statement "if (*(char *)ppbVar5 == '$') {\n      pbVar16 = (byte *)((int)ppbVar5 + 1);\n      ppbVar9 = (byte **)FUN_0008b18c();\n      ppbVar5 = ppbStack_180;\n    }\n    else {\n      iVar19 = *(int *)(pcVar11 + 0xc1eec);\n      *(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01';\n      ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414);\n      if (ppbVar9 == (byte **)0x0) {\n        (**(code **)(pcVar11 + 0xc2074))(piVar17);\n        ppbVar9 = (byte **)0x0;\n      }\n      else {\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }\n    }" (if "if") (parenthesized_expression "(*(char *)ppbVar5 == '$')" (( "(") (binary_expression "*(char *)ppbVar5 == '$'" (pointer_expression "*(char *)ppbVar5" (* "*") (cast_expression "(char *)ppbVar5" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "ppbVar5"))) (== "==") (char_literal "'$'" (' "'") (character "$") (' "'"))) () ")")) (compound_statement "{\n      pbVar16 = (byte *)((int)ppbVar5 + 1);\n      ppbVar9 = (byte **)FUN_0008b18c();\n      ppbVar5 = ppbStack_180;\n    }" ({ "{") (expression_statement "pbVar16 = (byte *)((int)ppbVar5 + 1);" (assignment_expression "pbVar16 = (byte *)((int)ppbVar5 + 1)" (identifier "pbVar16") (= "=") (cast_expression "(byte *)((int)ppbVar5 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppbVar5 + 1)" (( "(") (binary_expression "(int)ppbVar5 + 1" (cast_expression "(int)ppbVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppbVar5")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "ppbVar9 = (byte **)FUN_0008b18c();" (assignment_expression "ppbVar9 = (byte **)FUN_0008b18c()" (identifier "ppbVar9") (= "=") (cast_expression "(byte **)FUN_0008b18c()" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "FUN_0008b18c()" (identifier "FUN_0008b18c") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "ppbVar5 = ppbStack_180;" (assignment_expression "ppbVar5 = ppbStack_180" (identifier "ppbVar5") (= "=") (identifier "ppbStack_180")) (; ";")) (} "}")) (else_clause "else {\n      iVar19 = *(int *)(pcVar11 + 0xc1eec);\n      *(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01';\n      ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414);\n      if (ppbVar9 == (byte **)0x0) {\n        (**(code **)(pcVar11 + 0xc2074))(piVar17);\n        ppbVar9 = (byte **)0x0;\n      }\n      else {\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }\n    }" (else "else") (compound_statement "{\n      iVar19 = *(int *)(pcVar11 + 0xc1eec);\n      *(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01';\n      ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414);\n      if (ppbVar9 == (byte **)0x0) {\n        (**(code **)(pcVar11 + 0xc2074))(piVar17);\n        ppbVar9 = (byte **)0x0;\n      }\n      else {\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }\n    }" ({ "{") (expression_statement "iVar19 = *(int *)(pcVar11 + 0xc1eec);" (assignment_expression "iVar19 = *(int *)(pcVar11 + 0xc1eec)" (identifier "iVar19") (= "=") (pointer_expression "*(int *)(pcVar11 + 0xc1eec)" (* "*") (cast_expression "(int *)(pcVar11 + 0xc1eec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar11 + 0xc1eec)" (( "(") (binary_expression "pcVar11 + 0xc1eec" (identifier "pcVar11") (+ "+") (number_literal "0xc1eec")) () ")"))))) (; ";")) (expression_statement "*(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01';" (assignment_expression "*(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01'" (pointer_expression "*(char *)((int)piVar20 + 0x15)" (* "*") (cast_expression "(char *)((int)piVar20 + 0x15)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar20 + 0x15)" (( "(") (binary_expression "(int)piVar20 + 0x15" (cast_expression "(int)piVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar20")) (+ "+") (number_literal "0x15")) () ")")))) (= "=") (binary_expression "*(char *)((int)piVar20 + 0x15) + '\x01'" (pointer_expression "*(char *)((int)piVar20 + 0x15)" (* "*") (cast_expression "(char *)((int)piVar20 + 0x15)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)piVar20 + 0x15)" (( "(") (binary_expression "(int)piVar20 + 0x15" (cast_expression "(int)piVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar20")) (+ "+") (number_literal "0x15")) () ")")))) (+ "+") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'")))) (; ";")) (expression_statement "ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414);" (assignment_expression "ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414)" (identifier "ppbVar9") (= "=") (cast_expression "(byte **)sqlite3_mprintf(iVar19 + -0x7414)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "sqlite3_mprintf(iVar19 + -0x7414)" (identifier "sqlite3_mprintf") (argument_list "(iVar19 + -0x7414)" (( "(") (binary_expression "iVar19 + -0x7414" (identifier "iVar19") (+ "+") (number_literal "-0x7414")) () ")"))))) (; ";")) (if_statement "if (ppbVar9 == (byte **)0x0) {\n        (**(code **)(pcVar11 + 0xc2074))(piVar17);\n        ppbVar9 = (byte **)0x0;\n      }\n      else {\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }" (if "if") (parenthesized_expression "(ppbVar9 == (byte **)0x0)" (( "(") (binary_expression "ppbVar9 == (byte **)0x0" (identifier "ppbVar9") (== "==") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        (**(code **)(pcVar11 + 0xc2074))(piVar17);\n        ppbVar9 = (byte **)0x0;\n      }" ({ "{") (expression_statement "(**(code **)(pcVar11 + 0xc2074))(piVar17);" (call_expression "(**(code **)(pcVar11 + 0xc2074))(piVar17)" (parenthesized_expression "(**(code **)(pcVar11 + 0xc2074))" (( "(") (pointer_expression "**(code **)(pcVar11 + 0xc2074)" (* "*") (pointer_expression "*(code **)(pcVar11 + 0xc2074)" (* "*") (cast_expression "(code **)(pcVar11 + 0xc2074)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar11 + 0xc2074)" (( "(") (binary_expression "pcVar11 + 0xc2074" (identifier "pcVar11") (+ "+") (number_literal "0xc2074")) () ")"))))) () ")")) (argument_list "(piVar17)" (( "(") (identifier "piVar17") () ")"))) (; ";")) (expression_statement "ppbVar9 = (byte **)0x0;" (assignment_expression "ppbVar9 = (byte **)0x0" (identifier "ppbVar9") (= "=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (; ";")) (} "}")) (else_clause "else {\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }" (else "else") (compound_statement "{\n        pbVar16 = (byte *)0xffffffff;\n        ppbVar5 = ppbVar9;\n        (**(code **)(pcVar11 + 0xc2060))(piVar17);\n        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);\n        ppbVar9 = (byte **)0x0;\n      }" ({ "{") (expression_statement "pbVar16 = (byte *)0xffffffff;" (assignment_expression "pbVar16 = (byte *)0xffffffff" (identifier "pbVar16") (= "=") (cast_expression "(byte *)0xffffffff" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xffffffff"))) (; ";")) (expression_statement "ppbVar5 = ppbVar9;" (assignment_expression "ppbVar5 = ppbVar9" (identifier "ppbVar5") (= "=") (identifier "ppbVar9")) (; ";")) (expression_statement "(**(code **)(pcVar11 + 0xc2060))(piVar17);" (call_expression "(**(code **)(pcVar11 + 0xc2060))(piVar17)" (parenthesized_expression "(**(code **)(pcVar11 + 0xc2060))" (( "(") (pointer_expression "**(code **)(pcVar11 + 0xc2060)" (* "*") (pointer_expression "*(code **)(pcVar11 + 0xc2060)" (* "*") (cast_expression "(code **)(pcVar11 + 0xc2060)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar11 + 0xc2060)" (( "(") (binary_expression "pcVar11 + 0xc2060" (identifier "pcVar11") (+ "+") (number_literal "0xc2060")) () ")"))))) () ")")) (argument_list "(piVar17)" (( "(") (identifier "piVar17") () ")"))) (; ";")) (expression_statement "(**(code **)(pcVar11 + 0xc1f10))(ppbVar9);" (call_expression "(**(code **)(pcVar11 + 0xc1f10))(ppbVar9)" (parenthesized_expression "(**(code **)(pcVar11 + 0xc1f10))" (( "(") (pointer_expression "**(code **)(pcVar11 + 0xc1f10)" (* "*") (pointer_expression "*(code **)(pcVar11 + 0xc1f10)" (* "*") (cast_expression "(code **)(pcVar11 + 0xc1f10)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar11 + 0xc1f10)" (( "(") (binary_expression "pcVar11 + 0xc1f10" (identifier "pcVar11") (+ "+") (number_literal "0xc1f10")) () ")"))))) () ")")) (argument_list "(ppbVar9)" (( "(") (identifier "ppbVar9") () ")"))) (; ";")) (expression_statement "ppbVar9 = (byte **)0x0;" (assignment_expression "ppbVar9 = (byte **)0x0" (identifier "ppbVar9") (= "=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (; ";")) (} "}")))) (} "}")))) (} "}"))) (if_statement "if (iVar4 != *piVar24) {\n    pcVar11 = *(code **)(pcVar11 + 0xc2300);\n    (*pcVar11)();\n    ppbVar9 = (byte **)FUN_0008ad48();\n    if (ppbVar9 != (byte **)0x0) {\n      if (ppbVar5 == (byte **)&SUB_00000002) {\n        uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));\n        ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);\n      }\n      else {\n        ppbVar9 = (byte **)ppbVar9[2];\n      }\n      if (ppbVar9 != (byte **)0x0) {\n                    \n                    \n        ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n        return ppbVar5;\n      }\n    }\n    return ppbVar9;\n  }" (if "if") (parenthesized_expression "(iVar4 != *piVar24)" (( "(") (binary_expression "iVar4 != *piVar24" (identifier "iVar4") (!= "!=") (pointer_expression "*piVar24" (* "*") (identifier "piVar24"))) () ")")) (compound_statement "{\n    pcVar11 = *(code **)(pcVar11 + 0xc2300);\n    (*pcVar11)();\n    ppbVar9 = (byte **)FUN_0008ad48();\n    if (ppbVar9 != (byte **)0x0) {\n      if (ppbVar5 == (byte **)&SUB_00000002) {\n        uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));\n        ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);\n      }\n      else {\n        ppbVar9 = (byte **)ppbVar9[2];\n      }\n      if (ppbVar9 != (byte **)0x0) {\n                    \n                    \n        ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n        return ppbVar5;\n      }\n    }\n    return ppbVar9;\n  }" ({ "{") (expression_statement "pcVar11 = *(code **)(pcVar11 + 0xc2300);" (assignment_expression "pcVar11 = *(code **)(pcVar11 + 0xc2300)" (identifier "pcVar11") (= "=") (pointer_expression "*(code **)(pcVar11 + 0xc2300)" (* "*") (cast_expression "(code **)(pcVar11 + 0xc2300)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar11 + 0xc2300)" (( "(") (binary_expression "pcVar11 + 0xc2300" (identifier "pcVar11") (+ "+") (number_literal "0xc2300")) () ")"))))) (; ";")) (expression_statement "(*pcVar11)();" (call_expression "(*pcVar11)()" (parenthesized_expression "(*pcVar11)" (( "(") (pointer_expression "*pcVar11" (* "*") (identifier "pcVar11")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "ppbVar9 = (byte **)FUN_0008ad48();" (assignment_expression "ppbVar9 = (byte **)FUN_0008ad48()" (identifier "ppbVar9") (= "=") (cast_expression "(byte **)FUN_0008ad48()" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "FUN_0008ad48()" (identifier "FUN_0008ad48") (argument_list "()" (( "(") () ")"))))) (; ";")) (if_statement "if (ppbVar9 != (byte **)0x0) {\n      if (ppbVar5 == (byte **)&SUB_00000002) {\n        uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));\n        ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);\n      }\n      else {\n        ppbVar9 = (byte **)ppbVar9[2];\n      }\n      if (ppbVar9 != (byte **)0x0) {\n                    \n                    \n        ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n        return ppbVar5;\n      }\n    }" (if "if") (parenthesized_expression "(ppbVar9 != (byte **)0x0)" (( "(") (binary_expression "ppbVar9 != (byte **)0x0" (identifier "ppbVar9") (!= "!=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      if (ppbVar5 == (byte **)&SUB_00000002) {\n        uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));\n        ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);\n      }\n      else {\n        ppbVar9 = (byte **)ppbVar9[2];\n      }\n      if (ppbVar9 != (byte **)0x0) {\n                    \n                    \n        ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n        return ppbVar5;\n      }\n    }" ({ "{") (if_statement "if (ppbVar5 == (byte **)&SUB_00000002) {\n        uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));\n        ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);\n      }\n      else {\n        ppbVar9 = (byte **)ppbVar9[2];\n      }" (if "if") (parenthesized_expression "(ppbVar5 == (byte **)&SUB_00000002)" (( "(") (binary_expression "ppbVar5 == (byte **)&SUB_00000002" (identifier "ppbVar5") (== "==") (cast_expression "(byte **)&SUB_00000002" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "&SUB_00000002" (& "&") (identifier "SUB_00000002")))) () ")")) (compound_statement "{\n        uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));\n        ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);\n      }" ({ "{") (expression_statement "uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));" (assignment_expression "uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4))" (identifier "uVar28") (= "=") (call_expression "(**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4))" (parenthesized_expression "(**(code **)(pcVar11 + 0xc1dd4))" (( "(") (pointer_expression "**(code **)(pcVar11 + 0xc1dd4)" (* "*") (pointer_expression "*(code **)(pcVar11 + 0xc1dd4)" (* "*") (cast_expression "(code **)(pcVar11 + 0xc1dd4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar11 + 0xc1dd4)" (( "(") (binary_expression "pcVar11 + 0xc1dd4" (identifier "pcVar11") (+ "+") (number_literal "0xc1dd4")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(pbVar16 + 4))" (( "(") (pointer_expression "*(undefined4 *)(pbVar16 + 4)" (* "*") (cast_expression "(undefined4 *)(pbVar16 + 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar16 + 4)" (( "(") (binary_expression "pbVar16 + 4" (identifier "pbVar16") (+ "+") (number_literal "4")) () ")")))) () ")")))) (; ";")) (expression_statement "ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);" (assignment_expression "ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4)" (identifier "ppbVar9") (= "=") (cast_expression "(byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "FUN_00099710(ppbVar9,uVar28,0,iVar4)" (identifier "FUN_00099710") (argument_list "(ppbVar9,uVar28,0,iVar4)" (( "(") (identifier "ppbVar9") (, ",") (identifier "uVar28") (, ",") (number_literal "0") (, ",") (identifier "iVar4") () ")"))))) (; ";")) (} "}")) (else_clause "else {\n        ppbVar9 = (byte **)ppbVar9[2];\n      }" (else "else") (compound_statement "{\n        ppbVar9 = (byte **)ppbVar9[2];\n      }" ({ "{") (expression_statement "ppbVar9 = (byte **)ppbVar9[2];" (assignment_expression "ppbVar9 = (byte **)ppbVar9[2]" (identifier "ppbVar9") (= "=") (cast_expression "(byte **)ppbVar9[2]" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (subscript_expression "ppbVar9[2]" (identifier "ppbVar9") ([ "[") (number_literal "2") (] "]")))) (; ";")) (} "}")))) (if_statement "if (ppbVar9 != (byte **)0x0) {\n                    \n                    \n        ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n        return ppbVar5;\n      }" (if "if") (parenthesized_expression "(ppbVar9 != (byte **)0x0)" (( "(") (binary_expression "ppbVar9 != (byte **)0x0" (identifier "ppbVar9") (!= "!=") (cast_expression "(byte **)0x0" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                    \n                    \n        ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);\n        return ppbVar5;\n      }" ({ "{") (expression_statement "ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);" (assignment_expression "ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0)" (identifier "ppbVar5") (= "=") (cast_expression "(byte **)(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (call_expression "(**(code **)(pcVar11 + 0xc1e3c))\n                                     (iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0)" (parenthesized_expression "(**(code **)(pcVar11 + 0xc1e3c))" (( "(") (pointer_expression "**(code **)(pcVar11 + 0xc1e3c)" (* "*") (pointer_expression "*(code **)(pcVar11 + 0xc1e3c)" (* "*") (cast_expression "(code **)(pcVar11 + 0xc1e3c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar11 + 0xc1e3c)" (( "(") (binary_expression "pcVar11 + 0xc1e3c" (identifier "pcVar11") (+ "+") (number_literal "0xc1e3c")) () ")"))))) () ")")) (argument_list "(iVar4,*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0)" (( "(") (identifier "iVar4") (, ",") (pointer_expression "*(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c)" (* "*") (cast_expression "(undefined4 *)\n                                             ((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c)" (( "(") (binary_expression "(uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c" (binary_expression "(uint)*(byte *)ppbVar9 * 4 +\n                                             *(int *)(pcVar11 + 0xc1d98)" (binary_expression "(uint)*(byte *)ppbVar9 * 4" (binary_expression "(uint)*(byte *)ppbVar9" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(byte *)ppbVar9" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "ppbVar9"))) (* "*") (number_literal "4")) (+ "+") (pointer_expression "*(int *)(pcVar11 + 0xc1d98)" (* "*") (cast_expression "(int *)(pcVar11 + 0xc1d98)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar11 + 0xc1d98)" (( "(") (binary_expression "pcVar11 + 0xc1d98" (identifier "pcVar11") (+ "+") (number_literal "0xc1d98")) () ")"))))) (+ "+") (number_literal "-0x6c1c")) () ")")))) (, ",") (number_literal "0xffffffff") (, ",") (number_literal "0") () ")"))))) (; ";")) (return_statement "return ppbVar5;" (return "return") (identifier "ppbVar5") (; ";")) (} "}"))) (} "}"))) (return_statement "return ppbVar9;" (return "return") (identifier "ppbVar9") (; ";")) (} "}"))) (return_statement "return ppbVar9;" (return "return") (identifier "ppbVar9") (; ";")) (labeled_statement "code_r0x000993b8:\n  piVar10 = ppiVar14[1];" (statement_identifier "code_r0x000993b8") (: ":") (expression_statement "piVar10 = ppiVar14[1];" (assignment_expression "piVar10 = ppiVar14[1]" (identifier "piVar10") (= "=") (subscript_expression "ppiVar14[1]" (identifier "ppiVar14") ([ "[") (number_literal "1") (] "]"))) (; ";"))) (expression_statement "iVar4 = iVar4 + 1;" (assignment_expression "iVar4 = iVar4 + 1" (identifier "iVar4") (= "=") (binary_expression "iVar4 + 1" (identifier "iVar4") (+ "+") (number_literal "1"))) (; ";")) (goto_statement "goto LAB_000993bc;" (goto "goto") (statement_identifier "LAB_000993bc") (; ";")) (} "}")))
(translation_unit (function_definition type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (parameter_declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (parameter_declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (parameter_declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))))))) body: (compound_statement (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator 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: (identifier)) (declaration type: (type_identifier) 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: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (call_expression function: (identifier) arguments: (argument_list (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) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (identifier)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (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: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (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)) value: (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)))))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (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: (identifier)))) arguments: (argument_list)))) (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: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (identifier) (identifier) (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (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)))))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (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 (call_expression function: (identifier) arguments: (argument_list (identifier))))) alternative: (else_clause (compound_statement (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: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) (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: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))) (while_statement condition: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list)))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal))))))))) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (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: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (identifier))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (parenthesized_expression (binary_expression left: (identifier) right: (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))) right: (number_literal))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))) (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: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (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: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (pointer_expression argument: (identifier))) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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 (call_expression function: (identifier) arguments: (argument_list (identifier))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))))) (labeled_statement label: (statement_identifier) (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 declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))) value: (identifier))))) consequence: (compound_statement (return_statement (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (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 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 declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (call_expression function: (identifier) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (identifier)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (call_expression function: (identifier) arguments: (argument_list (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: (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: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (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: (identifier) right: (number_literal))))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (identifier))))) consequence: (compound_statement (return_statement (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (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: (number_literal))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (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 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: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (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: (identifier) right: (number_literal))))))) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (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: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (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: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (identifier))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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: (identifier) right: (number_literal))))))) arguments: (argument_list (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: (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: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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 (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: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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: (identifier) right: (number_literal))))))) arguments: (argument_list (subscript_expression argument: (identifier) index: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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: (identifier) right: (number_literal))))))) arguments: (argument_list (subscript_expression argument: (identifier) index: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (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)))))) arguments: (argument_list (identifier) (identifier) (binary_expression left: (identifier) right: (number_literal)) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (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: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (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)) (number_literal)))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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 (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: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (number_literal)))))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_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)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (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: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (number_literal)))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (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: (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 (identifier) (identifier) (binary_expression left: (identifier) 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: (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))))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (identifier)))))) (expression_statement (assignment_expression left: (identifier) 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: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (number_literal)))) (expression_statement (assignment_expression left: (identifier) 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: (identifier) right: (number_literal))))))) arguments: (argument_list)))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (identifier))))) consequence: (compound_statement (return_statement (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (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: (number_literal))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (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: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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: (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: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (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: (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: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (number_literal)))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (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: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator 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: (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: (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))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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: (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: (identifier))) right: (char_literal (character)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (true)))))) condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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)))))))) (if_statement condition: (parenthesized_expression (unary_expression argument: (identifier))) consequence: (compound_statement (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (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))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (subscript_expression argument: (identifier) index: (number_literal)) index: (binary_expression left: (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: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) 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: (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: (subscript_expression argument: (identifier) index: (number_literal))) right: (identifier))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (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: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))) (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (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))))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (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: (identifier)) right: (number_literal))))) right: (identifier))))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))))))))) consequence: (goto_statement label: (statement_identifier))))))))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) 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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))) right: (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: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))) right: (identifier)) right: (number_literal))))) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))) right: (char_literal (character))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (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)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (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))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (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: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (labeled_statement label: (statement_identifier) (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))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (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: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (identifier)))))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (identifier)))) consequence: (compound_statement (return_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))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) 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: (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: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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: (number_literal))))) 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 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: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))) consequence: (compound_statement (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))))))) alternative: (else_clause (compound_statement (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: (identifier) right: (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: (identifier) right: (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: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_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: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (return_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))))))) (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: (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: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))) right: (char_literal (character)))) consequence: (compound_statement (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: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (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: (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (call_expression function: (identifier) arguments: (argument_list (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 declarator: (abstract_pointer_declarator))) value: (number_literal)))) consequence: (compound_statement (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: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) 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: (identifier) right: (number_literal))))))) arguments: (argument_list (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: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (identifier)))) consequence: (compound_statement (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 (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (call_expression function: (identifier) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (identifier))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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: (identifier) right: (number_literal))))))) arguments: (argument_list (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (identifier))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (subscript_expression argument: (identifier) index: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (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: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (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: (binary_expression left: (parenthesized_expression (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) 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)))))) right: (number_literal))))) (number_literal) (number_literal)))))) (return_statement (identifier)))))) (return_statement (identifier)))) (return_statement (identifier)) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))))

byte ** MASKED(int **param_1,int **param_2,int **param_3,int *param_4)

{
  bool bVar1;
  int **ppiVar2;
  int **ppiVar3;
  int iVar4;
  byte **ppbVar5;
  undefined4 uVar6;
  int iVar7;
  int **ppiVar8;
  byte **ppbVar9;
  int *piVar10;
  code *pcVar11;
  byte bVar12;
  int **ppiVar13;
  int **ppiVar14;
  byte **ppbVar15;
  byte *pbVar16;
  int *piVar17;
  undefined1 uVar18;
  int iVar19;
  int *piVar20;
  uint uVar21;
  uint uVar22;
  int *piVar23;
  int *piVar24;
  undefined4 *puVar25;
  int **unaff_s2;
  int **unaff_s3;
  int *piVar26;
  code *unaff_s4;
  int **unaff_s5;
  int **unaff_s6;
  undefined *puVar27;
  undefined4 uVar28;
  double dVar29;
  undefined8 uVar30;
  byte **ppbStack_180;
  byte *pbStack_130;
  int *piStack_12c;
  code *pcStack_128;
  undefined4 uStack_120;
  undefined4 uStack_11c;
  undefined4 uStack_118;
  undefined4 uStack_114;
  undefined4 uStack_110;
  undefined4 uStack_10c;
  undefined4 uStack_108;
  undefined4 uStack_104;
  undefined4 uStack_100;
  undefined4 uStack_fc;
  undefined1 uStack_f8;
  int iStack_f4;
  int **ppiStack_f0;
  int *piStack_ec;
  int iStack_e8;
  int **ppiStack_e4;
  int **ppiStack_e0;
  undefined4 uStack_dc;
  code *pcStack_c8;
  int *piStack_bc;
  int iStack_b8;
  byte **ppbStack_b4;
  int *piStack_b0;
  int **ppiStack_ac;
  int **ppiStack_a8;
  int **ppiStack_a4;
  code *pcStack_a0;
  int **ppiStack_9c;
  int **ppiStack_98;
  undefined4 uStack_94;
  undefined *puStack_80;
  int **ppiStack_78;
  byte **ppbStack_74;
  byte **ppbStack_6c;
  int **ppiStack_68;
  int **ppiStack_64;
  int **ppiStack_60;
  code *pcStack_5c;
  int *piStack_4c;
  int *local_30;
  int **local_2c;
  
  puVar27 = PTR___stack_chk_guard_0015ba2c;
  local_30 = (int *)0x0;
  local_2c = *(int ***)PTR___stack_chk_guard_0015ba2c;
  ppiVar8 = param_3;
  piVar17 = param_4;
  ppiVar2 = (int **)sqlite3_mprintf(PTR_LAB_0015b5e8 + 0x71f4);
  if (ppiVar2 == (int **)0x0) {
    ppbVar5 = (byte **)&DAT_00000007;
  }
  else {
    unaff_s5 = &local_30;
    unaff_s4 = (code *)(*(code *)PTR_strlen_0015b9c4)(ppiVar2);
    unaff_s2 = (int **)(PTR_LAB_0015b65c + 0x273c);
    ppiVar3 = (int **)(*(code *)unaff_s2)(ppiVar2,unaff_s5);
    ppiVar8 = ppiVar2;
    if (ppiVar3 != (int **)0x0) {
      ppiVar8 = ppiVar3;
    }
    unaff_s3 = (int **)(PTR_LAB_0015b65c + 0x1120);
    *(code *)((int)ppiVar8 + (int)local_30) = (code)0x0;
    (*(code *)unaff_s3)(ppiVar8);
    iVar4 = (*(code *)PTR_strlen_0015b9c4)();
    iVar4 = (*(code *)(PTR_LAB_0015b6c0 + -0x2c24))(param_1,ppiVar8,iVar4 + 1);
    unaff_s6 = ppiVar2;
    if ((iVar4 == 0) || (iVar4 = *(int *)(iVar4 + 8), iVar4 == 0)) {
      ppbVar5 = (byte **)0x1;
      param_2 = (int **)(PTR_UINT_0015b5fc + -0x7478);
      FUN_00092618(param_4);
    }
    else {
      unaff_s4 = (code *)((int)ppiVar2 + (int)unaff_s4);
      pcVar11 = (code *)((int)ppiVar8 + (int)local_30 + 1);
      iVar19 = 0;
      param_1 = (int **)0x0;
      while ((pcVar11 < unaff_s4 &&
             (param_2 = unaff_s5, piVar20 = (int *)(*(code *)unaff_s2)(), piVar20 != (int *)0x0))) {
        iVar19 = iVar19 + 1;
        ppiVar8 = (int **)0x0;
        piVar17 = (int *)(iVar19 * 4);
        ppiVar3 = (int **)(*(code *)PTR_sqlite3_realloc64_0015b764)(param_1);
        if (ppiVar3 == (int **)0x0) {
          ppbVar5 = (byte **)&DAT_00000007;
          (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);
          (*(code *)PTR_sqlite3_free_0015b620)(param_1);
          goto LAB_00098e8c;
        }
        (ppiVar3 + iVar19)[-1] = piVar20;
        *(undefined1 *)((int)piVar20 + (int)local_30) = 0;
        (*(code *)unaff_s3)(piVar20);
        pcVar11 = (code *)((int)local_30 + (int)piVar20 + 1);
        param_1 = ppiVar3;
      }
      param_2 = param_1;
      ppiVar8 = param_3;
      ppbVar5 = (byte **)(**(code **)(iVar4 + 4))(iVar19);
      if (ppbVar5 == (byte **)0x0) {
        **param_3 = iVar4;
      }
      else {
        param_2 = (int **)(PTR_UINT_0015b5fc + -0x7460);
        FUN_00092618(param_4);
      }
      (*(code *)PTR_sqlite3_free_0015b620)(param_1);
    }
    (*(code *)PTR_sqlite3_free_0015b620)(ppiVar2);
  }
LAB_00098e8c:
  if (local_2c == *(int ***)puVar27) {
    return ppbVar5;
  }
  pcVar11 = FUN_00098f2c;
  ppiVar2 = local_2c;
  puVar27 = PTR___stack_chk_fail_0015ba10;
  (*(code *)PTR___stack_chk_fail_0015ba10)();
  puStack_80 = puVar27 + 0xca684;
  piVar20 = *(int **)(puVar27 + 0xc2b00);
  ppbStack_74 = (byte **)*piVar20;
  ppiVar3 = ppiVar2;
  ppiVar13 = param_2;
  ppiStack_ac = param_1;
  ppiStack_a4 = unaff_s3;
  ppbStack_6c = ppbVar5;
  ppiStack_68 = param_1;
  ppiStack_64 = unaff_s2;
  ppiStack_60 = unaff_s3;
  pcStack_5c = pcVar11;
  piStack_4c = piVar17;
  if (*ppiVar2 == (int *)0x0) {
    ppiVar13 = &piStack_4c;
    ppiStack_78 = ppiVar13;
    ppiVar14 = (int **)sqlite3_vmprintf(ppiVar8);
    if (ppiVar14 == (int **)0x0) {
LAB_00099014:
      unaff_s2 = (int **)0x0;
      *ppiVar2 = (int *)0x7;
      ppiVar3 = (int **)*param_2;
    }
    else {
      ppiVar3 = (int **)*param_2;
      unaff_s2 = ppiVar14;
      if (ppiVar3 != (int **)0x0) {
        ppiVar8 = ppiVar14;
        unaff_s2 = (int **)sqlite3_mprintf(*(int *)(puStack_80 + -0x7fc8) + 0x5624);
        ppiVar13 = ppiVar3;
        (**(code **)(puStack_80 + -0x7f90))(ppiVar14);
        if (unaff_s2 == (int **)0x0) goto LAB_00099014;
        ppiVar3 = (int **)*param_2;
      }
    }
    (**(code **)(puStack_80 + -0x7f90))();
    *param_2 = (int *)unaff_s2;
    ppiStack_ac = ppiVar2;
    ppiStack_a4 = param_2;
  }
  if (ppbStack_74 == (byte **)*piVar20) {
    return (byte **)*piVar20;
  }
  pcVar11 = *(code **)(puStack_80 + -0x7ba0);
  uVar28 = 0x99034;
  (*pcVar11)();
  pcStack_c8 = pcVar11 + 0xca57c;
  piVar24 = *(int **)(pcVar11 + 0xc29f8);
  piStack_bc = (int *)0x0;
  ppbStack_b4 = (byte **)*piVar24;
  piStack_b0 = piVar20;
  ppiStack_a8 = unaff_s2;
  pcStack_a0 = unaff_s4;
  ppiStack_9c = unaff_s5;
  ppiStack_98 = unaff_s6;
  uStack_94 = uVar28;
  uVar28 = (**(code **)(pcVar11 + 0xc2694))();
  iVar4 = (**(code **)(pcStack_c8 + -0x7f9c))(*ppiVar8);
  iVar19 = (**(code **)(pcStack_c8 + -0x7fac))(*ppiVar8);
  ppiVar2 = ppiVar3;
  if (ppiVar13 == (int **)&SUB_00000002) {
    uVar6 = (**(code **)(pcStack_c8 + -0x7ed0))(ppiVar3);
    piVar17 = &iStack_b8;
    iStack_b8 = 0;
    (**(code **)(pcStack_c8 + -0x7d60))(uVar6,0x3ec,0xffffffff);
    if (iStack_b8 == 0) {
      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x7434);
      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);
    }
    else {
      iVar7 = (**(code **)(pcStack_c8 + -0x7fac))(ppiVar8[1]);
      if ((iVar4 != 0) && (iVar7 == 4)) {
        piStack_bc = (int *)(**(code **)(pcStack_c8 + -0x7fb0))(ppiVar8[1]);
        piStack_bc = (int *)*piStack_bc;
        piVar17 = (int *)(*(code *)(*(int *)(pcStack_c8 + -0x7eb0) + 0x43f8))
                                   (uVar28,iVar4,iVar19 + 1,piStack_bc);
        if (piStack_bc == piVar17) {
          (**(code **)(pcStack_c8 + -0x7e40))
                    (ppiVar3,*(int *)(pcStack_c8 + -0x7fc8) + 0x52ac,0xffffffff);
        }
        goto LAB_000990fc;
      }
      ppiVar14 = (int **)(*(int *)(pcStack_c8 + -0x7fb4) + -0x744c);
      (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar14,0xffffffff);
    }
  }
  else {
    if (iVar4 == 0) {
LAB_000990f4:
      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);
      if (piStack_bc != (int *)0x0) {
LAB_000990fc:
        piVar17 = (int *)0xffffffff;
        ppiVar14 = &piStack_bc;
        (**(code **)(pcStack_c8 + -0x7e28))(ppiVar3,ppiVar14,4);
        goto LAB_00099118;
      }
    }
    else {
      iVar19 = (*(code *)(*(int *)(pcStack_c8 + -0x7ef0) + -0x2c24))(uVar28,iVar4,iVar19 + 1);
      if (iVar19 != 0) {
        piStack_bc = *(int **)(iVar19 + 8);
        goto LAB_000990f4;
      }
      piStack_bc = (int *)0x0;
      iVar19 = *(int *)(pcStack_c8 + -0x7fb4);
    }
    ppiVar8 = (int **)sqlite3_mprintf(iVar19 + -0x7478,iVar4);
    ppiVar14 = ppiVar8;
    (**(code **)(pcStack_c8 + -0x7e40))(ppiVar3,ppiVar8,0xffffffff);
    ppiVar2 = ppiVar8;
    (**(code **)(pcStack_c8 + -0x7f90))();
  }
LAB_00099118:
  if (ppbStack_b4 == (byte **)*piVar24) {
    return (byte **)*piVar24;
  }
  pcVar11 = *(code **)(pcStack_c8 + -0x7ba0);
  uVar28 = 0x992a0;
  (*pcVar11)();
  ppiStack_e4 = ppiVar3;
  piStack_ec = piVar24;
  iStack_e8 = iVar4;
  piVar20 = &uStack_120;
  pcStack_128 = pcVar11 + 0xca310;
  uStack_dc = uVar28;
  ppiStack_e0 = ppiVar13;
  ppiStack_f0 = ppiVar8;
  piVar26 = *(int **)(pcVar11 + 0xc278c);
  piVar24 = *ppiVar14;
  uStack_120 = 0;
  uStack_11c = 0;
  uStack_118 = 0;
  uStack_114 = 0;
  uStack_110 = 0;
  uStack_10c = 0;
  uStack_108 = 0;
  uStack_104 = 0;
  uStack_100 = 0;
  uStack_fc = 0;
  uStack_f8 = 0;
  iStack_f4 = *piVar26;
  pbVar16 = (byte *)((int)piVar24 * 2);
  if ((int)piVar24 < 1) {
    uVar22 = 0;
    ppiVar14[5] = (int *)0x2;
    ppiVar14[7] = (int *)0x1;
LAB_00099480:
    piVar20 = ppiVar2[0xc];
    piVar23 = (int *)((int)piVar20 >> (uVar22 & 0x1f));
    piVar10 = piVar23;
    piVar24 = (int *)(((int)piVar20 << 1) << (~uVar22 & 0x1f) |
                     (uint)ppiVar2[0xd] >> (uVar22 & 0x1f));
    if ((uVar22 & 0x20) != 0) {
      piVar10 = (int *)((int)piVar20 >> 0x1f);
      piVar24 = piVar23;
    }
    piVar20 = piVar24;
    dVar29 = (double)(**(code **)(pcStack_128 + -0x7f18))(piVar10);
    ppbVar5 = (byte **)0x0;
    ppiVar14[0xc] = piVar10;
    ppiVar14[0xd] = piVar24;
    *(double *)(ppiVar14 + 10) = dVar29 * *(double *)(*(int *)(pcStack_128 + -0x7f1c) + -0x7780);
  }
  else {
    piVar10 = ppiVar14[1];
    bVar1 = false;
    piVar17 = piVar10;
    do {
      piVar23 = piVar17 + 1;
      piVar17 = piVar17 + 3;
      if (*(char *)piVar23 == '@') {
        bVar1 = true;
      }
    } while (piVar10 + (int)piVar24 * 3 != piVar17);
    piVar17 = (int *)0x0;
    uVar21 = 0;
    iVar4 = 0;
LAB_000993bc:
    piVar10 = (int *)((int)piVar10 + (int)piVar17);
    if (!bVar1) {
      if (*(char *)((int)piVar10 + 5) == '\0') goto LAB_0009939c;
      iVar19 = *piVar10;
      bVar12 = *(byte *)(piVar10 + 1);
      if (iVar19 != 0) goto LAB_000993d8;
      if (bVar12 != 2) goto LAB_00099394;
      if (iVar4 == 0) {
        iVar19 = 0;
      }
      else {
        iVar7 = 0;
        do {
          iVar19 = iVar7 + 1;
          ppiVar14[4][iVar7 * 2] = 0;
          *(undefined1 *)(ppiVar14[4] + iVar7 * 2 + 1) = 0;
          iVar7 = iVar19;
        } while (iVar19 != iVar4);
        iVar19 = iVar19 * 8;
      }
      piVar17 = (int *)0x1;
      ppiVar14[5] = (int *)0x1;
      piVar20 = *(int **)(pcVar11 + 0xc23f4);
      uVar30 = *(undefined8 *)(piVar20 + -0x1de2);
      *(undefined4 *)((int)ppiVar14[4] + iVar19) = 1;
      pbVar16 = (byte *)0x0;
      *(undefined1 *)((int)ppiVar14[4] + iVar19 + 4) = 1;
      *(undefined8 *)(ppiVar14 + 10) = uVar30;
      ppiVar14[0xd] = (int *)0x1;
      ppiVar14[0xc] = (int *)0x0;
      ppiVar14[0xe] = (int *)0x1;
      ppbVar5 = (byte **)0x0;
      goto LAB_000994e0;
    }
    if (*(char *)((int)piVar10 + 5) == '\0') {
LAB_0009939c:
      uVar22 = uVar21;
      if ((int)piVar24 <= iVar4 + 1) goto LAB_00099470;
    }
    else {
      iVar19 = *piVar10;
      bVar12 = *(byte *)(piVar10 + 1);
LAB_000993d8:
      if ((iVar19 < 1) || ((int)(uint)(byte)*(code *)((int)ppiVar2 + 0x15) < iVar19)) {
LAB_00099394:
        uVar18 = 0x46;
        if (bVar12 != 0x40) goto LAB_0009939c;
      }
      else if (bVar12 == 8) {
        uVar18 = 0x42;
      }
      else if (bVar12 < 9) {
        uVar18 = 0x41;
        if ((bVar12 != 2) && (uVar18 = 0x45, bVar12 != 4)) goto LAB_0009939c;
      }
      else {
        uVar18 = 0x44;
        if ((bVar12 != 0x20) && ((uVar18 = 0x46, bVar12 != 0x40 && (uVar18 = 0x43, bVar12 != 0x10)))
           ) goto LAB_0009939c;
      }
      piVar24 = ppiVar14[4];
      uVar22 = uVar21 + 2;
      *(undefined1 *)((int)&uStack_120 + uVar21) = uVar18;
      *(char *)((int)&uStack_120 + uVar21 + 1) = (char)*piVar10 + '/';
      piVar24[iVar4 * 2] = (int)uVar22 >> 1;
      *(undefined1 *)(ppiVar14[4] + iVar4 * 2 + 1) = 1;
      piVar24 = *ppiVar14;
      uVar21 = uVar22;
      if ((int)piVar24 <= iVar4 + 1) {
LAB_00099470:
        pbVar16 = (byte *)(iVar4 + 1);
        ppiVar14[5] = (int *)0x2;
        ppiVar14[7] = (int *)0x1;
        uVar21 = uVar22;
        if (uVar22 == 0) goto LAB_00099480;
        goto LAB_00099544;
      }
    }
    piVar17 = piVar17 + 3;
    if ((int)uVar21 < 0x28) goto code_r0x000993b8;
    ppiVar14[5] = (int *)0x2;
    ppiVar14[7] = (int *)0x1;
LAB_00099544:
    pbVar16 = (byte *)(iVar4 + 1);
    piVar24 = (int *)sqlite3_mprintf(*(int *)(pcVar11 + 0xc2348) + 0x71f4);
    ppiVar14[6] = piVar24;
    if (piVar24 != (int *)0x0) {
      uVar22 = (int)uVar21 >> 1;
      goto LAB_00099480;
    }
    ppbVar5 = (byte **)&DAT_00000007;
  }
LAB_000994e0:
  if (iStack_f4 == *piVar26) {
    return ppbVar5;
  }
  pcVar11 = *(code **)(pcStack_128 + -0x7ba0);
  iVar4 = iStack_f4;
  (*pcVar11)();
  ppbVar9 = &pbStack_130;
  puVar25 = *(undefined4 **)(pcVar11 + 0xc2410);
  ppbVar15 = (byte **)*puVar25;
  ppbVar5 = ppbVar15;
  pbStack_130 = pbVar16;
  piStack_12c = piVar17;
  if ((*(int *)(iVar4 + 0x28) != 0) || (99 < *(int *)(iVar4 + 0x30))) goto LAB_0009967c;
  piVar24 = (int *)sqlite3_vmprintf();
  if (piVar24 == (int *)0x0) {
LAB_000996f0:
    *(undefined4 *)(iVar4 + 0x28) = 7;
  }
  else {
    ppbVar9 = *(byte ***)(iVar4 + 0x2c);
    if (ppbVar9 == (byte **)0x0) {
      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x53f4);
    }
    else {
      pbVar16 = (byte *)(*(int *)(pcVar11 + 0xc1fcc) + 0x5c48);
    }
    piVar20 = (int *)(*(int *)(pcVar11 + 0xc1fe0) - 0x741c);
    iVar19 = sqlite3_mprintf();
    *(int *)(iVar4 + 0x2c) = iVar19;
    piVar17 = piVar24;
    if (iVar19 == 0) goto LAB_000996f0;
  }
  *(int *)(iVar4 + 0x30) = *(int *)(iVar4 + 0x30) + 1;
  ppbVar5 = ppbVar9;
LAB_0009967c:
  ppbVar9 = (byte **)*puVar25;
  if (ppbVar15 == ppbVar9) {
    return ppbVar9;
  }
  pcVar11 = *(code **)(pcVar11 + 0xc23f4);
  (*pcVar11)();
  piVar24 = *(int **)(pcVar11 + 0xc231c);
  ppbStack_180 = (byte **)0x0;
  iVar4 = *piVar24;
  ppbVar9 = (byte **)0x0;
  if (ppbVar5 != (byte **)0x0) {
    if (*(char *)ppbVar5 == '$') {
      pbVar16 = (byte *)((int)ppbVar5 + 1);
      ppbVar9 = (byte **)FUN_0008b18c();
      ppbVar5 = ppbStack_180;
    }
    else {
      iVar19 = *(int *)(pcVar11 + 0xc1eec);
      *(char *)((int)piVar20 + 0x15) = *(char *)((int)piVar20 + 0x15) + '\x01';
      ppbVar9 = (byte **)sqlite3_mprintf(iVar19 + -0x7414);
      if (ppbVar9 == (byte **)0x0) {
        (**(code **)(pcVar11 + 0xc2074))(piVar17);
        ppbVar9 = (byte **)0x0;
      }
      else {
        pbVar16 = (byte *)0xffffffff;
        ppbVar5 = ppbVar9;
        (**(code **)(pcVar11 + 0xc2060))(piVar17);
        (**(code **)(pcVar11 + 0xc1f10))(ppbVar9);
        ppbVar9 = (byte **)0x0;
      }
    }
  }
  if (iVar4 != *piVar24) {
    pcVar11 = *(code **)(pcVar11 + 0xc2300);
    (*pcVar11)();
    ppbVar9 = (byte **)FUN_0008ad48();
    if (ppbVar9 != (byte **)0x0) {
      if (ppbVar5 == (byte **)&SUB_00000002) {
        uVar28 = (**(code **)(pcVar11 + 0xc1dd4))(*(undefined4 *)(pbVar16 + 4));
        ppbVar9 = (byte **)FUN_00099710(ppbVar9,uVar28,0,iVar4);
      }
      else {
        ppbVar9 = (byte **)ppbVar9[2];
      }
      if (ppbVar9 != (byte **)0x0) {
                    /* WARNING: Could not recover jumptable at 0x000998e4. Too many branches */
                    /* WARNING: Treating indirect jump as call */
        ppbVar5 = (byte **)(**(code **)(pcVar11 + 0xc1e3c))
                                     (iVar4,*(undefined4 *)
                                             ((uint)*(byte *)ppbVar9 * 4 +
                                             *(int *)(pcVar11 + 0xc1d98) + -0x6c1c),0xffffffff,0);
        return ppbVar5;
      }
    }
    return ppbVar9;
  }
  return ppbVar9;
code_r0x000993b8:
  piVar10 = ppiVar14[1];
  iVar4 = iVar4 + 1;
  goto LAB_000993bc;
}

